diff --git a/charts/kubeflow/README.md b/charts/kubeflow/README.md
index 7b85df7..f2ccacd 100644
--- a/charts/kubeflow/README.md
+++ b/charts/kubeflow/README.md
@@ -1,553 +1,708 @@
-# Kubeflow Manifests
-
-## Table of Contents
-
-
-
-- [Overview of the Kubeflow Platform](#overview)
-- [Kubeflow components versions](#kubeflow-components-versions)
-- [Installation](#installation)
- * [Prerequisites](#prerequisites)
- * [Install with a single command](#install-with-a-single-command)
- * [Install individual components](#install-individual-components)
- * [Connect to your Kubeflow Cluster](#connect-to-your-kubeflow-cluster)
- * [Change default user password](#change-default-user-password)
-- [Upgrading and extending](#upgrading-and-extending)
-- [Release process](#release-process)
-- [CVE Scanning](#cve-scanning)
-- [Frequently Asked Questions](#frequently-asked-questions)
-
-
-
-## Overview of the Kubeflow Platform
-
-This repository is owned by the [Manifests Working Group](https://github.com/kubeflow/community/blob/master/wg-manifests/charter.md).
-If you are a contributor authoring or editing the packages please see [Best Practices](./documents/KustomizeBestPractices.md).
-You can join the CNCF Slack and access our meetings at the [Kubeflow Community](https://www.kubeflow.org/docs/about/community/) website. Our channel on the CNCF Slack is here [**#kubeflow-platform**](https://app.slack.com/client/T08PSQ7BQ/C073W572LA2). You can also find there our [biweekly meetings](https://bit.ly/kf-wg-manifests-meet), including the commentable [Agenda](https://bit.ly/kf-wg-manifests-notes).
-
-The Kubeflow Manifests repository is organized under three main directories, which include manifests for installing:
-
-| Directory | Purpose |
-| - | - |
-| `apps` | Kubeflow's official components, as maintained by the respective Kubeflow WGs |
-| `common` | Common services, as maintained by the Manifests WG |
-| `contrib` | 3rd party contributed applications (e.g. Ray, Kserve), which are maintained externally and are not part of a Kubeflow WG |
-
-All components are deployable with `kustomize`. You can choose to deploy the whole Kubeflow platform or individual components.
-
-## Kubeflow components versions
-
-### Kubeflow Version: master
-
-This repo periodically syncs all official Kubeflow components from their respective upstream repos. The following matrix shows the git version that we include for each component:
-
-| Component | Local Manifests Path | Upstream Revision |
-| - | - | - |
-| Training Operator | apps/training-operator/upstream | [v1.8.0](https://github.com/kubeflow/training-operator/tree/v1.8.0/manifests) |
-| Notebook Controller | apps/jupyter/notebook-controller/upstream | [v1.9.0](https://github.com/kubeflow/kubeflow/tree/v1.9.0/components/notebook-controller/config) |
-| PVC Viewer Controller | apps/pvcviewer-roller/upstream | [v1.9.0](https://github.com/kubeflow/kubeflow/tree/v1.9.0/components/pvcviewer-controller/config) |
-| Tensorboard Controller | apps/tensorboard/tensorboard-controller/upstream | [v1.9.0](https://github.com/kubeflow/kubeflow/tree/v1.9.0/components/tensorboard-controller/config) |
-| Central Dashboard | apps/centraldashboard/upstream | [v1.9.0](https://github.com/kubeflow/kubeflow/tree/v1.9.0/components/centraldashboard/manifests) |
-| Profiles + KFAM | apps/profiles/upstream | [v1.9.0](https://github.com/kubeflow/kubeflow/tree/v1.9.0/components/profile-controller/config) |
-| PodDefaults Webhook | apps/admission-webhook/upstream | [v1.9.0](https://github.com/kubeflow/kubeflow/tree/v1.9.0/components/admission-webhook/manifests) |
-| Jupyter Web App | apps/jupyter/jupyter-web-app/upstream | [v1.9.0](https://github.com/kubeflow/kubeflow/tree/v1.9.0/components/crud-web-apps/jupyter/manifests) |
-| Tensorboards Web App | apps/tensorboard/tensorboards-web-app/upstream | [v1.9.0](https://github.com/kubeflow/kubeflow/tree/v1.9.0/components/crud-web-apps/tensorboards/manifests) |
-| Volumes Web App | apps/volumes-web-app/upstream | [v1.9.0](https://github.com/kubeflow/kubeflow/tree/v1.9.0/components/crud-web-apps/volumes/manifests) |
-| Katib | apps/katib/upstream | [v0.17.0](https://github.com/kubeflow/katib/tree/v0.17.0/manifests/v1beta1) |
-| KServe | contrib/kserve/kserve | [0.13.0](https://github.com/kserve/kserve/releases/tag/v0.13.0) |
-| KServe Models Web App | contrib/kserve/models-web-app | [0.13.0](https://github.com/kserve/models-web-app/tree/0.13.0/config) |
-| Kubeflow Pipelines | apps/pipeline/upstream | [2.2.0](https://github.com/kubeflow/pipelines/tree/2.2.0/manifests/kustomize) |
-| Kubeflow Tekton Pipelines | apps/kfp-tekton/upstream | [2.0.5](https://github.com/kubeflow/kfp-tekton/tree/2.0.5/manifests/kustomize) |
-| Kubeflow Model Registry | apps/model-registry/upstream | [v0.2.1-alpha](https://github.com/kubeflow/model-registry/tree/v0.2.1-alpha/manifests/kustomize) |
-
-The following is also a matrix with versions from common components that are
-used from the different projects of Kubeflow:
-
-| Component | Local Manifests Path | Upstream Revision |
-| - | - | - |
-| Istio | common/istio-1-22 | [1.22.1](https://github.com/istio/istio/releases/tag/1.22.1) |
-| Knative | common/knative/knative-serving
common/knative/knative-eventing | [v1.12.4](https://github.com/knative/serving/releases/tag/knative-v1.12.4)
[v1.12.6](https://github.com/knative/eventing/releases/tag/knative-v1.12.6) |
-| Cert Manager | common/cert-manager | [1.14.5](https://github.com/cert-manager/cert-manager/releases/tag/v1.12.2) |
-
-## Installation
-
-This is for the installation from scratch. For the in-place upgrade guide please jump to the upgrading and extending section.
-
-The Manifests WG provides two options for installing Kubeflow official components and common services with kustomize. The aim is to help end users install easily and to help distribution owners build their opinionated distributions from a tested starting point:
-
-1. Single-command installation of all components under `apps` and `common`
-2. Multi-command, individual components installation for `apps` and `common`
-
-Option 1 targets ease of deployment for end users. \
-Option 2 targets customization and ability to pick and choose individual components.
-
-The `example` directory contains an example kustomization for the single command to be able to run.
-
-:warning: In both options, we use a default email (`user@example.com`) and password (`12341234`). For any production Kubeflow deployment, you should change the default password by following [the relevant section](#change-default-user-password).
-
-### Prerequisites
-- This is the master branch which targets Kubernetes 1.29+
-- For the specific Kubernetes version per release consult the [release notes](https://github.com/kubeflow/manifests/releases)
-- Either our local Kind (installed below) or your own Kubernetes cluster with a default [StorageClass](https://kubernetes.io/docs/concepts/storage/storage-classes/)
-- Kustomize [5.2.1+](https://github.com/kubernetes-sigs/kustomize/releases/tag/kustomize%2Fv5.2.1)
-- Kubectl in a version that is [compatible with your Kubernetes cluster](https://kubernetes.io/releases/version-skew-policy/#kubectl)
-
----
-**NOTE**
-
-`kubectl apply` commands may fail on the first try. This is inherent in how Kubernetes and `kubectl` work (e.g., CR must be created after CRD becomes ready). The solution is to simply re-run the command until it succeeds. For the single-line command, we have included a bash one-liner to retry the command.
-
----
-
-### Install with a single command
-
-#### Prerequisites
-- 32 GB of RAM recommended
-- 16 CPU cores recommended
-- `kind`
-- `docker`
-- Linux kernel subsystem changes to support many pods
- - `sudo sysctl fs.inotify.max_user_instances=2280`
- - `sudo sysctl fs.inotify.max_user_watches=1255360`
-
-#### Create kind cluster
-```sh
-cat < /tmp/kubeflow-config
-export KUBECONFIG=/tmp/kubeflow-config
-```
-
-#### Create a Secret based on existing credentials in order to pull the images
-```sh
-docker login
-
-kubectl create secret generic regcred \
- --from-file=.dockerconfigjson=/home/to/.docker/config.json \
- --type=kubernetes.io/dockerconfigjson
-```
-
-You can install all Kubeflow official components (residing under `apps`) and all common services (residing under `common`) using the following command:
-
-```sh
-while ! kustomize build example | kubectl apply -f -; do echo "Retrying to apply resources"; sleep 20; done
-```
-
-Once, everything is installed successfully, you can access the Kubeflow Central Dashboard [by logging in to your cluster](#connect-to-your-kubeflow-cluster).
-
-Congratulations! You can now start experimenting and running your end-to-end ML workflows with Kubeflow.
-
-### Install individual components
-
-In this section, we will install each Kubeflow official component (under `apps`) and each common service (under `common`) separately, using just `kubectl` and `kustomize`.
-
-If all the following commands are executed, the result is the same as in the above section of the single command installation. The purpose of this section is to:
-
-- Provide a description of each component and insight on how it gets installed.
-- Enable the user or distribution owner to pick and choose only the components they need.
-
----
-**Troubleshooting note**
-
-We've seen errors like the following when applying the kustomizations of different components:
-```
-error: resource mapping not found for name: "" namespace: "" from "STDIN": no matches for kind "" in version ""
-ensure CRDs are installed first
-```
-
-This is because a kustomization applies both a CRD and a CR very quickly, and the CRD
-hasn't become [`Established`](https://github.com/kubernetes/apiextensions-apiserver/blob/a7ee7f91a2d0805f729998b85680a20cfba208d2/pkg/apis/apiextensions/types.go#L276-L279) yet. You can learn more about this in https://github.com/kubernetes/kubectl/issues/1117 and https://github.com/helm/helm/issues/4925.
-
-If you bump into this error we advise to re-apply the kustomization of the component.
-
----
-
-#### cert-manager
-
-Cert-manager is used by many Kubeflow components to provide certificates for
-admission webhooks.
-
-Install cert-manager:
-
-```sh
-kustomize build common/cert-manager/cert-manager/base | kubectl apply -f -
-echo "Waiting for cert-manager to be ready ..."
-kubectl wait --for=condition=ready pod -l 'app in (cert-manager,webhook)' --timeout=180s -n cert-manager
-kubectl wait --for=jsonpath='{.subsets[0].addresses[0].targetRef.kind}'=Pod endpoints -l 'app in (cert-manager,webhook)' --timeout=180s -n cert-manager
-```
-
-In case you get this error:
-```
-Error from server (InternalError): error when creating "STDIN": Internal error occurred: failed calling webhook "webhook.cert-manager.io": failed to call webhook: Post "https://cert-manager-webhook.cert-manager.svc:443/mutate?timeout=10s": dial tcp 10.96.202.64:443: connect: connection refused
-```
-This is because the webhook is not yet ready to receive request. Wait a couple seconds and retry applying the manfiests.
-
-For more troubleshooting info also check out https://cert-manager.io/docs/troubleshooting/webhook/
-
-#### Istio
-
-Istio is used by most Kubeflow components to secure their traffic, enforce
-network authorization and implement routing policies.
-
-Install Istio:
-
-```sh
-echo "Installing Istio configured with external authorization..."
-cd common/istio-1-22
-kustomize build common/istio-1-22/istio-crds/base | kubectl apply -f -
-kustomize build common/istio-1-22/istio-namespace/base | kubectl apply -f -
-kustomize build common/istio-1-22/istio-install/overlays/oauth2-proxy | kubectl apply -f -
-
-echo "Waiting for all Istio Pods to become ready..."
-kubectl wait --for=condition=Ready pods --all -n istio-system --timeout 300s
-```
-
-#### Oauth2-proxy
-
-The oauth2-proxy extends your Istio Ingress-Gateway capabilities, to be able to function as an OIDC client:
-
-```sh
-echo "Installing oauth2-proxy..."
-kustomize build common/oidc-client/oauth2-proxy/overlays/m2m-self-signed/ | kubectl apply -f -
-kubectl wait --for=condition=ready pod -l 'app.kubernetes.io/name=oauth2-proxy' --timeout=180s -n oauth2-proxy
-```
-
-It supports user sessions as well as proper token-based machine to machine atuhhentication.
-
-#### Dex
-
-Dex is an OpenID Connect Identity (OIDC) with multiple authentication backends. In this default installation, it includes a static user with email `user@example.com`. By default, the user's password is `12341234`. For any production Kubeflow deployment, you should change the default password by following [the relevant section](#change-default-user-password).
-
-Install Dex:
-
-```sh
-kustomize build common/dex/overlays/oauth2-proxy | kubectl apply -f -
-```
-
-#### Knative
-
-Knative is used by the KServe official Kubeflow component.
-
-Install Knative Serving:
-
-```sh
-kustomize build common/knative/knative-serving/overlays/gateways | kubectl apply -f -
-kustomize build common/istio-1-22/cluster-local-gateway/base | kubectl apply -f -
-```
-
-Optionally, you can install Knative Eventing which can be used for inference request logging:
-
-```sh
-kustomize build common/knative/knative-eventing/base | kubectl apply -f -
-```
-
-#### Kubeflow Namespace
-
-Create the namespace where the Kubeflow components will live in. This namespace
-is named `kubeflow`.
-
-Install kubeflow namespace:
-
-```sh
-kustomize build common/kubeflow-namespace/base | kubectl apply -f -
-```
-
-#### Kubeflow Roles
-
-Create the Kubeflow ClusterRoles, `kubeflow-view`, `kubeflow-edit` and
-`kubeflow-admin`. Kubeflow components aggregate permissions to these
-ClusterRoles.
-
-Install kubeflow roles:
-
-```sh
-kustomize build common/kubeflow-roles/base | kubectl apply -f -
-```
-
-#### Kubeflow Pipelines
-
-Install the [Multi-User Kubeflow Pipelines](https://www.kubeflow.org/docs/components/pipelines/multi-user/) official Kubeflow component:
-
-```sh
-kustomize build apps/pipeline/upstream/env/cert-manager/platform-agnostic-multi-user | kubectl apply -f -
-```
-This installs argo with the runasnonroot emissary executor. Please note that you are still responsible to analyze the security issues that arise when containers are run with root access and to decide if the kubeflow pipeline main containers are run as runasnonroot. It is in general strongly recommended that all user-accessible OCI containers run with Pod Security Standards [restricted]
-(https://kubernetes.io/docs/concepts/security/pod-security-standards/#restricted)
-
-**Multi-User Kubeflow Pipelines dependencies**
-
-* Istio
-* Kubeflow Roles
-* OIDC Auth Service (or cloud provider specific auth service)
-* Profiles + KFAM
-
-**Alternative: Kubeflow Pipelines Standalone**
-
-You can install [Kubeflow Pipelines Standalone](https://www.kubeflow.org/docs/components/pipelines/installation/standalone-deployment/) which
-
-* does not support multi user separation
-* has no dependencies on the other services mentioned here
-
-You can learn more about their differences in [Installation Options for Kubeflow Pipelines
-](https://www.kubeflow.org/docs/components/pipelines/installation/overview/).
-
-Besides installation instructions in Kubeflow Pipelines Standalone documentation, you need to apply two virtual services to expose [Kubeflow Pipelines UI](https://github.com/kubeflow/pipelines/blob/1.7.0/manifests/kustomize/base/installs/multi-user/virtual-service.yaml) and [Metadata API](https://github.com/kubeflow/pipelines/blob/1.7.0/manifests/kustomize/base/metadata/options/istio/virtual-service.yaml) in kubeflow-gateway.
-
-#### KServe
-
-KFServing was rebranded to KServe.
-
-Install the KServe component:
-
-```sh
-kustomize build contrib/kserve/kserve | kubectl apply -f -
-```
-
-Install the Models web application:
-
-```sh
-kustomize build contrib/kserve/models-web-app/overlays/kubeflow | kubectl apply -f -
-```
-
-#### Katib
-
-Install the Katib official Kubeflow component:
-
-```sh
-kustomize build apps/katib/upstream/installs/katib-with-kubeflow | kubectl apply -f -
-```
-
-#### Central Dashboard
-
-Install the Central Dashboard official Kubeflow component:
-
-```sh
-kustomize build apps/centraldashboard/upstream/overlays/kserve | kubectl apply -f -
-```
-
-#### Admission Webhook
-
-Install the Admission Webhook for PodDefaults:
-
-```sh
-kustomize build apps/admission-webhook/upstream/overlays/cert-manager | kubectl apply -f -
-```
-
-#### Notebooks 1.0
-
-Install the Notebook Controller official Kubeflow component:
-
-```sh
-kustomize build apps/jupyter/notebook-controller/upstream/overlays/kubeflow | kubectl apply -f -
-```
-
-Install the Jupyter Web App official Kubeflow component:
-
-```sh
-kustomize build apps/jupyter/jupyter-web-app/upstream/overlays/istio | kubectl apply -f -
-```
-
-#### Workspaces (Notebooks 2.0)
-
-It is still in development.
-
-#### PVC Viewer Controller
-
-Install the PVC Viewer Controller official Kubeflow component:
-
-```sh
-kustomize build apps/pvcviewer-controller/upstream/default | kubectl apply -f -
-```
-
-#### Profiles + KFAM
-
-Install the Profile Controller and the Kubeflow Access-Management (KFAM) official Kubeflow
-components:
-
-```sh
-kustomize build apps/profiles/upstream/overlays/kubeflow | kubectl apply -f -
-```
-
-#### Volumes Web Application
-
-Install the Volumes Web App official Kubeflow component:
-
-```sh
-kustomize build apps/volumes-web-app/upstream/overlays/istio | kubectl apply -f -
-```
-
-#### Tensorboard
-
-Install the Tensorboards Web App official Kubeflow component:
-
-```sh
-kustomize build apps/tensorboard/tensorboards-web-app/upstream/overlays/istio | kubectl apply -f -
-```
-
-Install the Tensorboard Controller official Kubeflow component:
-
-```sh
-kustomize build apps/tensorboard/tensorboard-controller/upstream/overlays/kubeflow | kubectl apply -f -
-```
-
-#### Training Operator
-
-Install the Training Operator official Kubeflow component:
-
-```sh
-kustomize build apps/training-operator/upstream/overlays/kubeflow | kubectl apply -f -
-```
-
-#### User Namespaces
-
-Finally, create a new namespace for the default user (named `kubeflow-user-example-com`).
-
-```sh
-kustomize build common/user-namespace/base | kubectl apply -f -
-```
-
-### Connect to your Kubeflow Cluster
-
-After installation, it will take some time for all Pods to become ready. Make sure all Pods are ready before trying to connect, otherwise you might get unexpected errors. To check that all Kubeflow-related Pods are ready, use the following commands:
-
-```sh
-kubectl get pods -n cert-manager
-kubectl get pods -n istio-system
-kubectl get pods -n auth
-kubectl get pods -n knative-eventing
-kubectl get pods -n knative-serving
-kubectl get pods -n kubeflow
-kubectl get pods -n kubeflow-user-example-com
-```
-
-#### Port-Forward
-
-The default way of accessing Kubeflow is via port-forward. This enables you to get started quickly without imposing any requirements on your environment. Run the following to port-forward Istio's Ingress-Gateway to local port `8080`:
-
-```sh
-kubectl port-forward svc/istio-ingressgateway -n istio-system 8080:80
-```
-
-After running the command, you can access the Kubeflow Central Dashboard by doing the following:
-
-1. Open your browser and visit `http://localhost:8080`. You should get the Dex login screen.
-2. Login with the default user's credentials. The default email address is `user@example.com` and the default password is `12341234`.
-
-#### NodePort / LoadBalancer / Ingress
-
-In order to connect to Kubeflow using NodePort / LoadBalancer / Ingress, you need to setup HTTPS. The reason is that many of our web applications (e.g., Tensorboard Web Application, Jupyter Web Application, Katib UI) use [Secure Cookies](https://developer.mozilla.org/en-US/docs/Web/HTTP/Cookies#restrict_access_to_cookies), so accessing Kubeflow with HTTP over a non-localhost domain does not work.
-
-Exposing your Kubeflow cluster with proper HTTPS is a simple proces, but dependent on your environment.
-There are also third-party commercial [distributions](https://www.kubeflow.org/docs/started/installing-kubeflow/#install-a-packaged-kubeflow-distribution) available.
-
----
-**NOTE**
-
-If you absolutely need to expose Kubeflow over HTTP, you can disable the `Secure Cookies` feature by setting the `APP_SECURE_COOKIES` environment variable to `false` in every relevant web app. This is not recommended, as it poses security risks.
-
----
-
-### Change default user password
-
-For security reasons, we don't want to use the default password for the default Kubeflow user when installing in security-sensitive environments. Instead, you should define your own password and apply it either **before creating the cluster** or **after creating the cluster**.
-
-Pick a password for the default user, with email `user@example.com`, and hash it using `bcrypt`:
-
- ```sh
- python3 -c 'from passlib.hash import bcrypt; import getpass; print(bcrypt.using(rounds=12, ident="2y").hash(getpass.getpass()))'
- ```
-
-For example, running the above command locally with required packages like _passlib_ would look as follows:
- ```sh
- python3 -c 'from passlib.hash import bcrypt; import getpass; print(bcrypt.using(rounds=12, ident="2y").hash(getpass.getpass()))'
- Password: <--- Enter the password here
- $2y$12$vIm8CANhuWui0J1p3jYeGeuM28Qcn76IFMaFWvZCG5ZkKZ4MjTF4u <--- GENERATED_HASH_FOR_ENTERED_PASSWORD
- ```
-
-#### Before creating the cluster:
-
-1. Edit `common/dex/base/dex-passwords.yaml` and fill the relevant field with the hash of the password you chose:
-
- ```yaml
- ...
- stringData:
- DEX_USER_PASSWORD:
- ```
-
-#### After creating the cluster:
-
-1. Delete the existing secret _dex-passwords_ in auth namespace using the following command:
-
- ```sh
- kubectl delete secret dex-passwords -n auth
- ```
-
-2. Create secret dex-passwords with new hash using the following command:
-
- ```sh
- kubectl create secret generic dex-passwords --from-literal=DEX_USER_PASSWORD='REPLACE_WITH_HASH' -n auth
- ```
-
-3. Recreate the _dex_ pod in auth namespace using the following command:
-
- ```sh
- kubectl delete pods --all -n auth
- ```
-
-4. Try to login using the new dex password.
-
-## Upgrading and extending
-
-For modifications and in place upgrades of the Kubeflow platform we provide a rough description for advanced users:
-
-- Never ever edit the manifests directly, use Kustomize overlays and [components](https://github.com/kubernetes-sigs/kustomize/blob/master/examples/components.md) on top of the [example.yaml](https://github.com/kubeflow/manifests/blob/master/example/kustomization.yaml).
-- This allows you to upgrade by just referencing the new manifests, building with kustomize and running `kubectl apply` again.
-- You might have to adjust your over the top overlays and components if needed.
-- You might have to prune old resources. For that you would add [labels](https://kubectl.docs.kubernetes.io/references/kustomize/kustomization/labels/) to all your resources from the start.
-- With labels you can use `kubectl apply` with `--prune` and `--dry-run` to list prunable resources.
-- Sometimes there are major changes, e.g. in the 1.9 release we switch to oauth2-proxy, which need additional attention.
-- Nevertheless with a bit of Kubernetes knowledge one should be able to upgrade.
-
-## Release process
-
-The Manifest Working Group releases Kubeflow based on the [release timeline](https://github.com/kubeflow/community/blob/master/releases/handbook.md#timeline).
- The community and the release team work closely with the Manifest Working Group to define the specific dates at the start of the [release cycle](https://github.com/kubeflow/community/blob/master/releases/handbook.md#releasing)
- and follow the [release versioning policy](https://github.com/kubeflow/community/blob/master/releases/handbook.md#versioning-policy),
- as defined in the [Kubeflow release handbook](https://github.com/kubeflow/community/blob/master/releases/handbook.md).
-
-## CVE Scanning
-
-To view all past security scans, head to the [Image Extracting and Security Scanning GitHub Action workflow](https://github.com/kubeflow/manifests/actions/workflows/trivy.yaml). In the logs of the workflow you can expand the `Run image extracting and security scanning script` step to view the CVE logs. You will find a per-image CVE scan and a JSON dump of per-WorkingGroup aggregated metrics.
-You can run the Python script from the workflow file locally on your machine to obtain the detailed JSON files for any git commit.
-
-The Kubeflow security working group follows a responsible disclosure policy for CVE results:
-
-- **Internal Review**: All CVE findings are initially reviewed internally by the security working group.
-- **Severity Assessment**: Each CVE is assessed for severity and potential impact on the Kubeflow project.
-- **Disclosure**: For high and critical severity CVEs, the security working group will:
- - Notify the maintainers and contributors
- - Try to provide a fix or mitigation strategy
- - Publicly disclose the CVE details
-
-## Frequently Asked Questions
-
-- **Q:** What versions of Istio, Knative, Cert-Manager, Argo, ... are compatible with Kubeflow? \
- **A:** Please refer to each individual component's documentation for a dependency compatibility range. For Istio, Knative, Dex, Cert-Manager and OIDC-AuthService, the versions in `common` are the ones we have validated.
-- **Q:** Can I use earlier version of Kustomize with Kubeflow manifests?
- **A:** No, it is not supported anymore, although it might be possible with manual effort.
+# Kubeflow Manifests
+
+The **Kubeflow Manifests** are a collection of community-maintained manifests for installing Kubeflow in popular Kubernetes clusters such as Kind, Minikube, Rancher, EKS, AKS, and GKE. The manifests include all Kubeflow components (Pipelines, Kserve, etc.), the **Kubeflow Central Dashboard**, and other applications that comprise the **Kubeflow Platform**. This installation is beneficial for users wanting to explore the end-to-end capabilities of the Kubeflow Platform.
+
+For a stable and conservative experience, we recommend using the [latest stable release](https://github.com/kubeflow/manifests/releases). However, please consult the more up-to-date documentation in the master branch.
+
+- **Kubeflow 1.10:**
+ - [`v1.10.0`](https://github.com/kubeflow/manifests/tree/v1.10-branch)
+
+You can also install the master branch of [`kubeflow/manifests`](https://github.com/kubeflow/manifests) by following the instructions [here](https://github.com/kubeflow/manifests?tab=readme-ov-file#installation) and providing us with feedback.
+
+## Table of Contents
+
+
+
+- [Overview of the Kubeflow Platform](#overview-of-the-kubeflow-platform)
+- [Kubeflow Components Versions](#kubeflow-components-versions)
+- [Installation](#installation)
+ - [Prerequisites](#prerequisites)
+ - [Install with a Single Command](#install-with-a-single-command)
+ - [Install Individual Components](#install-individual-components)
+ - [Connect to Your Kubeflow Cluster](#connect-to-your-kubeflow-cluster)
+ - [Change Default User Name](#change-default-user-name)
+ - [Change Default User Password](#change-default-user-password)
+- [Upgrading and Extending](#upgrading-and-extending)
+- [Release Process](#release-process)
+- [CVE Scanning](#cve-scanning)
+- [Pre-commit Hooks](#pre-commit-hooks)
+- [Frequently Asked Questions](#frequently-asked-questions)
+
+
+
+## Overview of the Kubeflow Platform
+
+This repository is owned by the [Platform/Manifests Working Group](https://github.com/kubeflow/community/blob/master/wg-manifests/charter.md). If you are a contributor authoring or editing the packages, please see [Best Practices](https://kubectl.docs.kubernetes.io/references/kustomize/). You can join the CNCF Slack and access our meetings at the [Kubeflow Community](https://www.kubeflow.org/docs/about/community/) website. Our channel on the CNCF Slack is [**#kubeflow-platform**](https://app.slack.com/client/T08PSQ7BQ/C073W572LA2). You can also find our [biweekly meetings](https://bit.ly/kf-wg-manifests-meet), including the commentable [Agenda](https://bit.ly/kf-wg-manifests-notes).
+
+The Kubeflow Manifests repository is organized under three main directories, which include manifests for installing:
+
+| Directory | Purpose |
+| - | - |
+| `applications` | Kubeflow's official components, maintained by the respective Kubeflow WGs |
+| `common` | Common services, maintained by the Manifests WG |
+| `experimental` | Third-party integrations and platform experiments (e.g., Ray, SeaweedFS, or security improvements) |
+
+All components are deployable with `kustomize`. You can choose to deploy the entire Kubeflow platform or individual components.
+
+## Kubeflow Components Versions
+
+### Kubeflow Version: Master
+
+This repository periodically synchronizes all official Kubeflow components from the respective upstream repositories. The following matrix shows the git version included for each component:
+
+| Component | Local Manifests Path | Upstream Revision |
+| - | - | - |
+| Training Operator | apps/training-operator/upstream | [v1.9.2](https://github.com/kubeflow/training-operator/tree/v1.9.2/manifests) |
+| Notebook Controller | apps/jupyter/notebook-controller/upstream | [v1.10.0](https://github.com/kubeflow/kubeflow/tree/v1.10.0/components/notebook-controller/config) |
+| PVC Viewer Controller | apps/pvcviewer-controller/upstream | [v1.10.0](https://github.com/kubeflow/kubeflow/tree/v1.10.0/components/pvcviewer-controller/config) |
+| Tensorboard Controller | apps/tensorboard/tensorboard-controller/upstream | [v1.10.0](https://github.com/kubeflow/kubeflow/tree/v1.10.0/components/tensorboard-controller/config) |
+| Central Dashboard | apps/centraldashboard/upstream | [v1.10.0](https://github.com/kubeflow/kubeflow/tree/v1.10.0/components/centraldashboard/manifests) |
+| Profiles + KFAM | apps/profiles/upstream | [v1.10.0](https://github.com/kubeflow/kubeflow/tree/v1.10.0/components/profile-controller/config) |
+| PodDefaults Webhook | apps/admission-webhook/upstream | [v1.10.0](https://github.com/kubeflow/kubeflow/tree/v1.10.0/components/admission-webhook/manifests) |
+| Jupyter Web Application | apps/jupyter/jupyter-web-app/upstream | [v1.10.0](https://github.com/kubeflow/kubeflow/tree/v1.10.0/components/crud-web-apps/jupyter/manifests) |
+| Tensorboards Web Application | apps/tensorboard/tensorboards-web-app/upstream | [v1.10.0](https://github.com/kubeflow/kubeflow/tree/v1.10.0/components/crud-web-apps/tensorboards/manifests) |
+| Volumes Web Application | apps/volumes-web-app/upstream | [v1.10.0](https://github.com/kubeflow/kubeflow/tree/v1.10.0/components/crud-web-apps/volumes/manifests) |
+| Katib | apps/katib/upstream | [v0.18.0](https://github.com/kubeflow/katib/tree/v0.18.0/manifests/v1beta1) |
+| KServe | apps/kserve/kserve | [v0.15.0](https://github.com/kserve/kserve/releases/tag/v0.15.0/install/v0.15.0) |
+| KServe Models Web Application | apps/kserve/models-web-app | [v0.14.0](https://github.com/kserve/models-web-app/tree/v0.14.0/config) |
+| Kubeflow Pipelines | apps/pipeline/upstream | [2.5.0](https://github.com/kubeflow/pipelines/tree/2.5.0/manifests/kustomize) |
+| Kubeflow Model Registry | apps/model-registry/upstream | [v0.2.17](https://github.com/kubeflow/model-registry/tree/v0.2.17/manifests/kustomize) |
+| Spark Operator | apps/spark/spark-operator | [2.1.1](https://github.com/kubeflow/spark-operator/tree/v2.1.1) |
+
+The following matrix shows the versions of common components used across different Kubeflow projects:
+
+| Component | Local Manifests Path | Upstream Revision |
+| - | - | - |
+| Istio | common/istio-1-24 | [1.24.3](https://github.com/istio/istio/releases/tag/1.24.3) |
+| Knative | common/knative/knative-serving
common/knative/knative-eventing | [v1.16.2](https://github.com/knative/serving/releases/tag/knative-v1.16.2)
[v1.16.4](https://github.com/knative/eventing/releases/tag/knative-v1.16.4) |
+| Cert Manager | common/cert-manager | [1.16.1](https://github.com/cert-manager/cert-manager/releases/tag/v1.16.1) |
+
+## Installation
+
+This section covers the installation from scratch. For the in-place upgrade guide, please jump to the [Upgrading and Extending](#upgrading-and-extending) section.
+
+Although our master branch has extended automated tests and is already quite stable, please consider using a stable [release tag/branch](https://github.com/kubeflow/manifests/releases) for a more conservative experience.
+
+We provide two options for installing the official Kubeflow components and common services with Kustomize. The aim is to help users install easily and building distributions of Kubeflow by deriving / deviating from the Kubeflow manifests:
+
+1. Single-command installation of all components under `apps` and `common`
+2. Multi-command, individual component installation for `apps` and `common`
+
+Option 1 targets ease of deployment for end users. \
+Option 2 targets customization, allowing users to pick and choose individual components.
+
+The `example` directory contains an example kustomization for the single command to be able to run.
+
+:warning: In both options, we use a default email (`user@example.com`) and password (`12341234`). For any production Kubeflow deployment, you should change the default password by following [the relevant section](#change-default-user-password).
+
+### Prerequisites
+- This is the master branch, which targets Kubernetes version 1.32.
+- For the specific Kubernetes version per release, consult the [release notes](https://github.com/kubeflow/manifests/releases).
+- Either our local Kind (installed below) or your own Kubernetes cluster with a default [StorageClass](https://kubernetes.io/docs/concepts/storage/storage-classes/).
+- Kustomize version [5.4.3+](https://github.com/kubernetes-sigs/kustomize/releases/tag/kustomize%2Fv5.4.3).
+- Kubectl version compatible with your Kubernetes cluster ([Version Skew Policy](https://kubernetes.io/releases/version-skew-policy/#kubectl)).
+
+---
+**NOTE**
+
+`kubectl apply` commands may fail on the first try. This is inherent in how Kubernetes and `kubectl` work (e.g., CR must be created after CRD becomes ready). The solution is to simply re-run the command until it succeeds. For the single-line command, we have included a bash one-liner to retry the command.
+
+---
+
+### Install with a Single Command
+
+#### Prerequisites
+- 16 GB of RAM recommended.
+- 8 CPU cores recommended.
+- `kind` version 0.27+.
+- `docker` or a more modern tool such as `podman` to run the OCI images for the Kind cluster.
+- Linux kernel subsystem changes to support many pods:
+ - `sudo sysctl fs.inotify.max_user_instances=2280`
+ - `sudo sysctl fs.inotify.max_user_watches=1255360`
+- You can exclude components from the `example/kustomization.yaml` to fit Kubeflow into 4-8 GB of memory and 2-4 CPU cores.
+
+#### Create Kind Cluster
+```sh
+cat < /tmp/kubeflow-config
+export KUBECONFIG=/tmp/kubeflow-config
+```
+
+#### Create a Secret Based on Existing Credentials to Pull the Images
+```sh
+docker login
+
+kubectl create secret generic regcred \
+ --from-file=.dockerconfigjson=$HOME/.docker/config.json \
+ --type=kubernetes.io/dockerconfigjson
+```
+
+You can install all Kubeflow official components (residing under `apps`) and all common services (residing under `common`) using the following command:
+
+```sh
+while ! kustomize build example | kubectl apply --server-side --force-conflicts -f -; do echo "Retrying to apply resources"; sleep 20; done
+```
+
+Once everything is installed successfully, you can access the Kubeflow Central Dashboard [by logging in to your cluster](#connect-to-your-kubeflow-cluster).
+
+Congratulations! You can now start experimenting and running your end-to-end ML workflows with Kubeflow.
+
+### Install Individual Components
+
+In this section, we will install each Kubeflow official component (under `apps`) and each common service (under `common`) separately, using just `kubectl` and `kustomize`.
+
+If all the following commands are executed, the result is the same as in the above section of the single command installation. The purpose of this section is to:
+
+- Provide a description of each component and insight on how it gets installed.
+- Enable the user or distribution owner to pick and choose only the components they need.
+
+---
+**Troubleshooting Note**
+
+We've seen errors like the following when applying the kustomizations of different components:
+```
+error: resource mapping not found for name: "" namespace: "" from "STDIN": no matches for kind "" in version ""
+ensure CRDs are installed first
+```
+
+This is because a kustomization applies both a CRD and a CR very quickly, and the CRD has not yet become [`Established`](https://github.com/kubernetes/apiextensions-apiserver/blob/a7ee7f91a2d0805f729998b85680a20cfba208d2/pkg/apis/apiextensions/types.go#L276-L279) yet. You can learn more about this in and .
+
+If you encounter this error, we advise re-applying the manifests of the component.
+
+---
+
+#### cert-manager
+
+Cert-manager is used by many Kubeflow components to provide certificates for admission webhooks.
+
+Install cert-manager:
+
+```sh
+kustomize build common/cert-manager/base | kubectl apply -f -
+kustomize build common/cert-manager/kubeflow-issuer/base | kubectl apply -f -
+echo "Waiting for cert-manager to be ready ..."
+kubectl wait --for=condition=Ready pod -l 'app in (cert-manager,webhook)' --timeout=180s -n cert-manager
+kubectl wait --for=jsonpath='{.subsets[0].addresses[0].targetRef.kind}'=Pod endpoints -l 'app in (cert-manager,webhook)' --timeout=180s -n cert-manager
+```
+
+In case you encounter this error:
+```
+Error from server (InternalError): error when creating "STDIN": Internal error occurred: failed calling webhook "webhook.cert-manager.io": failed to call webhook: Post "https://cert-manager-webhook.cert-manager.svc:443/mutate?timeout=10s": dial tcp 10.96.202.64:443: connect: connection refused
+```
+This is because the webhook is not yet ready to receive requests. Wait a couple of seconds and retry applying the manifests.
+
+For more troubleshooting info, also check out .
+
+#### Istio
+
+Istio is used by most Kubeflow components to secure their traffic, enforce network authorization, and implement routing policies. If you use Cilium CNI on your cluster, you must configure it properly for Istio as shown [here](https://docs.cilium.io/en/latest/network/servicemesh/istio/); otherwise, you will encounter RBAC access denied on the central dashboard.
+
+Install Istio:
+
+```sh
+echo "Installing Istio configured with external authorization..."
+kustomize build common/istio-1-24/istio-crds/base | kubectl apply -f -
+kustomize build common/istio-1-24/istio-namespace/base | kubectl apply -f -
+kustomize build common/istio-1-24/istio-install/overlays/oauth2-proxy | kubectl apply -f -
+
+echo "Waiting for all Istio Pods to become ready..."
+kubectl wait --for=condition=Ready pods --all -n istio-system --timeout 300s
+```
+
+#### Oauth2-proxy
+
+The oauth2-proxy extends your Istio Ingress-Gateway capabilities to function as an OIDC client. It supports user sessions as well as proper token-based machine-to-machine authentication.
+
+```sh
+echo "Installing oauth2-proxy..."
+
+# Only uncomment ONE of the following overlays, as they are mutually exclusive.
+# See `common/oauth2-proxy/overlays/` for more options.
+
+# OPTION 1: works on most clusters, does NOT allow K8s service account
+# tokens to be used from outside the cluster via the Istio ingress-gateway.
+#
+kustomize build common/oauth2-proxy/overlays/m2m-dex-only/ | kubectl apply -f -
+kubectl wait --for=condition=Ready pod -l 'app.kubernetes.io/name=oauth2-proxy' --timeout=180s -n oauth2-proxy
+
+# Option 2: works on Kind, K3D, Rancher, GKE, and many other clusters with the proper configuration, and allows K8s service account tokens to be used
+# from outside the cluster via the Istio ingress-gateway. For example, for automation with GitHub Actions.
+# In the end, you need to patch the issuer and jwksUri fields in the request authentication resource in the istio-system namespace
+# as done in /common/oauth2-proxy/overlays/m2m-dex-and-kind/kustomization.yaml.
+# Please follow the guidelines in the section Upgrading and Extending below for patching.
+# curl --insecure -H "Authorization: Bearer `cat /var/run/secrets/kubernetes.io/serviceaccount/token`" https://kubernetes.default/.well-known/openid-configuration
+# from a pod in the cluster should provide you with the issuer of your cluster.
+#
+#kustomize build common/oauth2-proxy/overlays/m2m-dex-and-kind/ | kubectl apply -f -
+#kubectl wait --for=condition=Ready pod -l 'app.kubernetes.io/name=oauth2-proxy' --timeout=180s -n oauth2-proxy
+#kubectl wait --for=condition=Ready pod -l 'app.kubernetes.io/name=cluster-jwks-proxy' --timeout=180s -n istio-system
+
+# OPTION 3: works on most EKS clusters with K8s service account
+# tokens to be used from outside the cluster via the Istio ingress-gateway.
+# You have to adjust AWS_REGION and CLUSTER_ID in common/oauth2-proxy/overlays/m2m-dex-and-eks/ first.
+#
+#kustomize build common/oauth2-proxy/overlays/m2m-dex-and-eks/ | kubectl apply -f -
+#kubectl wait --for=condition=Ready pod -l 'app.kubernetes.io/name=oauth2-proxy' --timeout=180s -n oauth2-proxy
+```
+
+If and after you finish the installation with Kubernetes service account token support, you should be able to create and use the tokens:
+```sh
+kubectl port-forward svc/istio-ingressgateway -n istio-system 8080:80
+TOKEN="$(kubectl -n $KF_PROFILE_NAMESPACE create token default-editor)"
+client = kfp.Client(host="http://localhost:8080/pipeline", existing_token=token)
+curl -v "localhost:8080/jupyter/api/namespaces/${$KF_PROFILE_NAMESPACE}/notebooks" -H "Authorization: Bearer ${TOKEN}"
+```
+
+If you want to use OAuth2 Proxy without Dex and connect it directly to your own IDP, you can refer to this [document](common/oauth2-proxy/README.md#change-default-authentication-from-dex--oauth2-proxy-to-oauth2-proxy-only). However, you can also keep Dex and extend it with connectors to your own IDP as explained in the Dex section below.
+
+#### Dex
+
+Dex is an OpenID Connect (OIDC) identity provider with multiple authentication backends. In this default installation, it includes a static user with the email `user@example.com`. By default, the user's password is `12341234`. For any production Kubeflow deployment, you should change the default password by following [the relevant section](#change-default-user-password).
+
+Install Dex:
+
+```sh
+echo "Installing Dex..."
+kustomize build common/dex/overlays/oauth2-proxy | kubectl apply -f -
+kubectl wait --for=condition=Ready pods --all --timeout=180s -n auth
+```
+
+To connect to your desired identity providers (LDAP, GitHub, Google, Microsoft, OIDC, SAML, GitLab), please take a look at . We recommend using OIDC in general since it is compatible with most providers. For example, Azure in the following example. You need to modify and add some environment variables in by adding a patch section in your main Kustomization file. For guidance, please check out [Upgrading and Extending](#upgrading-and-extending).
+
+```yaml
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: dex
+data:
+ config.yaml: |
+ issuer: http://dex.auth.svc.cluster.local:5556/dex
+ storage:
+ type: kubernetes
+ config:
+ inCluster: true
+ web:
+ http: 0.0.0.0:5556
+ logger:
+ level: "debug"
+ format: text
+ oauth2:
+ skipApprovalScreen: true
+ enablePasswordDB: true
+ #### WARNING: YOU SHOULD NOT USE THE DEFAULT STATIC PASSWORDS
+ #### and patch /common/dex/base/dex-passwords.yaml in a Kustomize overlay or remove it
+ staticPasswords:
+ - email: user@example.com
+ hashFromEnv: DEX_USER_PASSWORD
+ username: user
+ userID: "15841185641784"
+ staticClients:
+ # https://github.com/dexidp/dex/pull/1664
+ - idEnv: OIDC_CLIENT_ID
+ redirectURIs: ["/oauth2/callback"]
+ name: 'Dex Login Application'
+ secretEnv: OIDC_CLIENT_SECRET
+ #### Here come the connectors to OIDC providers such as Azure, GCP, GitHub, GitLab, etc.
+ #### Connector config values starting with a "$" will read from the environment.
+ connectors:
+ - type: oidc
+ id: azure
+ name: azure
+ config:
+ issuer: https://login.microsoftonline.com/$TENANT_ID/v2.0
+ redirectURI: https://$KUBEFLOW_INGRESS_URL/dex/callback
+ clientID: $AZURE_CLIENT_ID
+ clientSecret: $AZURE_CLIENT_SECRET
+ insecureSkipEmailVerified: true
+ scopes:
+ - openid
+ - profile
+ - email
+ #- groups # groups might be used in the future
+```
+
+For Keycloak, we have rough guidelines in .
+
+#### Knative
+
+Knative is used by the KServe official Kubeflow component.
+
+Install Knative Serving:
+
+```sh
+kustomize build common/knative/knative-serving/overlays/gateways | kubectl apply -f -
+kustomize build common/istio-1-24/cluster-local-gateway/base | kubectl apply -f -
+```
+
+Optionally, you can install Knative Eventing, which can be used for inference request logging:
+
+```sh
+kustomize build common/knative/knative-eventing/base | kubectl apply -f -
+```
+
+#### Kubeflow Namespace
+
+Create the namespace where the Kubeflow components will reside. This namespace is named `kubeflow`.
+
+Install the Kubeflow namespace:
+
+```sh
+kustomize build common/kubeflow-namespace/base | kubectl apply -f -
+```
+
+#### Network Policies
+
+Install network policies:
+```sh
+kustomize build common/networkpolicies/base | kubectl apply -f -
+```
+
+#### Kubeflow Roles
+
+Create the Kubeflow ClusterRoles: `kubeflow-view`, `kubeflow-edit`, and `kubeflow-admin`. Kubeflow components aggregate permissions to these ClusterRoles.
+
+Install Kubeflow roles:
+
+```sh
+kustomize build common/kubeflow-roles/base | kubectl apply -f -
+```
+
+#### Kubeflow Istio Resources
+
+Create the Kubeflow Gateway `kubeflow-gateway` and ClusterRole `kubeflow-istio-admin`.
+
+Install Kubeflow Istio resources:
+
+```sh
+kustomize build common/istio-1-24/kubeflow-istio-resources/base | kubectl apply -f -
+```
+
+#### Kubeflow Pipelines
+
+Install the [Multi-User Kubeflow Pipelines](https://www.kubeflow.org/docs/components/pipelines/multi-user/) official Kubeflow component:
+
+```sh
+kustomize build apps/pipeline/upstream/env/cert-manager/platform-agnostic-multi-user | kubectl apply -f -
+```
+This installs Argo with the runasnonroot emissary executor. Please note that you are still responsible for analyzing the security issues that arise when containers are run with root access and for deciding if the Kubeflow pipeline main containers are run as runasnonroot. It is generally strongly recommended that all user-accessible OCI containers run with Pod Security Standards [restricted](https://kubernetes.io/docs/concepts/security/pod-security-standards/#restricted).
+
+#### KServe
+
+KFServing was rebranded to KServe.
+
+Install the KServe component:
+
+```sh
+kustomize build apps/kserve/kserve | kubectl apply --server-side --force-conflicts -f -
+```
+
+Install the Models web application:
+
+```sh
+kustomize build apps/kserve/models-web-app/overlays/kubeflow | kubectl apply -f -
+```
+
+#### Katib
+
+Install the Katib official Kubeflow component:
+
+```sh
+kustomize build apps/katib/upstream/installs/katib-with-kubeflow | kubectl apply -f -
+```
+
+#### Central Dashboard
+
+Install the Central Dashboard official Kubeflow component:
+
+```sh
+kustomize build apps/centraldashboard/overlays/oauth2-proxy | kubectl apply -f -
+```
+
+#### Admission Webhook
+
+Install the Admission Webhook for PodDefaults:
+
+```sh
+kustomize build apps/admission-webhook/upstream/overlays/cert-manager | kubectl apply -f -
+```
+
+#### Notebooks 1.0
+
+Install the Notebook Controller official Kubeflow component:
+
+```sh
+kustomize build apps/jupyter/notebook-controller/upstream/overlays/kubeflow | kubectl apply -f -
+```
+
+Install the Jupyter Web Application official Kubeflow component:
+
+```sh
+kustomize build apps/jupyter/jupyter-web-app/upstream/overlays/istio | kubectl apply -f -
+```
+
+#### Workspaces (Notebooks 2.0)
+
+This feature is still in development.
+
+#### PVC Viewer Controller
+
+Install the PVC Viewer Controller official Kubeflow component:
+
+```sh
+kustomize build apps/pvcviewer-controller/upstream/base | kubectl apply -f -
+```
+
+#### Profiles + KFAM
+
+Install the Profile Controller and the Kubeflow Access-Management (KFAM) official Kubeflow components:
+
+```sh
+kustomize build apps/profiles/upstream/overlays/kubeflow | kubectl apply -f -
+```
+
+#### Volumes Web Application
+
+Install the Volumes Web Application official Kubeflow component:
+
+```sh
+kustomize build apps/volumes-web-app/upstream/overlays/istio | kubectl apply -f -
+```
+
+#### Tensorboard
+
+Install the Tensorboards Web Application official Kubeflow component:
+
+```sh
+kustomize build apps/tensorboard/tensorboards-web-app/upstream/overlays/istio | kubectl apply -f -
+```
+
+Install the Tensorboard Controller official Kubeflow component:
+
+```sh
+kustomize build apps/tensorboard/tensorboard-controller/upstream/overlays/kubeflow | kubectl apply -f -
+```
+
+#### Training Operator
+
+Install the Training Operator official Kubeflow component:
+
+```sh
+kustomize build apps/training-operator/upstream/overlays/kubeflow | kubectl apply --server-side --force-conflicts -f -
+```
+
+#### Spark Operator
+
+Install the Spark Operator:
+
+```sh
+kustomize build apps/spark/spark-operator/overlays/kubeflow | kubectl apply -f -
+```
+
+#### User Namespaces
+
+Finally, create a new namespace for the default user (named `kubeflow-user-example-com`).
+
+```sh
+kustomize build common/user-namespace/base | kubectl apply -f -
+```
+
+### Connect to Your Kubeflow Cluster
+
+After installation, it will take some time for all Pods to become ready. Ensure all Pods are ready before trying to connect; otherwise, you might encounter unexpected errors. To check that all Kubeflow-related Pods are ready, use the following commands:
+
+```sh
+kubectl get pods -n cert-manager
+kubectl get pods -n istio-system
+kubectl get pods -n auth
+kubectl get pods -n oauth2-proxy
+kubectl get pods -n knative-serving
+kubectl get pods -n kubeflow
+kubectl get pods -n kubeflow-user-example-com
+```
+
+#### Port-Forward
+
+The default way of accessing Kubeflow is via port-forwarding. This enables you to get started quickly without imposing any requirements on your environment. Run the following to port-forward Istio's Ingress-Gateway to local port `8080`:
+
+```sh
+kubectl port-forward svc/istio-ingressgateway -n istio-system 8080:80
+```
+
+After running the command, you can access the Kubeflow Central Dashboard by doing the following:
+
+1. Open your browser and visit `http://localhost:8080`. You should see the Dex login screen.
+2. Log in with the default user's credentials. The default email address is `user@example.com`, and the default password is `12341234`.
+
+#### NodePort / LoadBalancer / Ingress
+
+To connect to Kubeflow using NodePort / LoadBalancer / Ingress, you need to set up HTTPS. The reason is that many of our web applications (e.g., Tensorboard Web Application, Jupyter Web Application, Katib UI) use [Secure Cookies](https://developer.mozilla.org/en-US/docs/Web/HTTP/Cookies#restrict_access_to_cookies), so accessing Kubeflow with HTTP over a non-localhost domain does not work.
+
+Exposing your Kubeflow cluster with proper HTTPS is a straightforward process but depends on your environment. You can expose the `istio-ingressgateway` service in the `istio-system` namespace via nginx-ingress or any other ingress provider. For security reasons, only use `ClusterIP` on the service, not NodePort or something similarly dangerous. There is third-party [commercial support](https://www.kubeflow.org/docs/started/support/) available.
+
+---
+**NOTE**
+
+If you absolutely need to expose Kubeflow over HTTP, you can disable the `Secure Cookies` feature by setting the `APP_SECURE_COOKIES` environment variable to `false` in every relevant web app. This is not recommended, as it poses security risks.
+
+---
+
+### Change Default User Name
+
+For security reasons, we don't want to use the default username and email for the default Kubeflow user when installing in security-sensitive environments. Instead, you should define your own username and email before deploying. To define it for the default user:
+
+1. Edit `common/dex/overlays/oauth2-proxy/config-map.yaml` and fill the relevant field with your email and preferred username:
+
+ ```yaml
+ ...
+ staticPasswords:
+ - email:
+ username:
+ ```
+
+### Change Default User Password
+
+If you have an identity provider (LDAP, GitHub, Google, Microsoft, OIDC, SAML, GitLab) available, you should use that instead of static passwords and connect it to oauth2-proxy or Dex as explained in the sections above. This is best practice instead of using static passwords.
+
+For security reasons, we don't want to use the default static password for the default Kubeflow user when installing in security-sensitive environments. Instead, you should define your own password and apply it either **before creating the cluster** or **after creating the cluster**.
+
+Pick a password for the default user, with email `user@example.com`, and hash it using `bcrypt`:
+
+ ```sh
+ python3 -c 'from passlib.hash import bcrypt; import getpass; print(bcrypt.using(rounds=12, ident="2y").hash(getpass.getpass()))'
+ ```
+
+For example, running the above command locally with required packages like _passlib_ would look as follows:
+ ```sh
+ python3 -c 'from passlib.hash import bcrypt; import getpass; print(bcrypt.using(rounds=12, ident="2y").hash(getpass.getpass()))'
+ Password: <--- Enter the password here
+ $2y$12$vIm8CANhuWui0J1p3jYeGeuM28Qcn76IFMaFWvZCG5ZkKZ4MjTF4u <--- GENERATED_HASH_FOR_ENTERED_PASSWORD
+ ```
+
+#### Before Creating the Cluster:
+
+1. Edit `common/dex/base/dex-passwords.yaml` and fill the relevant field with the hash of the password you chose:
+
+ ```yaml
+ ...
+ stringData:
+ DEX_USER_PASSWORD:
+ ```
+
+#### After Creating the Cluster:
+
+1. Delete the existing secret _dex-passwords_ in the auth namespace using the following command:
+
+ ```sh
+ kubectl delete secret dex-passwords -n auth
+ ```
+
+2. Create the secret dex-passwords with the new hash using the following command:
+
+ ```sh
+ kubectl create secret generic dex-passwords --from-literal=DEX_USER_PASSWORD='REPLACE_WITH_HASH' -n auth
+ ```
+
+3. Recreate the _dex_ pod in the auth namespace using the following command:
+
+ ```sh
+ kubectl delete pods --all -n auth
+ ```
+
+4. Try to log in using the new Dex password.
+
+## Upgrading and Extending
+
+For modifications and in-place upgrades of the Kubeflow platform, we provide a rough description for advanced users:
+
+- Never edit the manifests directly; use Kustomize overlays and [components](https://github.com/kubernetes-sigs/kustomize/blob/master/examples/components.md) on top of the [example.yaml](https://github.com/kubeflow/manifests/blob/master/example/kustomization.yaml).
+- This allows you to upgrade by just referencing the new manifests, building with Kustomize, and running `kubectl apply` again.
+- You might have to adjust your overlays and components if needed.
+- You might need to prune old resources. For that, you would add [labels](https://kubectl.docs.kubernetes.io/references/kustomize/kustomization/labels/) to all your resources from the start.
+- With labels, you can use `kubectl apply` with `--prune` and `--dry-run` to list prunable resources.
+- Sometimes there are major changes; for example, in the 1.9 release, we switched to oauth2-proxy, which needs additional attention (cleanup istio-system once); or 1.9.1 -> 1.10 `kubectl delete clusterrolebinding meta-controller-cluster-role-binding`
+- Nevertheless, with a bit of Kubernetes knowledge, one should be able to upgrade.
+
+### Kubernetes upgrade fails due to `PodDisruptionBudget`
+
+To work around this remove these `PodDisruptionBudget`s for the time of the upgrade.
+You can most easily find them via the `k9s` pdb overview of this resource, alternatively with this command:
+
+```
+$ kubectl get --all-namespaces PodDisruptionBudget
+```
+
+As of now the following `PodDisruptionBudget`s are problematic in the upgrade
+context, all due to the `minAvailable` attribute:
+
+- **eventing-webhook** from _knative-eventing_
+- **activator-pdb** from _knative-serving_
+- **webhook-pdb** from _knative-serving_
+
+## Release Process
+
+The Manifest Working Group releases Kubeflow based on the [release timeline](https://github.com/kubeflow/community/blob/master/releases/handbook.md#timeline). The community and the release team work closely with the Manifest Working Group to define the specific dates at the start of the [release cycle](https://github.com/kubeflow/community/blob/master/releases/handbook.md#releasing) and follow the [release versioning policy](https://github.com/kubeflow/community/blob/master/releases/handbook.md#versioning-policy), as defined in the [Kubeflow release handbook](https://github.com/kubeflow/community/blob/master/releases/handbook.md).
+
+## CVE Scanning
+
+To view all past security scans, head to the [Image Extracting and Security Scanning GitHub Action workflow](https://github.com/kubeflow/manifests/actions/workflows/trivy.yaml). In the logs of the workflow, you can expand the `Run image extracting and security scanning script` step to view the CVE logs. You will find a per-image CVE scan and a JSON dump of per-WorkingGroup aggregated metrics. You can run the Python script from the workflow file locally on your machine to obtain the detailed JSON files for any git commit.
+
+The Kubeflow security working group follows a responsible disclosure policy for CVE results:
+
+- **Internal Review**: All CVE findings are initially reviewed internally by the security working group.
+- **Severity Assessment**: Each CVE is assessed for severity and potential impact on the Kubeflow project.
+- **Disclosure**: For high and critical severity CVEs, the security working group will:
+ - Notify the maintainers and contributors.
+ - Try to provide a fix or mitigation strategy.
+ - Publicly disclose the CVE details.
+
+## Pre-commit Hooks
+
+This repository uses pre-commit hooks to ensure code quality and consistency. The following hooks are configured:
+
+1. **Black** - Python code formatter.
+2. **Yamllint** - YAML file linter.
+3. **Shellcheck** - Shell script static analysis.
+
+To use these hooks:
+
+1. Install pre-commit:
+
+ ```bash
+ pip install pre-commit
+ ```
+
+2. Install the git hooks:
+
+ ```bash
+ pre-commit install
+ ```
+
+The hooks will run automatically on `git commit`. You can also run them manually:
+
+```bash
+pre-commit run
+```
+
+## Frequently Asked Questions
+
+- **Q:** What versions of Istio, Knative, Cert-Manager, Argo, ... are compatible with Kubeflow?
+ **A:** Please refer to each individual component's documentation for a dependency compatibility range. For Istio, Knative, Dex, Cert-Manager, and OAuth2 Proxy, the versions in `common` are the ones we have validated.
+- **Q:** Can I use Kubeflow in an air-gapped environment?
+ **A:** Yes you can. You just need to to get the list of images from our [trivy CVE scanning script](https://github.com/kubeflow/manifests/blob/master/tests/gh-actions/trivy_scan.py), mirror them and replace the references in the manifests with kustomize components and overlays, see [Upgrading and Extending](#upgrading-and-extending). You could also use a simple kyverno policy to replace the images at runtime, which could be easier to maintain.
diff --git a/charts/kubeflow/apps/admission-webhook/upstream/base/deployment.yaml b/charts/kubeflow/apps/admission-webhook/upstream/base/deployment.yaml
index ecab97a..f01da0f 100644
--- a/charts/kubeflow/apps/admission-webhook/upstream/base/deployment.yaml
+++ b/charts/kubeflow/apps/admission-webhook/upstream/base/deployment.yaml
@@ -5,11 +5,11 @@ metadata:
spec:
template:
metadata:
- annotations:
+ labels:
sidecar.istio.io/inject: "false"
spec:
containers:
- - image: docker.io/kubeflownotebookswg/poddefaults-webhook
+ - image: ghcr.io/kubeflow/kubeflow/poddefaults-webhook
name: admission-webhook
volumeMounts:
- mountPath: /etc/webhook/certs
diff --git a/charts/kubeflow/apps/admission-webhook/upstream/base/kustomization.yaml b/charts/kubeflow/apps/admission-webhook/upstream/base/kustomization.yaml
index 04fe85d..c070110 100644
--- a/charts/kubeflow/apps/admission-webhook/upstream/base/kustomization.yaml
+++ b/charts/kubeflow/apps/admission-webhook/upstream/base/kustomization.yaml
@@ -14,9 +14,9 @@ commonLabels:
app.kubernetes.io/component: poddefaults
app.kubernetes.io/name: poddefaults
images:
-- name: docker.io/kubeflownotebookswg/poddefaults-webhook
- newName: docker.io/kubeflownotebookswg/poddefaults-webhook
- newTag: v1.9.0
+- name: ghcr.io/kubeflow/kubeflow/poddefaults-webhook
+ newName: ghcr.io/kubeflow/kubeflow/poddefaults-webhook
+ newTag: v1.10.0
namespace: kubeflow
generatorOptions:
disableNameSuffixHash: true
diff --git a/charts/kubeflow/apps/centraldashboard/upstream/overlays/oauth2-proxy/kustomization.yaml b/charts/kubeflow/apps/centraldashboard/overlays/oauth2-proxy/kustomization.yaml
similarity index 62%
rename from charts/kubeflow/apps/centraldashboard/upstream/overlays/oauth2-proxy/kustomization.yaml
rename to charts/kubeflow/apps/centraldashboard/overlays/oauth2-proxy/kustomization.yaml
index 7115c88..bdd73a2 100644
--- a/charts/kubeflow/apps/centraldashboard/upstream/overlays/oauth2-proxy/kustomization.yaml
+++ b/charts/kubeflow/apps/centraldashboard/overlays/oauth2-proxy/kustomization.yaml
@@ -3,7 +3,7 @@ kind: Kustomization
resources:
# Using kserve overlay because it's also used in example installation.
-- ../kserve
+- ../../upstream/overlays/kserve
components:
-- ../../../../../common/oidc-client/oauth2-proxy/components/central-dashboard
+- ../../../../common/oauth2-proxy/components/central-dashboard
diff --git a/charts/kubeflow/apps/centraldashboard/upstream/base/deployment.yaml b/charts/kubeflow/apps/centraldashboard/upstream/base/deployment.yaml
index f9094e8..5956cba 100644
--- a/charts/kubeflow/apps/centraldashboard/upstream/base/deployment.yaml
+++ b/charts/kubeflow/apps/centraldashboard/upstream/base/deployment.yaml
@@ -13,12 +13,11 @@ spec:
metadata:
labels:
app: centraldashboard
- annotations:
sidecar.istio.io/inject: "true"
spec:
containers:
- name: centraldashboard
- image: docker.io/kubeflownotebookswg/centraldashboard
+ image: ghcr.io/kubeflow/kubeflow/central-dashboard
imagePullPolicy: IfNotPresent
livenessProbe:
httpGet:
@@ -41,9 +40,11 @@ spec:
- name: DASHBOARD_CONFIGMAP
value: CD_CONFIGMAP_NAME_PLACEHOLDER
- name: LOGOUT_URL
- value: '/authservice/logout'
+ value: '/oauth2/sign_out'
- name: POD_NAMESPACE
valueFrom:
fieldRef:
fieldPath: metadata.namespace
+ - name: COLLECT_METRICS
+ value: CD_COLLECT_METRICS
serviceAccountName: centraldashboard
diff --git a/charts/kubeflow/apps/centraldashboard/upstream/base/kustomization.yaml b/charts/kubeflow/apps/centraldashboard/upstream/base/kustomization.yaml
index 08f70ab..9744c17 100644
--- a/charts/kubeflow/apps/centraldashboard/upstream/base/kustomization.yaml
+++ b/charts/kubeflow/apps/centraldashboard/upstream/base/kustomization.yaml
@@ -11,9 +11,9 @@ resources:
- service.yaml
- configmap.yaml
images:
-- name: docker.io/kubeflownotebookswg/centraldashboard
- newName: docker.io/kubeflownotebookswg/centraldashboard
- newTag: v1.9.0
+- name: ghcr.io/kubeflow/kubeflow/central-dashboard
+ newName: ghcr.io/kubeflow/kubeflow/central-dashboard
+ newTag: v1.10.0
configMapGenerator:
- envs:
- params.env
diff --git a/charts/kubeflow/apps/centraldashboard/upstream/base/params.env b/charts/kubeflow/apps/centraldashboard/upstream/base/params.env
index b464dbf..213567f 100644
--- a/charts/kubeflow/apps/centraldashboard/upstream/base/params.env
+++ b/charts/kubeflow/apps/centraldashboard/upstream/base/params.env
@@ -1,4 +1,5 @@
CD_CLUSTER_DOMAIN=cluster.local
CD_USERID_HEADER=kubeflow-userid
CD_USERID_PREFIX=
-CD_REGISTRATION_FLOW=false
\ No newline at end of file
+CD_REGISTRATION_FLOW=false
+CD_COLLECT_METRICS=true
diff --git a/charts/kubeflow/apps/jupyter/jupyter-web-app/upstream/base/configs/spawner_ui_config.yaml b/charts/kubeflow/apps/jupyter/jupyter-web-app/upstream/base/configs/spawner_ui_config.yaml
index 6851aa3..d1a5c41 100644
--- a/charts/kubeflow/apps/jupyter/jupyter-web-app/upstream/base/configs/spawner_ui_config.yaml
+++ b/charts/kubeflow/apps/jupyter/jupyter-web-app/upstream/base/configs/spawner_ui_config.yaml
@@ -37,15 +37,16 @@ spawnerFormDefaults:
################################################################
image:
# the default container image
- value: kubeflownotebookswg/jupyter-scipy:latest
+ value: ghcr.io/kubeflow/kubeflow/notebook-servers/jupyter-scipy:v1.10.0
# the list of available container images in the dropdown
options:
- - kubeflownotebookswg/jupyter-scipy:latest
- - kubeflownotebookswg/jupyter-pytorch-full:latest
- - kubeflownotebookswg/jupyter-pytorch-cuda-full:latest
- - kubeflownotebookswg/jupyter-tensorflow-full:latest
- - kubeflownotebookswg/jupyter-tensorflow-cuda-full:latest
+ - ghcr.io/kubeflow/kubeflow/notebook-servers/jupyter-scipy:v1.10.0
+ - ghcr.io/kubeflow/kubeflow/notebook-servers/jupyter-pytorch-full:v1.10.0
+ - ghcr.io/kubeflow/kubeflow/notebook-servers/jupyter-pytorch-cuda-full:v1.10.0
+ - ghcr.io/kubeflow/kubeflow/notebook-servers/jupyter-pytorch-gaudi-full:v1.10.0
+ - ghcr.io/kubeflow/kubeflow/notebook-servers/jupyter-tensorflow-full:v1.10.0
+ - ghcr.io/kubeflow/kubeflow/notebook-servers/jupyter-tensorflow-cuda-full:v1.10.0
################################################################
# VSCode-like Container Images (Group 1)
@@ -60,11 +61,11 @@ spawnerFormDefaults:
################################################################
imageGroupOne:
# the default container image
- value: kubeflownotebookswg/codeserver-python:latest
+ value: ghcr.io/kubeflow/kubeflow/notebook-servers/codeserver-python:v1.10.0
# the list of available container images in the dropdown
options:
- - kubeflownotebookswg/codeserver-python:latest
+ - ghcr.io/kubeflow/kubeflow/notebook-servers/codeserver-python:v1.10.0
################################################################
# RStudio-like Container Images (Group 2)
@@ -81,11 +82,11 @@ spawnerFormDefaults:
################################################################
imageGroupTwo:
# the default container image
- value: kubeflownotebookswg/rstudio-tidyverse:latest
+ value: ghcr.io/kubeflow/kubeflow/notebook-servers/rstudio-tidyverse:v1.10.0
# the list of available container images in the dropdown
options:
- - kubeflownotebookswg/rstudio-tidyverse:latest
+ - ghcr.io/kubeflow/kubeflow/notebook-servers/rstudio-tidyverse:v1.10.0
################################################################
# CPU Resources
@@ -130,10 +131,12 @@ spawnerFormDefaults:
# `limitsKey` - what will be set as the actual limit
# `uiName` - what will be displayed in the dropdown UI
vendors:
- - limitsKey: "nvidia.com/gpu"
- uiName: "NVIDIA"
- - limitsKey: "amd.com/gpu"
- uiName: "AMD"
+ - limitsKey: "nvidia.com/gpu"
+ uiName: "NVIDIA"
+ - limitsKey: "amd.com/gpu"
+ uiName: "AMD"
+ - limitsKey: "habana.ai/gaudi"
+ uiName: "Intel Gaudi"
# the default value of the limit
# (possible values: "none", "1", "2", "4", "8")
@@ -162,7 +165,7 @@ spawnerFormDefaults:
requests:
storage: 5Gi
accessModes:
- - ReadWriteOnce
+ - ReadWriteOnce
################################################################
# Data Volumes
diff --git a/charts/kubeflow/apps/jupyter/jupyter-web-app/upstream/base/deployment.yaml b/charts/kubeflow/apps/jupyter/jupyter-web-app/upstream/base/deployment.yaml
index e492267..f9d34b3 100644
--- a/charts/kubeflow/apps/jupyter/jupyter-web-app/upstream/base/deployment.yaml
+++ b/charts/kubeflow/apps/jupyter/jupyter-web-app/upstream/base/deployment.yaml
@@ -8,7 +8,7 @@ spec:
spec:
containers:
- name: jupyter-web-app
- image: docker.io/kubeflownotebookswg/jupyter-web-app
+ image: ghcr.io/kubeflow/kubeflow/jupyter-web-app
ports:
- containerPort: 5000
volumeMounts:
@@ -27,6 +27,8 @@ spec:
value: $(JWA_USERID_PREFIX)
- name: APP_SECURE_COOKIES
value: $(JWA_APP_SECURE_COOKIES)
+ - name: METRICS
+ value: $(JWA_APP_ENABLE_METRICS)
serviceAccountName: service-account
volumes:
- configMap:
diff --git a/charts/kubeflow/apps/jupyter/jupyter-web-app/upstream/base/kustomization.yaml b/charts/kubeflow/apps/jupyter/jupyter-web-app/upstream/base/kustomization.yaml
index ec62bdd..7698904 100644
--- a/charts/kubeflow/apps/jupyter/jupyter-web-app/upstream/base/kustomization.yaml
+++ b/charts/kubeflow/apps/jupyter/jupyter-web-app/upstream/base/kustomization.yaml
@@ -21,9 +21,9 @@ commonLabels:
app: jupyter-web-app
kustomize.component: jupyter-web-app
images:
-- name: docker.io/kubeflownotebookswg/jupyter-web-app
- newName: docker.io/kubeflownotebookswg/jupyter-web-app
- newTag: v1.9.0
+- name: ghcr.io/kubeflow/kubeflow/jupyter-web-app
+ newName: ghcr.io/kubeflow/kubeflow/jupyter-web-app
+ newTag: v1.10.0
# We need the name to be unique without the suffix because the original name is what
# gets used with patches
configMapGenerator:
@@ -83,3 +83,10 @@ vars:
apiVersion: v1
kind: ConfigMap
name: parameters
+- name: JWA_APP_ENABLE_METRICS
+ fieldref:
+ fieldPath: data.JWA_APP_ENABLE_METRICS
+ objref:
+ apiVersion: v1
+ kind: ConfigMap
+ name: parameters
diff --git a/charts/kubeflow/apps/jupyter/jupyter-web-app/upstream/base/params.env b/charts/kubeflow/apps/jupyter/jupyter-web-app/upstream/base/params.env
index 218d5d3..6a0e9a5 100644
--- a/charts/kubeflow/apps/jupyter/jupyter-web-app/upstream/base/params.env
+++ b/charts/kubeflow/apps/jupyter/jupyter-web-app/upstream/base/params.env
@@ -4,3 +4,4 @@ JWA_CLUSTER_DOMAIN=cluster.local
JWA_USERID_HEADER=kubeflow-userid
JWA_USERID_PREFIX=
JWA_APP_SECURE_COOKIES=true
+JWA_APP_ENABLE_METRICS=1
diff --git a/charts/kubeflow/apps/jupyter/notebook-controller/upstream/base/kustomization.yaml b/charts/kubeflow/apps/jupyter/notebook-controller/upstream/base/kustomization.yaml
index a6b02fd..ccd0e8c 100644
--- a/charts/kubeflow/apps/jupyter/notebook-controller/upstream/base/kustomization.yaml
+++ b/charts/kubeflow/apps/jupyter/notebook-controller/upstream/base/kustomization.yaml
@@ -3,6 +3,6 @@ kind: Kustomization
resources:
- ../default
images:
-- name: docker.io/kubeflownotebookswg/notebook-controller
- newName: docker.io/kubeflownotebookswg/notebook-controller
- newTag: v1.9.0
+- name: ghcr.io/kubeflow/kubeflow/notebook-controller
+ newName: ghcr.io/kubeflow/kubeflow/notebook-controller
+ newTag: v1.10.0
diff --git a/charts/kubeflow/apps/jupyter/notebook-controller/upstream/default/manager_auth_proxy_patch.yaml b/charts/kubeflow/apps/jupyter/notebook-controller/upstream/default/manager_auth_proxy_patch.yaml
index 989d698..c9ae058 100644
--- a/charts/kubeflow/apps/jupyter/notebook-controller/upstream/default/manager_auth_proxy_patch.yaml
+++ b/charts/kubeflow/apps/jupyter/notebook-controller/upstream/default/manager_auth_proxy_patch.yaml
@@ -10,7 +10,7 @@ spec:
spec:
containers:
- name: kube-rbac-proxy
- image: gcr.io/kubebuilder/kube-rbac-proxy:v0.4.0
+ image: quay.io/brancz/kube-rbac-proxy:v0.4.0
args:
- "--secure-listen-address=0.0.0.0:8443"
- "--upstream=http://127.0.0.1:8080/"
diff --git a/charts/kubeflow/apps/jupyter/notebook-controller/upstream/manager/manager.yaml b/charts/kubeflow/apps/jupyter/notebook-controller/upstream/manager/manager.yaml
index e66fbe7..88cc068 100644
--- a/charts/kubeflow/apps/jupyter/notebook-controller/upstream/manager/manager.yaml
+++ b/charts/kubeflow/apps/jupyter/notebook-controller/upstream/manager/manager.yaml
@@ -18,7 +18,7 @@ spec:
spec:
containers:
- name: manager
- image: docker.io/kubeflownotebookswg/notebook-controller
+ image: ghcr.io/kubeflow/kubeflow/notebook-controller
command:
- /manager
env:
diff --git a/charts/kubeflow/apps/jupyter/notebook-controller/upstream/samples/_v1_notebook.yaml b/charts/kubeflow/apps/jupyter/notebook-controller/upstream/samples/_v1_notebook.yaml
index b062e8c..5490c33 100644
--- a/charts/kubeflow/apps/jupyter/notebook-controller/upstream/samples/_v1_notebook.yaml
+++ b/charts/kubeflow/apps/jupyter/notebook-controller/upstream/samples/_v1_notebook.yaml
@@ -8,4 +8,4 @@ spec:
spec:
containers:
- name: notebook-sample-v1
- image: kubeflownotebookswg/jupyter:latest
+ image: ghcr.io/kubeflow/kubeflow/notebook-servers/jupyter:latest
diff --git a/charts/kubeflow/apps/jupyter/notebook-controller/upstream/samples/_v1alpha1_notebook.yaml b/charts/kubeflow/apps/jupyter/notebook-controller/upstream/samples/_v1alpha1_notebook.yaml
index 94b4107..266ab8f 100644
--- a/charts/kubeflow/apps/jupyter/notebook-controller/upstream/samples/_v1alpha1_notebook.yaml
+++ b/charts/kubeflow/apps/jupyter/notebook-controller/upstream/samples/_v1alpha1_notebook.yaml
@@ -8,4 +8,4 @@ spec:
spec:
containers:
- name: notebook-sample-v1
- image: kubeflownotebookswg/jupyter:latest
+ image: ghcr.io/kubeflow/kubeflow/notebook-servers/jupyter:latest
diff --git a/charts/kubeflow/apps/jupyter/notebook-controller/upstream/samples/_v1beta1_notebook.yaml b/charts/kubeflow/apps/jupyter/notebook-controller/upstream/samples/_v1beta1_notebook.yaml
index da7d8be..9c8cde1 100644
--- a/charts/kubeflow/apps/jupyter/notebook-controller/upstream/samples/_v1beta1_notebook.yaml
+++ b/charts/kubeflow/apps/jupyter/notebook-controller/upstream/samples/_v1beta1_notebook.yaml
@@ -8,4 +8,4 @@ spec:
spec:
containers:
- name: notebook-sample-v1
- image: kubeflownotebookswg/jupyter:latest
+ image: ghcr.io/kubeflow/kubeflow/notebook-servers/jupyter:latest
diff --git a/charts/kubeflow/apps/katib/upstream/components/controller/controller.yaml b/charts/kubeflow/apps/katib/upstream/components/controller/controller.yaml
index 06579ff..4f9a3c6 100644
--- a/charts/kubeflow/apps/katib/upstream/components/controller/controller.yaml
+++ b/charts/kubeflow/apps/katib/upstream/components/controller/controller.yaml
@@ -15,16 +15,15 @@ spec:
metadata:
labels:
katib.kubeflow.org/component: controller
- katib.kubeflow.org/metrics-collector-injection: disabled
+ sidecar.istio.io/inject: "false"
annotations:
prometheus.io/scrape: "true"
prometheus.io/port: "8080"
- sidecar.istio.io/inject: "false"
spec:
serviceAccountName: katib-controller
containers:
- name: katib-controller
- image: docker.io/kubeflowkatib/katib-controller
+ image: ghcr.io/kubeflow/katib/katib-controller
command: ["./katib-controller"]
args:
- --katib-config=/katib-config.yaml
diff --git a/charts/kubeflow/apps/katib/upstream/components/controller/rbac.yaml b/charts/kubeflow/apps/katib/upstream/components/controller/rbac.yaml
index 3118ea7..9eec022 100644
--- a/charts/kubeflow/apps/katib/upstream/components/controller/rbac.yaml
+++ b/charts/kubeflow/apps/katib/upstream/components/controller/rbac.yaml
@@ -58,6 +58,7 @@ rules:
- "list"
- "watch"
- "patch"
+ - "update"
- apiGroups:
- apps
resources:
@@ -96,7 +97,6 @@ rules:
- pytorchjobs
- mpijobs
- xgboostjobs
- - mxjobs
verbs:
- "get"
- "list"
@@ -127,6 +127,7 @@ rules:
- "watch"
- "list"
- "patch"
+ - "update"
---
apiVersion: v1
kind: ServiceAccount
diff --git a/charts/kubeflow/apps/katib/upstream/components/controller/trial-templates.yaml b/charts/kubeflow/apps/katib/upstream/components/controller/trial-templates.yaml
index 13193d2..1b0f3bb 100644
--- a/charts/kubeflow/apps/katib/upstream/components/controller/trial-templates.yaml
+++ b/charts/kubeflow/apps/katib/upstream/components/controller/trial-templates.yaml
@@ -15,7 +15,7 @@ data:
spec:
containers:
- name: training-container
- image: docker.io/kubeflowkatib/pytorch-mnist-cpu:v0.17.0
+ image: ghcr.io/kubeflow/katib/pytorch-mnist-cpu:v0.18.0
command:
- "python3"
- "/opt/pytorch-mnist/mnist.py"
@@ -33,7 +33,7 @@ data:
spec:
containers:
- name: training-container
- image: docker.io/kubeflowkatib/enas-cnn-cifar10-cpu:v0.17.0
+ image: ghcr.io/kubeflow/katib/enas-cnn-cifar10-cpu:v0.18.0
command:
- python3
- -u
@@ -54,7 +54,7 @@ data:
spec:
containers:
- name: pytorch
- image: docker.io/kubeflowkatib/pytorch-mnist-cpu:v0.17.0
+ image: ghcr.io/kubeflow/katib/pytorch-mnist-cpu:v0.18.0
command:
- "python3"
- "/opt/pytorch-mnist/mnist.py"
@@ -68,7 +68,7 @@ data:
spec:
containers:
- name: pytorch
- image: docker.io/kubeflowkatib/pytorch-mnist-cpu:v0.17.0
+ image: ghcr.io/kubeflow/katib/pytorch-mnist-cpu:v0.18.0
command:
- "python3"
- "/opt/pytorch-mnist/mnist.py"
diff --git a/charts/kubeflow/apps/katib/upstream/components/db-manager/db-manager.yaml b/charts/kubeflow/apps/katib/upstream/components/db-manager/db-manager.yaml
index f4e6e45..a328873 100644
--- a/charts/kubeflow/apps/katib/upstream/components/db-manager/db-manager.yaml
+++ b/charts/kubeflow/apps/katib/upstream/components/db-manager/db-manager.yaml
@@ -15,12 +15,11 @@ spec:
metadata:
labels:
katib.kubeflow.org/component: db-manager
- annotations:
sidecar.istio.io/inject: "false"
spec:
containers:
- name: katib-db-manager
- image: docker.io/kubeflowkatib/katib-db-manager
+ image: ghcr.io/kubeflow/katib/katib-db-manager
env:
- name: DB_NAME
value: "mysql"
diff --git a/charts/kubeflow/apps/katib/upstream/components/mysql/mysql.yaml b/charts/kubeflow/apps/katib/upstream/components/mysql/mysql.yaml
index 5a8179f..a5eb054 100644
--- a/charts/kubeflow/apps/katib/upstream/components/mysql/mysql.yaml
+++ b/charts/kubeflow/apps/katib/upstream/components/mysql/mysql.yaml
@@ -17,7 +17,6 @@ spec:
metadata:
labels:
katib.kubeflow.org/component: mysql
- annotations:
sidecar.istio.io/inject: "false"
spec:
containers:
diff --git a/charts/kubeflow/apps/katib/upstream/components/postgres/postgres.yaml b/charts/kubeflow/apps/katib/upstream/components/postgres/postgres.yaml
index 0d94d7b..f4d243f 100644
--- a/charts/kubeflow/apps/katib/upstream/components/postgres/postgres.yaml
+++ b/charts/kubeflow/apps/katib/upstream/components/postgres/postgres.yaml
@@ -17,8 +17,8 @@ spec:
metadata:
labels:
katib.kubeflow.org/component: postgres
- annotations:
sidecar.istio.io/inject: "false"
+ annotations:
spec:
containers:
- name: katib-postgres
diff --git a/charts/kubeflow/apps/katib/upstream/components/ui/ui.yaml b/charts/kubeflow/apps/katib/upstream/components/ui/ui.yaml
index 4d07def..cdf00ae 100644
--- a/charts/kubeflow/apps/katib/upstream/components/ui/ui.yaml
+++ b/charts/kubeflow/apps/katib/upstream/components/ui/ui.yaml
@@ -15,12 +15,11 @@ spec:
metadata:
labels:
katib.kubeflow.org/component: ui
- annotations:
sidecar.istio.io/inject: "false"
spec:
containers:
- name: katib-ui
- image: docker.io/kubeflowkatib/katib-ui
+ image: ghcr.io/kubeflow/katib/katib-ui
command:
- "./katib-ui"
args:
diff --git a/charts/kubeflow/apps/katib/upstream/components/webhook/webhooks.yaml b/charts/kubeflow/apps/katib/upstream/components/webhook/webhooks.yaml
index bb3f291..fb8d93b 100644
--- a/charts/kubeflow/apps/katib/upstream/components/webhook/webhooks.yaml
+++ b/charts/kubeflow/apps/katib/upstream/components/webhook/webhooks.yaml
@@ -9,7 +9,6 @@ webhooks:
admissionReviewVersions:
- v1
clientConfig:
- caBundle: Cg==
service:
name: katib-controller
namespace: kubeflow
@@ -35,7 +34,6 @@ webhooks:
admissionReviewVersions:
- v1
clientConfig:
- caBundle: Cg==
service:
name: katib-controller
namespace: kubeflow
@@ -55,7 +53,6 @@ webhooks:
admissionReviewVersions:
- v1
clientConfig:
- caBundle: Cg==
service:
name: katib-controller
namespace: kubeflow
@@ -63,16 +60,9 @@ webhooks:
namespaceSelector:
matchLabels:
katib.kubeflow.org/metrics-collector-injection: enabled
- # Once the AdmissionWebhookMatchConditions feature gate is enabled by default, we should switch to control based on userInfo.
- # REF:
- # - AdmissionWebhookMatchConditions: https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/#matching-requests-matchconditions
- # - Tracking issue: https://github.com/kubeflow/katib/issues/2206
- objectSelector:
- matchExpressions:
- - key: katib.kubeflow.org/metrics-collector-injection
- operator: NotIn
- values:
- - disabled
+ matchConditions:
+ - name: 'exclude-katib-controller'
+ expression: 'request.userInfo.username != "system:serviceaccount:kubeflow:katib-controller"'
rules:
- apiGroups:
- ""
diff --git a/charts/kubeflow/apps/katib/upstream/installs/katib-cert-manager/katib-config.yaml b/charts/kubeflow/apps/katib/upstream/installs/katib-cert-manager/katib-config.yaml
index 08464d1..a97d288 100644
--- a/charts/kubeflow/apps/katib/upstream/installs/katib-cert-manager/katib-config.yaml
+++ b/charts/kubeflow/apps/katib/upstream/installs/katib-cert-manager/katib-config.yaml
@@ -10,44 +10,43 @@ init:
- PyTorchJob.v1.kubeflow.org
- MPIJob.v1.kubeflow.org
- XGBoostJob.v1.kubeflow.org
- - MXJob.v1.kubeflow.org
runtime:
metricsCollectors:
- kind: StdOut
- image: docker.io/kubeflowkatib/file-metrics-collector:v0.17.0
+ image: ghcr.io/kubeflow/katib/file-metrics-collector:v0.18.0
- kind: File
- image: docker.io/kubeflowkatib/file-metrics-collector:v0.17.0
+ image: ghcr.io/kubeflow/katib/file-metrics-collector:v0.18.0
- kind: TensorFlowEvent
- image: docker.io/kubeflowkatib/tfevent-metrics-collector:v0.17.0
+ image: ghcr.io/kubeflow/katib/tfevent-metrics-collector:v0.18.0
resources:
limits:
memory: 1Gi
suggestions:
- algorithmName: random
- image: docker.io/kubeflowkatib/suggestion-hyperopt:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-hyperopt:v0.18.0
- algorithmName: tpe
- image: docker.io/kubeflowkatib/suggestion-hyperopt:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-hyperopt:v0.18.0
- algorithmName: grid
- image: docker.io/kubeflowkatib/suggestion-optuna:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-optuna:v0.18.0
- algorithmName: hyperband
- image: docker.io/kubeflowkatib/suggestion-hyperband:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-hyperband:v0.18.0
- algorithmName: bayesianoptimization
- image: docker.io/kubeflowkatib/suggestion-skopt:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-skopt:v0.18.0
- algorithmName: cmaes
- image: docker.io/kubeflowkatib/suggestion-goptuna:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-goptuna:v0.18.0
- algorithmName: sobol
- image: docker.io/kubeflowkatib/suggestion-goptuna:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-goptuna:v0.18.0
- algorithmName: multivariate-tpe
- image: docker.io/kubeflowkatib/suggestion-optuna:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-optuna:v0.18.0
- algorithmName: enas
- image: docker.io/kubeflowkatib/suggestion-enas:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-enas:v0.18.0
resources:
limits:
memory: 400Mi
- algorithmName: darts
- image: docker.io/kubeflowkatib/suggestion-darts:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-darts:v0.18.0
- algorithmName: pbt
- image: docker.io/kubeflowkatib/suggestion-pbt:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-pbt:v0.18.0
persistentVolumeClaimSpec:
accessModes:
- ReadWriteMany
@@ -56,4 +55,4 @@ runtime:
storage: 5Gi
earlyStoppings:
- algorithmName: medianstop
- image: docker.io/kubeflowkatib/earlystopping-medianstop:v0.17.0
+ image: ghcr.io/kubeflow/katib/earlystopping-medianstop:v0.18.0
diff --git a/charts/kubeflow/apps/katib/upstream/installs/katib-cert-manager/kustomization.yaml b/charts/kubeflow/apps/katib/upstream/installs/katib-cert-manager/kustomization.yaml
index 670b72d..d4296a1 100644
--- a/charts/kubeflow/apps/katib/upstream/installs/katib-cert-manager/kustomization.yaml
+++ b/charts/kubeflow/apps/katib/upstream/installs/katib-cert-manager/kustomization.yaml
@@ -20,15 +20,15 @@ resources:
# Cert-manager certificate for webhooks
- certificate.yaml
images:
- - name: docker.io/kubeflowkatib/katib-controller
- newName: docker.io/kubeflowkatib/katib-controller
- newTag: v0.17.0
- - name: docker.io/kubeflowkatib/katib-db-manager
- newName: docker.io/kubeflowkatib/katib-db-manager
- newTag: v0.17.0
- - name: docker.io/kubeflowkatib/katib-ui
- newName: docker.io/kubeflowkatib/katib-ui
- newTag: v0.17.0
+ - name: ghcr.io/kubeflow/katib/katib-controller
+ newName: ghcr.io/kubeflow/katib/katib-controller
+ newTag: v0.18.0
+ - name: ghcr.io/kubeflow/katib/katib-db-manager
+ newName: ghcr.io/kubeflow/katib/katib-db-manager
+ newTag: v0.18.0
+ - name: ghcr.io/kubeflow/katib/katib-ui
+ newName: ghcr.io/kubeflow/katib/katib-ui
+ newTag: v0.18.0
patchesStrategicMerge:
- patches/katib-cert-injection.yaml
diff --git a/charts/kubeflow/apps/katib/upstream/installs/katib-external-db/katib-config.yaml b/charts/kubeflow/apps/katib/upstream/installs/katib-external-db/katib-config.yaml
index 1773b01..f4d5226 100644
--- a/charts/kubeflow/apps/katib/upstream/installs/katib-external-db/katib-config.yaml
+++ b/charts/kubeflow/apps/katib/upstream/installs/katib-external-db/katib-config.yaml
@@ -12,44 +12,43 @@ init:
- PyTorchJob.v1.kubeflow.org
- MPIJob.v1.kubeflow.org
- XGBoostJob.v1.kubeflow.org
- - MXJob.v1.kubeflow.org
runtime:
metricsCollectors:
- kind: StdOut
- image: docker.io/kubeflowkatib/file-metrics-collector:v0.17.0
+ image: ghcr.io/kubeflow/katib/file-metrics-collector:v0.18.0
- kind: File
- image: docker.io/kubeflowkatib/file-metrics-collector:v0.17.0
+ image: ghcr.io/kubeflow/katib/file-metrics-collector:v0.18.0
- kind: TensorFlowEvent
- image: docker.io/kubeflowkatib/tfevent-metrics-collector:v0.17.0
+ image: ghcr.io/kubeflow/katib/tfevent-metrics-collector:v0.18.0
resources:
limits:
memory: 1Gi
suggestions:
- algorithmName: random
- image: docker.io/kubeflowkatib/suggestion-hyperopt:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-hyperopt:v0.18.0
- algorithmName: tpe
- image: docker.io/kubeflowkatib/suggestion-hyperopt:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-hyperopt:v0.18.0
- algorithmName: grid
- image: docker.io/kubeflowkatib/suggestion-optuna:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-optuna:v0.18.0
- algorithmName: hyperband
- image: docker.io/kubeflowkatib/suggestion-hyperband:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-hyperband:v0.18.0
- algorithmName: bayesianoptimization
- image: docker.io/kubeflowkatib/suggestion-skopt:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-skopt:v0.18.0
- algorithmName: cmaes
- image: docker.io/kubeflowkatib/suggestion-goptuna:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-goptuna:v0.18.0
- algorithmName: sobol
- image: docker.io/kubeflowkatib/suggestion-goptuna:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-goptuna:v0.18.0
- algorithmName: multivariate-tpe
- image: docker.io/kubeflowkatib/suggestion-optuna:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-optuna:v0.18.0
- algorithmName: enas
- image: docker.io/kubeflowkatib/suggestion-enas:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-enas:v0.18.0
resources:
limits:
memory: 400Mi
- algorithmName: darts
- image: docker.io/kubeflowkatib/suggestion-darts:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-darts:v0.18.0
- algorithmName: pbt
- image: docker.io/kubeflowkatib/suggestion-pbt:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-pbt:v0.18.0
persistentVolumeClaimSpec:
accessModes:
- ReadWriteMany
@@ -58,4 +57,4 @@ runtime:
storage: 5Gi
earlyStoppings:
- algorithmName: medianstop
- image: docker.io/kubeflowkatib/earlystopping-medianstop:v0.17.0
+ image: ghcr.io/kubeflow/katib/earlystopping-medianstop:v0.18.0
diff --git a/charts/kubeflow/apps/katib/upstream/installs/katib-external-db/kustomization.yaml b/charts/kubeflow/apps/katib/upstream/installs/katib-external-db/kustomization.yaml
index e8f9a95..3e96671 100644
--- a/charts/kubeflow/apps/katib/upstream/installs/katib-external-db/kustomization.yaml
+++ b/charts/kubeflow/apps/katib/upstream/installs/katib-external-db/kustomization.yaml
@@ -16,15 +16,15 @@ resources:
# Katib webhooks.
- ../../components/webhook/
images:
- - name: docker.io/kubeflowkatib/katib-controller
- newName: docker.io/kubeflowkatib/katib-controller
- newTag: v0.17.0
- - name: docker.io/kubeflowkatib/katib-db-manager
- newName: docker.io/kubeflowkatib/katib-db-manager
- newTag: v0.17.0
- - name: docker.io/kubeflowkatib/katib-ui
- newName: docker.io/kubeflowkatib/katib-ui
- newTag: v0.17.0
+ - name: ghcr.io/kubeflow/katib/katib-controller
+ newName: ghcr.io/kubeflow/katib/katib-controller
+ newTag: v0.18.0
+ - name: ghcr.io/kubeflow/katib/katib-db-manager
+ newName: ghcr.io/kubeflow/katib/katib-db-manager
+ newTag: v0.18.0
+ - name: ghcr.io/kubeflow/katib/katib-ui
+ newName: ghcr.io/kubeflow/katib/katib-ui
+ newTag: v0.18.0
patchesStrategicMerge:
- patches/db-manager.yaml
# Modify katib-mysql-secrets with parameters for the DB.
diff --git a/charts/kubeflow/apps/katib/upstream/installs/katib-leader-election/katib-config.yaml b/charts/kubeflow/apps/katib/upstream/installs/katib-leader-election/katib-config.yaml
index 31d51bb..5e4bcfa 100644
--- a/charts/kubeflow/apps/katib/upstream/installs/katib-leader-election/katib-config.yaml
+++ b/charts/kubeflow/apps/katib/upstream/installs/katib-leader-election/katib-config.yaml
@@ -13,44 +13,43 @@ init:
- PyTorchJob.v1.kubeflow.org
- MPIJob.v1.kubeflow.org
- XGBoostJob.v1.kubeflow.org
- - MXJob.v1.kubeflow.org
runtime:
metricsCollectors:
- kind: StdOut
- image: docker.io/kubeflowkatib/file-metrics-collector:v0.17.0
+ image: ghcr.io/kubeflow/katib/file-metrics-collector:v0.18.0
- kind: File
- image: docker.io/kubeflowkatib/file-metrics-collector:v0.17.0
+ image: ghcr.io/kubeflow/katib/file-metrics-collector:v0.18.0
- kind: TensorFlowEvent
- image: docker.io/kubeflowkatib/tfevent-metrics-collector:v0.17.0
+ image: ghcr.io/kubeflow/katib/tfevent-metrics-collector:v0.18.0
resources:
limits:
memory: 1Gi
suggestions:
- algorithmName: random
- image: docker.io/kubeflowkatib/suggestion-hyperopt:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-hyperopt:v0.18.0
- algorithmName: tpe
- image: docker.io/kubeflowkatib/suggestion-hyperopt:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-hyperopt:v0.18.0
- algorithmName: grid
- image: docker.io/kubeflowkatib/suggestion-optuna:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-optuna:v0.18.0
- algorithmName: hyperband
- image: docker.io/kubeflowkatib/suggestion-hyperband:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-hyperband:v0.18.0
- algorithmName: bayesianoptimization
- image: docker.io/kubeflowkatib/suggestion-skopt:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-skopt:v0.18.0
- algorithmName: cmaes
- image: docker.io/kubeflowkatib/suggestion-goptuna:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-goptuna:v0.18.0
- algorithmName: sobol
- image: docker.io/kubeflowkatib/suggestion-goptuna:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-goptuna:v0.18.0
- algorithmName: multivariate-tpe
- image: docker.io/kubeflowkatib/suggestion-optuna:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-optuna:v0.18.0
- algorithmName: enas
- image: docker.io/kubeflowkatib/suggestion-enas:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-enas:v0.18.0
resources:
limits:
memory: 400Mi
- algorithmName: darts
- image: docker.io/kubeflowkatib/suggestion-darts:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-darts:v0.18.0
- algorithmName: pbt
- image: docker.io/kubeflowkatib/suggestion-pbt:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-pbt:v0.18.0
persistentVolumeClaimSpec:
accessModes:
- ReadWriteMany
@@ -59,4 +58,4 @@ runtime:
storage: 5Gi
earlyStoppings:
- algorithmName: medianstop
- image: docker.io/kubeflowkatib/earlystopping-medianstop:v0.17.0
+ image: ghcr.io/kubeflow/katib/earlystopping-medianstop:v0.18.0
diff --git a/charts/kubeflow/apps/katib/upstream/installs/katib-openshift/katib-config.yaml b/charts/kubeflow/apps/katib/upstream/installs/katib-openshift/katib-config.yaml
index 08464d1..a97d288 100644
--- a/charts/kubeflow/apps/katib/upstream/installs/katib-openshift/katib-config.yaml
+++ b/charts/kubeflow/apps/katib/upstream/installs/katib-openshift/katib-config.yaml
@@ -10,44 +10,43 @@ init:
- PyTorchJob.v1.kubeflow.org
- MPIJob.v1.kubeflow.org
- XGBoostJob.v1.kubeflow.org
- - MXJob.v1.kubeflow.org
runtime:
metricsCollectors:
- kind: StdOut
- image: docker.io/kubeflowkatib/file-metrics-collector:v0.17.0
+ image: ghcr.io/kubeflow/katib/file-metrics-collector:v0.18.0
- kind: File
- image: docker.io/kubeflowkatib/file-metrics-collector:v0.17.0
+ image: ghcr.io/kubeflow/katib/file-metrics-collector:v0.18.0
- kind: TensorFlowEvent
- image: docker.io/kubeflowkatib/tfevent-metrics-collector:v0.17.0
+ image: ghcr.io/kubeflow/katib/tfevent-metrics-collector:v0.18.0
resources:
limits:
memory: 1Gi
suggestions:
- algorithmName: random
- image: docker.io/kubeflowkatib/suggestion-hyperopt:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-hyperopt:v0.18.0
- algorithmName: tpe
- image: docker.io/kubeflowkatib/suggestion-hyperopt:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-hyperopt:v0.18.0
- algorithmName: grid
- image: docker.io/kubeflowkatib/suggestion-optuna:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-optuna:v0.18.0
- algorithmName: hyperband
- image: docker.io/kubeflowkatib/suggestion-hyperband:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-hyperband:v0.18.0
- algorithmName: bayesianoptimization
- image: docker.io/kubeflowkatib/suggestion-skopt:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-skopt:v0.18.0
- algorithmName: cmaes
- image: docker.io/kubeflowkatib/suggestion-goptuna:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-goptuna:v0.18.0
- algorithmName: sobol
- image: docker.io/kubeflowkatib/suggestion-goptuna:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-goptuna:v0.18.0
- algorithmName: multivariate-tpe
- image: docker.io/kubeflowkatib/suggestion-optuna:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-optuna:v0.18.0
- algorithmName: enas
- image: docker.io/kubeflowkatib/suggestion-enas:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-enas:v0.18.0
resources:
limits:
memory: 400Mi
- algorithmName: darts
- image: docker.io/kubeflowkatib/suggestion-darts:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-darts:v0.18.0
- algorithmName: pbt
- image: docker.io/kubeflowkatib/suggestion-pbt:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-pbt:v0.18.0
persistentVolumeClaimSpec:
accessModes:
- ReadWriteMany
@@ -56,4 +55,4 @@ runtime:
storage: 5Gi
earlyStoppings:
- algorithmName: medianstop
- image: docker.io/kubeflowkatib/earlystopping-medianstop:v0.17.0
+ image: ghcr.io/kubeflow/katib/earlystopping-medianstop:v0.18.0
diff --git a/charts/kubeflow/apps/katib/upstream/installs/katib-openshift/kustomization.yaml b/charts/kubeflow/apps/katib/upstream/installs/katib-openshift/kustomization.yaml
index f98c963..f384b55 100644
--- a/charts/kubeflow/apps/katib/upstream/installs/katib-openshift/kustomization.yaml
+++ b/charts/kubeflow/apps/katib/upstream/installs/katib-openshift/kustomization.yaml
@@ -28,15 +28,15 @@ resources:
# Katib webhooks.
- ../../components/webhook/
images:
- - name: docker.io/kubeflowkatib/katib-controller
- newName: docker.io/kubeflowkatib/katib-controller
- newTag: v0.17.0
- - name: docker.io/kubeflowkatib/katib-db-manager
- newName: docker.io/kubeflowkatib/katib-db-manager
- newTag: v0.17.0
- - name: docker.io/kubeflowkatib/katib-ui
- newName: docker.io/kubeflowkatib/katib-ui
- newTag: v0.17.0
+ - name: ghcr.io/kubeflow/katib/katib-controller
+ newName: ghcr.io/kubeflow/katib/katib-controller
+ newTag: v0.18.0
+ - name: ghcr.io/kubeflow/katib/katib-db-manager
+ newName: ghcr.io/kubeflow/katib/katib-db-manager
+ newTag: v0.18.0
+ - name: ghcr.io/kubeflow/katib/katib-ui
+ newName: ghcr.io/kubeflow/katib/katib-ui
+ newTag: v0.18.0
patchesJson6902:
# Annotate Service to delegate TLS-secret generation to OpenShift service controller
diff --git a/charts/kubeflow/apps/katib/upstream/installs/katib-standalone-postgres/katib-config.yaml b/charts/kubeflow/apps/katib/upstream/installs/katib-standalone-postgres/katib-config.yaml
index 1773b01..f4d5226 100644
--- a/charts/kubeflow/apps/katib/upstream/installs/katib-standalone-postgres/katib-config.yaml
+++ b/charts/kubeflow/apps/katib/upstream/installs/katib-standalone-postgres/katib-config.yaml
@@ -12,44 +12,43 @@ init:
- PyTorchJob.v1.kubeflow.org
- MPIJob.v1.kubeflow.org
- XGBoostJob.v1.kubeflow.org
- - MXJob.v1.kubeflow.org
runtime:
metricsCollectors:
- kind: StdOut
- image: docker.io/kubeflowkatib/file-metrics-collector:v0.17.0
+ image: ghcr.io/kubeflow/katib/file-metrics-collector:v0.18.0
- kind: File
- image: docker.io/kubeflowkatib/file-metrics-collector:v0.17.0
+ image: ghcr.io/kubeflow/katib/file-metrics-collector:v0.18.0
- kind: TensorFlowEvent
- image: docker.io/kubeflowkatib/tfevent-metrics-collector:v0.17.0
+ image: ghcr.io/kubeflow/katib/tfevent-metrics-collector:v0.18.0
resources:
limits:
memory: 1Gi
suggestions:
- algorithmName: random
- image: docker.io/kubeflowkatib/suggestion-hyperopt:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-hyperopt:v0.18.0
- algorithmName: tpe
- image: docker.io/kubeflowkatib/suggestion-hyperopt:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-hyperopt:v0.18.0
- algorithmName: grid
- image: docker.io/kubeflowkatib/suggestion-optuna:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-optuna:v0.18.0
- algorithmName: hyperband
- image: docker.io/kubeflowkatib/suggestion-hyperband:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-hyperband:v0.18.0
- algorithmName: bayesianoptimization
- image: docker.io/kubeflowkatib/suggestion-skopt:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-skopt:v0.18.0
- algorithmName: cmaes
- image: docker.io/kubeflowkatib/suggestion-goptuna:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-goptuna:v0.18.0
- algorithmName: sobol
- image: docker.io/kubeflowkatib/suggestion-goptuna:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-goptuna:v0.18.0
- algorithmName: multivariate-tpe
- image: docker.io/kubeflowkatib/suggestion-optuna:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-optuna:v0.18.0
- algorithmName: enas
- image: docker.io/kubeflowkatib/suggestion-enas:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-enas:v0.18.0
resources:
limits:
memory: 400Mi
- algorithmName: darts
- image: docker.io/kubeflowkatib/suggestion-darts:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-darts:v0.18.0
- algorithmName: pbt
- image: docker.io/kubeflowkatib/suggestion-pbt:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-pbt:v0.18.0
persistentVolumeClaimSpec:
accessModes:
- ReadWriteMany
@@ -58,4 +57,4 @@ runtime:
storage: 5Gi
earlyStoppings:
- algorithmName: medianstop
- image: docker.io/kubeflowkatib/earlystopping-medianstop:v0.17.0
+ image: ghcr.io/kubeflow/katib/earlystopping-medianstop:v0.18.0
diff --git a/charts/kubeflow/apps/katib/upstream/installs/katib-standalone-postgres/kustomization.yaml b/charts/kubeflow/apps/katib/upstream/installs/katib-standalone-postgres/kustomization.yaml
index fa70306..7e7a105 100644
--- a/charts/kubeflow/apps/katib/upstream/installs/katib-standalone-postgres/kustomization.yaml
+++ b/charts/kubeflow/apps/katib/upstream/installs/katib-standalone-postgres/kustomization.yaml
@@ -18,15 +18,15 @@ resources:
# Katib webhooks.
- ../../components/webhook/
images:
- - name: docker.io/kubeflowkatib/katib-controller
- newName: docker.io/kubeflowkatib/katib-controller
- newTag: v0.17.0
- - name: docker.io/kubeflowkatib/katib-db-manager
- newName: docker.io/kubeflowkatib/katib-db-manager
- newTag: v0.17.0
- - name: docker.io/kubeflowkatib/katib-ui
- newName: docker.io/kubeflowkatib/katib-ui
- newTag: v0.17.0
+ - name: ghcr.io/kubeflow/katib/katib-controller
+ newName: ghcr.io/kubeflow/katib/katib-controller
+ newTag: v0.18.0
+ - name: ghcr.io/kubeflow/katib/katib-db-manager
+ newName: ghcr.io/kubeflow/katib/katib-db-manager
+ newTag: v0.18.0
+ - name: ghcr.io/kubeflow/katib/katib-ui
+ newName: ghcr.io/kubeflow/katib/katib-ui
+ newTag: v0.18.0
patchesJson6902:
- target:
group: apps
diff --git a/charts/kubeflow/apps/katib/upstream/installs/katib-standalone/katib-config.yaml b/charts/kubeflow/apps/katib/upstream/installs/katib-standalone/katib-config.yaml
index 1773b01..da9736f 100644
--- a/charts/kubeflow/apps/katib/upstream/installs/katib-standalone/katib-config.yaml
+++ b/charts/kubeflow/apps/katib/upstream/installs/katib-standalone/katib-config.yaml
@@ -1,4 +1,3 @@
----
apiVersion: config.kubeflow.org/v1beta1
kind: KatibConfig
init:
@@ -12,44 +11,43 @@ init:
- PyTorchJob.v1.kubeflow.org
- MPIJob.v1.kubeflow.org
- XGBoostJob.v1.kubeflow.org
- - MXJob.v1.kubeflow.org
runtime:
metricsCollectors:
- kind: StdOut
- image: docker.io/kubeflowkatib/file-metrics-collector:v0.17.0
+ image: ghcr.io/kubeflow/katib/file-metrics-collector:v0.18.0
- kind: File
- image: docker.io/kubeflowkatib/file-metrics-collector:v0.17.0
+ image: ghcr.io/kubeflow/katib/file-metrics-collector:v0.18.0
- kind: TensorFlowEvent
- image: docker.io/kubeflowkatib/tfevent-metrics-collector:v0.17.0
+ image: ghcr.io/kubeflow/katib/tfevent-metrics-collector:v0.18.0
resources:
limits:
memory: 1Gi
suggestions:
- algorithmName: random
- image: docker.io/kubeflowkatib/suggestion-hyperopt:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-hyperopt:v0.18.0
- algorithmName: tpe
- image: docker.io/kubeflowkatib/suggestion-hyperopt:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-hyperopt:v0.18.0
- algorithmName: grid
- image: docker.io/kubeflowkatib/suggestion-optuna:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-optuna:v0.18.0
- algorithmName: hyperband
- image: docker.io/kubeflowkatib/suggestion-hyperband:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-hyperband:v0.18.0
- algorithmName: bayesianoptimization
- image: docker.io/kubeflowkatib/suggestion-skopt:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-skopt:v0.18.0
- algorithmName: cmaes
- image: docker.io/kubeflowkatib/suggestion-goptuna:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-goptuna:v0.18.0
- algorithmName: sobol
- image: docker.io/kubeflowkatib/suggestion-goptuna:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-goptuna:v0.18.0
- algorithmName: multivariate-tpe
- image: docker.io/kubeflowkatib/suggestion-optuna:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-optuna:v0.18.0
- algorithmName: enas
- image: docker.io/kubeflowkatib/suggestion-enas:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-enas:v0.18.0
resources:
limits:
memory: 400Mi
- algorithmName: darts
- image: docker.io/kubeflowkatib/suggestion-darts:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-darts:v0.18.0
- algorithmName: pbt
- image: docker.io/kubeflowkatib/suggestion-pbt:v0.17.0
+ image: ghcr.io/kubeflow/katib/suggestion-pbt:v0.18.0
persistentVolumeClaimSpec:
accessModes:
- ReadWriteMany
@@ -58,4 +56,4 @@ runtime:
storage: 5Gi
earlyStoppings:
- algorithmName: medianstop
- image: docker.io/kubeflowkatib/earlystopping-medianstop:v0.17.0
+ image: ghcr.io/kubeflow/katib/earlystopping-medianstop:v0.18.0
diff --git a/charts/kubeflow/apps/katib/upstream/installs/katib-standalone/kustomization.yaml b/charts/kubeflow/apps/katib/upstream/installs/katib-standalone/kustomization.yaml
index 146a5e6..9882be6 100644
--- a/charts/kubeflow/apps/katib/upstream/installs/katib-standalone/kustomization.yaml
+++ b/charts/kubeflow/apps/katib/upstream/installs/katib-standalone/kustomization.yaml
@@ -18,15 +18,15 @@ resources:
# Katib webhooks.
- ../../components/webhook/
images:
- - name: docker.io/kubeflowkatib/katib-controller
- newName: docker.io/kubeflowkatib/katib-controller
- newTag: v0.17.0
- - name: docker.io/kubeflowkatib/katib-db-manager
- newName: docker.io/kubeflowkatib/katib-db-manager
- newTag: v0.17.0
- - name: docker.io/kubeflowkatib/katib-ui
- newName: docker.io/kubeflowkatib/katib-ui
- newTag: v0.17.0
+ - name: ghcr.io/kubeflow/katib/katib-controller
+ newName: ghcr.io/kubeflow/katib/katib-controller
+ newTag: v0.18.0
+ - name: ghcr.io/kubeflow/katib/katib-db-manager
+ newName: ghcr.io/kubeflow/katib/katib-db-manager
+ newTag: v0.18.0
+ - name: ghcr.io/kubeflow/katib/katib-ui
+ newName: ghcr.io/kubeflow/katib/katib-ui
+ newTag: v0.18.0
configMapGenerator:
- name: katib-config
behavior: create
diff --git a/charts/kubeflow/apps/katib/upstream/installs/katib-with-kubeflow/kustomization.yaml b/charts/kubeflow/apps/katib/upstream/installs/katib-with-kubeflow/kustomization.yaml
index 621651b..a1ab26a 100644
--- a/charts/kubeflow/apps/katib/upstream/installs/katib-with-kubeflow/kustomization.yaml
+++ b/charts/kubeflow/apps/katib/upstream/installs/katib-with-kubeflow/kustomization.yaml
@@ -9,15 +9,15 @@ resources:
- ui-virtual-service.yaml
- istio-authorizationpolicy.yaml
images:
- - name: docker.io/kubeflowkatib/katib-controller
- newName: docker.io/kubeflowkatib/katib-controller
- newTag: v0.17.0
- - name: docker.io/kubeflowkatib/katib-db-manager
- newName: docker.io/kubeflowkatib/katib-db-manager
- newTag: v0.17.0
- - name: docker.io/kubeflowkatib/katib-ui
- newName: docker.io/kubeflowkatib/katib-ui
- newTag: v0.17.0
+ - name: ghcr.io/kubeflow/katib/katib-controller
+ newName: ghcr.io/kubeflow/katib/katib-controller
+ newTag: v0.18.0
+ - name: ghcr.io/kubeflow/katib/katib-db-manager
+ newName: ghcr.io/kubeflow/katib/katib-db-manager
+ newTag: v0.18.0
+ - name: ghcr.io/kubeflow/katib/katib-ui
+ newName: ghcr.io/kubeflow/katib/katib-ui
+ newTag: v0.18.0
patchesStrategicMerge:
- patches/remove-namespace.yaml
diff --git a/charts/kubeflow/apps/katib/upstream/installs/katib-with-kubeflow/patches/istio-sidecar-injection.yaml b/charts/kubeflow/apps/katib/upstream/installs/katib-with-kubeflow/patches/istio-sidecar-injection.yaml
index b8a98cf..3164977 100644
--- a/charts/kubeflow/apps/katib/upstream/installs/katib-with-kubeflow/patches/istio-sidecar-injection.yaml
+++ b/charts/kubeflow/apps/katib/upstream/installs/katib-with-kubeflow/patches/istio-sidecar-injection.yaml
@@ -6,5 +6,5 @@ metadata:
spec:
template:
metadata:
- annotations:
+ labels:
sidecar.istio.io/inject: "true"
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/Makefile b/charts/kubeflow/apps/kfp-tekton/upstream/Makefile
deleted file mode 100644
index 5aac8d7..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/Makefile
+++ /dev/null
@@ -1,23 +0,0 @@
-# This makefile is a quick test to verify all manifests can be hydrated.
-
-test: aws azure dev gcp platform-agnostic platform-agnostic-multi-user
-
-aws: FORCE
- kubectl kustomize env/aws
-
-azure: FORCE
- kubectl kustomize env/azure
-
-dev: FORCE
- kubectl kustomize env/dev
-
-gcp: FORCE
- kubectl kustomize env/gcp
-
-platform-agnostic: FORCE
- kubectl kustomize env/platform-agnostic
-
-platform-agnostic-multi-user: FORCE
- kustomize build --load-restrictor LoadRestrictionsNone env/platform-agnostic-multi-user
-
-FORCE: ;
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/OWNERS b/charts/kubeflow/apps/kfp-tekton/upstream/OWNERS
deleted file mode 100644
index 6cbeef6..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/OWNERS
+++ /dev/null
@@ -1,6 +0,0 @@
-approvers:
- - Tomcli
- - yhwang
-reviewers:
- - Tomcli
- - yhwang
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/README.md b/charts/kubeflow/apps/kfp-tekton/upstream/README.md
deleted file mode 100644
index c7e4466..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/README.md
+++ /dev/null
@@ -1,103 +0,0 @@
-# Install Kubeflow Pipelines Standalone using Kustomize Manifests
-
-This folder contains [Kubeflow Pipelines Standalone](https://www.kubeflow.org/docs/components/pipelines/installation/standalone-deployment/)
-Kustomize manifests.
-
-Kubeflow Pipelines Standalone is one option to install Kubeflow Pipelines. You can review all other options in
-[Installation Options for Kubeflow Pipelines](https://www.kubeflow.org/docs/components/pipelines/installation/overview/).
-
-## Install options for different envs
-
-To install Kubeflow Pipelines Standalone, follow [Kubeflow Pipelines Standalone Deployment documentation](https://www.kubeflow.org/docs/components/pipelines/installation/standalone-deployment/).
-
-There are environment specific installation instructions not covered in the official deployment documentation, they are listed below.
-
-### (env/platform-agnostic) install on any Kubernetes cluster
-
-Install:
-
-```bash
-KFP_ENV=platform-agnostic
-kubectl apply -k cluster-scoped-resources/
-kubectl wait crd/applications.app.k8s.io --for condition=established --timeout=60s
-kubectl apply -k "env/${KFP_ENV}/"
-kubectl wait pods -l application-crd-id=kubeflow-pipelines -n kubeflow --for condition=Ready --timeout=1800s
-kubectl port-forward -n kubeflow svc/ml-pipeline-ui 8080:80
-```
-
-Now you can access Kubeflow Pipelines UI in your browser by .
-
-Customize:
-
-There are two variations for platform-agnostic that uses different [argo workflow executors](https://argoproj.github.io/argo-workflows/workflow-executors/):
-
-* env/platform-agnostic-emissary
-* env/platform-agnostic-pns
-
-You can install them by changing `KFP_ENV` in above instructions to the variation you want.
-
-Data:
-
-Application data are persisted in in-cluster PersistentVolumeClaim storage.
-
-### (env/gcp) install on Google Cloud with Cloud Storage and Cloud SQL
-
-Cloud Storage and Cloud SQL are better for operating a production cluster.
-
-Refer to [Google Cloud Instructions](sample/README.md) for installation.
-
-### (env/aws) install on AWS with S3 and RDS MySQL
-
-S3 and RDS MySQL are better for operating a production cluster.
-
-Refer to [AWS Instructions](env/aws/README.md) for installation.
-
-Note: Community maintains a different opinionated installation manifests for AWS, refer to [e2fyi/kubeflow-aws](https://github.com/e2fyi/kubeflow-aws/tree/master/pipelines).
-
-## Uninstall
-
-If the installation is based on CloudSQL/GCS, after the uninstall, the data is still there,
-reinstall a newer version can reuse the data.
-
-```bash
-### 1. namespace scoped
-# Depends on how you installed it:
-kubectl kustomize env/platform-agnostic | kubectl delete -f -
-# or
-kubectl kustomize env/dev | kubectl delete -f -
-# or
-kubectl kustomize env/gcp | kubectl delete -f -
-# or
-kubectl delete applications/pipeline -n kubeflow
-
-### 2. cluster scoped
-kubectl delete -k cluster-scoped-resources/
-```
-
-## Folder Structure
-
-### Overview
-
-* User facing manifest entrypoints are `cluster-scoped-resources` package and `env/` package.
- * `cluster-scoped-resources` should collect all cluster-scoped resources.
- * `env/` should collect env specific namespace-scoped resources.
- * Note, for multi-user envs, they already included cluster-scoped resources.
-* KFP core components live in `base/` folders.
- * If a component requires cluster-scoped resources, it should have a folder inside named `cluster-scoped` with related resources, but note that `base//kustomization.yaml` shouldn't include the `cluster-scoped` folder. `cluster-scoped` folders should be collected by top level `cluster-scoped-resources` folder.
-* KFP core installations are in `base/installs/`, they only include the core KFP components, not third party ones.
-* Third party components live in `third-party/` folders.
-
-### For direct deployments
-
-Env specific overlays live in `env/` folders, they compose above components to get ready for directly deploying.
-
-### For downstream consumers
-
-Please compose `base/installs/` and third party dependencies based on your own requirements.
-
-### Rationale
-
-Constraints for namespaced installation we need to comply with (that drove above structure):
-
-* CRDs must be applied separately, because if we apply CRs in the same `kubectl apply` command, the CRD may not have been accepted by k8s api server (e.g. Application CRD).
-* [A Kubeflow 1.0 constraint](https://github.com/kubeflow/pipelines/issues/2884#issuecomment-577158715) is that we should separate cluster scoped resources from namespace scoped resources, because sometimes different roles are required to deploy them. Cluster scoped resources usually need a cluster admin role, while namespaced resources can be deployed by individual teams managing a namespace.
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/application/application.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/application/application.yaml
deleted file mode 100644
index 1af2f9b..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/application/application.yaml
+++ /dev/null
@@ -1,49 +0,0 @@
-# Note, this application.yaml is not included by default for most environments.
-
-apiVersion: app.k8s.io/v1beta1
-kind: Application
-metadata:
- name: $(kfp-app-name)
- annotations:
- kubernetes-engine.cloud.google.com/icon: >-
- data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADMAAAAyCAYAAADx/eOPAAALuUlEQVRogd2afWxd9XnHP99bK4pS3yhiGUIRiiJUVVVqbq8ppdR20ibqpuIMtDRkUYERp29J57gMZVuxsrZiK7oZXVv5re1AiOuoG+N1DMkuytprsGPEVMouxqQZJVHEWIdQlGVxZlmZdb/747zcc869jpMO+seOdPz7nd/L83tev89zzjX8Bq795Rq9o17zXp+Tey+Ijkyboela29DRWkhffyT733pH/Z3este9F2cC6N0kNjxtjD+FdRD8UF9X7u97y7UbQFPAivC0BdllS381slun3s3z3xVhhqeds90tqR/oMB7u68z19ZZra0E/l1if3WOziPx3skrDPTr+bvDxfxImEIJbgX6gGBJ7EfHJX/ySReDHwO9KYAenyWCMFKw21GSeslwa2Z17+TcuzPBRr7B8m6Df5oOJqdPAR/u6cm/2lmv3At+IT3GiXZqbcaxSLsfRoTsvn7XL2jE87ZXGnwf+VGiDY86ETM1wU1+XjvSW/RlgTJADQ2QaCZKWcX1/aDIcjE8i3SdzZLjn0lm8pJXD02417BM+gLmq2Rqjr/d16Vu95dp6wc8Ra5O8NrPIcoZCvIR1H+KZkd2qLcfnRYUZOuorJO+3uQt0RerolGYZR7r5+C9ZATwPviGyQprd6Liszy3bnwVKwGMjPbnFyxJmeNpX2T4gaR/QmmSpyYZTho/2depMb9k/kNh3KawuJ1bWauHzUcyXRpZAv5Zmg7aHBLcmNN9ECAFeAO3s69KZ3nLtDuF9dnBs0IT9JO24rbPb0JfP2syCZpFfE5q1mRWcvlgMNcwMTRq9z/+OWXdx4AGjvX1deqC37DbwPwOrMgsufol5mWMWs1ivEbjTrOCtLNNb+udygqsNbUBtopR/NkuuwTJ6Hxsw67KSuvH5MPDA/nJttfGTdUFCMUlp/ALwOtIs9muBxpnFnBzuSQf21oP/BbXclVvumWuTaDN8WNBm2GizJkxPM0CDMA2WGZ72bbb/Njue2TRj9Il/PcG87SeBz4ZTNaSTsmctHcO8SqDp14d7dCFLZ2v/3OpQ023Ah4n65kohvETUCdcsfmuilD+bpNdgGZvOODuHqYGIVGCec9g7+7o031v2jaBTiD0ysxbHRnZrPktzyz1zK7f0z10nh5pWwLRhvZro1KqznVJhNB8UyDeSsU4zAOiIXV1OuEqQ2AR79nflXgcY6dGLwIvR8q39cy1b+uc2Emo6dI824BpMSxz8iVhy4m/2WiYHdV5UmOHp2mpwm52ESCdwRn+9v0tPAWzpn9sAFAQbMdc60PaHsFZEWd9uxk4z8G3seykECfObTEd2KmuZG4CWyLXkYLMwtiYt+hMsTUdAEZQzjs9apv66SHJRk73ZjBQ+iRu29s+1VEr5OImmXs4MHUahVoLWgK23wbv6OrU4OulcuHYehWsVHhpXwpE2FNRayTszX2cwDpQEzTB+QvrJHCXUaigk+c++aXZiE98YmUVgV19X7u3ypH/fgfUA5h2usY2jNjmWoGVn50nvC9T2NviA5OPBGPW91OlG+0Xa1WJhhqadk3WjpKCilQIQFP19XZocnfIHgIeFWyNh6goXyX6gdNWfU8aJ5tNjEheAHZVS/ruGj0s8k6VPhh6ms6kwgoLl1aGuCEuSpwXfHZ2qrTJ+HHkNCpOjmbdFcEcGUIhUSj/H65rPO6j+766U8i/QXV0z8cqJc4btwF8AtWgtMb1wj+j41Df/s1EYQwdEDiqM3hDes9quGY3IKoYOvCrU7HlCoZtEWapPkzEpsU8uq8b36a6uBqaBv5l45URLpZT/pmGH8LnkvlAdAOt1oeXqRsuYTjlEMJiXvWN/Z+5szfqioKcOKo7qr/nAEesKiOyv2A/q88rOx8+8bPhK5dUTAA8jbUT6MuKnbKteNVHKP23xCeD1LC0F2TWOmzoAKEiWxmC+sr8rN1OerF2HGaqXFcZhDWaYj11S4ZxcXxVqyKqPZOeNTwM7Jkr5BeDPQJ8NFQaoC/gZ26rXT5TyxxAfRx6P94d0gU0pYYama+tsbwix/AHM4fKUrwAeB68kRJ5AZsWWieGTjLipsVCgrKCwKHF7pZQ/RXf104j76i4ZMmquxkzRXb2zUsqfxdxsfCiA70hRjZbpCDHmJcRdeZPDHkVck0Ul5PeHZ81DgHxKtglXaHCxVN9fr5TyR9hW3QA8Amqp5526SyKtBEbZVv1eZeZkbqKU7xfsFJwPqRW29s+11oUxnUhnkHf2dWoB+R5Jv5dNaGHh1wog8d/ZAI+0GgVpFPTp4AfJT2Hup7u6EvMk0tpkboutEz0HMPzHyD+mu3pFpZR/Aug0Pgm0RLkvFzLWYfjDvs7cqfKUt2LuXTLhue5mdWhVDJdEzxDDcRKawceN9lRePVkDfgBcR/LKVqNpz/s08DO6q4VKKT8j8zHgJ1HyzA1P11YZjfV1arw85auBR4RalDB5lEjDKi0CgPPphKZ0QiNRwUQeg88B2ydKreew9yH1NCxe/r4GaZpt1Vsrh/JnDDcBLwPkbLVgf6s86RXYj4KvtJKJM8KsGLkSlsmUL6mSg1RJY1xD7KmU8sfprnYgBqJsGVsiEfupsca7FfMo26p/OfHKiVqllB8HyPV16VxfV66G/G1QBwY5xvCgTT7X3/MTaBbFVr0fJvqw2ASZ+yul/FN0V68CHsesiDl3UopM3CwhDZDD/Dnwj3S/sjoYAMqTtc1YX02jVqYOiuuqsAKIkqZCfFIz/IrfFY8gDrKt2gI8irSuwQezyTeNaOl+6qYb+fpYGKEXJE9GSTObK5ItrheaLHE5/XRKcHul+kYN8x2kzWlLNNuVtUqibzKW5CBjxUoszO7NWrS1E/xWvMeJjck2WQHEKJeMD+qH4gWCSvg00m3AVxv5TMRKsp9Cs0Q/Ka/1BOZQNBSXMz2b9Q5oO9JCKgkqg2aKofl8uvTPeE1w3t5KKf8y26pFxINhLRa5R9JV6huT/aZuFu7Ds+A9jBdj+VIvZz2b9BL2Xi5yJQEgUFqinI9SZBDx358o5Q/HiRGtquOEmxJu6DcbC/afQWxnvHg+Odrwm2bP5txh5OEYjOM3vaiu8qqHJw1mPmK/Xs7HJf0LRncDMF5cAL6NWUxDrX/duwbczljxjSzvTX+gtXU3MBlrRCltrsxBTgorACKrRGf5bczOiVLrhUL74B2F9oHVjBd/iLwTWEhr+CIWaLYumDjIWLHha+aSwvRs1iJmJ9Kb9ZJRETS3ACsMC8i1ZNwgXZDYWTmU/1WhfeAW8Cjo+UL7wDrGik8jfid0kYz/Z2ODepv+GPIY+FAznpcUJhAo9w5mh81CFtEsWieCTzwXkogmfKBSyh8ttA98EDPqoPouYqYLxYEPMVY8itmEeTM+KEaqZhVAkiPPIL6QDPhLFiYQSC9J7M3mGlF/24zWSvwIM1xoH2gF/sFiTcSPxQakqUJxsIPx4jGCr0AzCUYTbROJ7DPAdsbSAX9ZwgDs3qTDiMGUOxF/1DgfekLVsPf0sw8DPARsDNwy8iYBXov4p0L7wC2MF99CfBJ4rqmbJbO/qYE+x1jx5HK8Xtp/aFgHDM/FX+RM9FFjHjjj4NV3HvlPsP4g+SqQgm6zCuvJQnHgi4wVz2JuAj8RnLGEVaCf8Y8cuRQ2L0mYEBB2Gb8ZHKD4NQBx+0Qpf7LQPrAVVGqiiWTpCcEn4QcLxcF7C7+aXMDahT1YX5IS5DHE/ZfC4yULEwr0DtIOWwuuvwZ8rVLKP1soDqzHPGJoyRao9b4SXiQQ30A8eO1/PJ8D7gK+BtQSJcQM8AXGlg747LUkmi91lad8J3CuZ5OeBii0D64ET2FdH1N0omWJvgLPkvwM8LmZf7lrnm3VO4CHsM4DH2P8I8vGSfK67P9q8v9wWPAcQLH4PbBHbK6Pq+3M9+Ml+6FL2dyC+WmhOLiWseKPMDeDd12uIPBrWCZ5Xds++AHsAwGlBKnoB5747c2J+aSJEuvRL8CDv/2Zz+cqh/LL/gPD//vrfwFjcI5oX6jDBwAAAABJRU5ErkJggg==
- marketplace.cloud.google.com/deploy-info: '{"partner_id": "google-cloud-ai-platform", "product_id": "kubeflow-pipelines", "partner_name": "Google Cloud AI Platform"}'
-spec:
- addOwnerRef: true
- selector:
- matchLabels:
- application-crd-id: kubeflow-pipelines
- descriptor:
- version: $(kfp-app-version)
- type: Kubeflow Pipelines
- description: |-
- Reusable end-to-end ML workflow
- maintainers:
- - name: Google Cloud AI Platform
- url: https://cloud.google.com/ai-platform/
- - name: Kubeflow Pipelines
- url: https://github.com/kubeflow/pipelines
- links:
- - description: 'Kubeflow Pipelines Documentation'
- url: https://www.kubeflow.org/docs/pipelines/
- notes: |-
- Please go to [Hosted Kubeflow Pipelines Console](https://console.cloud.google.com/ai-platform/pipelines/clusters).
-
- info:
- - name: Console
- value: 'https://console.cloud.google.com/ai-platform/pipelines/clusters'
- componentKinds:
- - group: v1
- kind: ServiceAccount
- - group: rbac.authorization.k8s.io/v1
- kind: Role
- - group: rbac.authorization.k8s.io/v1
- kind: RoleBinding
- - group: v1
- kind: Service
- - group: v1
- kind: ConfigMap
- - group: v1
- kind: Secret
- - group: apps/v1
- kind: Deployment
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/cache-deployer/cache-deployer-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/cache-deployer/cache-deployer-deployment.yaml
deleted file mode 100644
index d4c3ae3..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/cache-deployer/cache-deployer-deployment.yaml
+++ /dev/null
@@ -1,29 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: cache-deployer-deployment
- labels:
- app: cache-deployer
-spec:
- replicas: 1
- selector:
- matchLabels:
- app: cache-deployer
- strategy:
- type: Recreate
- template:
- metadata:
- labels:
- app: cache-deployer
- spec:
- containers:
- - name: main
- image: gcr.io/ml-pipeline/cache-deployer:dummy
- imagePullPolicy: Always
- env:
- - name: NAMESPACE_TO_WATCH
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- serviceAccountName: kubeflow-pipelines-cache-deployer-sa
- restartPolicy: Always
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/cache-deployer/cache-deployer-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/cache-deployer/cache-deployer-role.yaml
deleted file mode 100644
index f853a32..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/cache-deployer/cache-deployer-role.yaml
+++ /dev/null
@@ -1,17 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata:
- labels:
- app: kubeflow-pipelines-cache-deployer-role
- name: kubeflow-pipelines-cache-deployer-role
-rules:
-- apiGroups:
- - ""
- resources:
- - secrets
- verbs:
- - create
- - delete
- - get
- - patch
- - list
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/cache-deployer/cache-deployer-rolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/cache-deployer/cache-deployer-rolebinding.yaml
deleted file mode 100644
index 824a957..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/cache-deployer/cache-deployer-rolebinding.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: kubeflow-pipelines-cache-deployer-rolebinding
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: kubeflow-pipelines-cache-deployer-role
-subjects:
-- kind: ServiceAccount
- name: kubeflow-pipelines-cache-deployer-sa
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/cache-deployer/cluster-scoped/cache-deployer-clusterrole.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/cache-deployer/cluster-scoped/cache-deployer-clusterrole.yaml
deleted file mode 100644
index bb58dea..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/cache-deployer/cluster-scoped/cache-deployer-clusterrole.yaml
+++ /dev/null
@@ -1,35 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- labels:
- app: kubeflow-pipelines-cache-deployer-clusterrole
- name: kubeflow-pipelines-cache-deployer-clusterrole
-rules:
-- apiGroups:
- - certificates.k8s.io
- resources:
- - certificatesigningrequests
- - certificatesigningrequests/approval
- verbs:
- - create
- - delete
- - get
- - update
-- apiGroups:
- - admissionregistration.k8s.io
- resources:
- - mutatingwebhookconfigurations
- verbs:
- - create
- - delete
- - get
- - list
- - patch
-- apiGroups:
- - certificates.k8s.io
- resources:
- - signers
- resourceNames:
- - kubernetes.io/*
- verbs:
- - approve
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/cache-deployer/cluster-scoped/cache-deployer-clusterrolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/cache-deployer/cluster-scoped/cache-deployer-clusterrolebinding.yaml
deleted file mode 100644
index c0f19d7..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/cache-deployer/cluster-scoped/cache-deployer-clusterrolebinding.yaml
+++ /dev/null
@@ -1,12 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: kubeflow-pipelines-cache-deployer-clusterrolebinding
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: kubeflow-pipelines-cache-deployer-clusterrole
-subjects:
-- kind: ServiceAccount
- name: kubeflow-pipelines-cache-deployer-sa
-# namespace will be added by kustomize automatically according to the namespace field in kustomization.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/cache-deployer/cluster-scoped/cache-deployer-sa.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/cache-deployer/cluster-scoped/cache-deployer-sa.yaml
deleted file mode 100644
index affada3..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/cache-deployer/cluster-scoped/cache-deployer-sa.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: kubeflow-pipelines-cache-deployer-sa
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/cache-deployer/cluster-scoped/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/cache-deployer/cluster-scoped/kustomization.yaml
deleted file mode 100644
index 2b941ae..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/cache-deployer/cluster-scoped/kustomization.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
- - cache-deployer-clusterrole.yaml
- - cache-deployer-clusterrolebinding.yaml
- # HACK: although a service account(SA) is not a cluster-scoped resource.
- # Presence of a SA referred by a clusterrolebinding allows kustomize to auto-add
- # namespace for the clusterrolebinding's SA ref.
- - cache-deployer-sa.yaml
-
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/cache-deployer/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/cache-deployer/kustomization.yaml
deleted file mode 100644
index a68c93f..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/cache-deployer/kustomization.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
- - cache-deployer-role.yaml
- - cache-deployer-rolebinding.yaml
- - cache-deployer-deployment.yaml
-commonLabels:
- app: cache-deployer
-images:
- - name: gcr.io/ml-pipeline/cache-deployer
- newTag: 2.0.5
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/cache/cache-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/cache/cache-deployment.yaml
deleted file mode 100644
index ba7136e..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/cache/cache-deployment.yaml
+++ /dev/null
@@ -1,97 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: cache-server
- labels:
- app: cache-server
-spec:
- replicas: 1
- selector:
- matchLabels:
- app: cache-server
- template:
- metadata:
- labels:
- app: cache-server
- spec:
- containers:
- - name: server
- image: gcr.io/ml-pipeline/cache-server:dummy
- env:
- - name: DEFAULT_CACHE_STALENESS
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: DEFAULT_CACHE_STALENESS
- - name: MAXIMUM_CACHE_STALENESS
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: MAXIMUM_CACHE_STALENESS
- - name: CACHE_IMAGE
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: cacheImage
- - name: CACHE_NODE_RESTRICTIONS
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: cacheNodeRestrictions
- - name: DBCONFIG_DRIVER
- value: mysql
- - name: DBCONFIG_DB_NAME
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: cacheDb
- - name: DBCONFIG_HOST_NAME
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: dbHost
- - name: DBCONFIG_PORT
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: dbPort
- - name: DBCONFIG_USER
- valueFrom:
- secretKeyRef:
- name: mysql-secret
- key: username
- - name: DBCONFIG_PASSWORD
- valueFrom:
- secretKeyRef:
- name: mysql-secret
- key: password
- - name: NAMESPACE_TO_WATCH
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- # If you update WEBHOOK_PORT, also change the value of the
- # containerPort "webhook-api" to match.
- - name: WEBHOOK_PORT
- value: "8443"
- args: ["--db_driver=$(DBCONFIG_DRIVER)",
- "--db_host=$(DBCONFIG_HOST_NAME)",
- "--db_port=$(DBCONFIG_PORT)",
- "--db_name=$(DBCONFIG_DB_NAME)",
- "--db_user=$(DBCONFIG_USER)",
- "--db_password=$(DBCONFIG_PASSWORD)",
- "--namespace_to_watch=$(NAMESPACE_TO_WATCH)",
- "--listen_port=$(WEBHOOK_PORT)",
- ]
- imagePullPolicy: Always
- ports:
- - containerPort: 8443
- name: webhook-api
- volumeMounts:
- - name: webhook-tls-certs
- mountPath: /etc/webhook/certs
- readOnly: true
- volumes:
- - name: webhook-tls-certs
- secret:
- secretName: webhook-server-tls
- serviceAccountName: kubeflow-pipelines-cache
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/cache/cache-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/cache/cache-role.yaml
deleted file mode 100644
index de613b4..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/cache/cache-role.yaml
+++ /dev/null
@@ -1,33 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata:
- labels:
- app: kubeflow-pipelines-cache-role
- name: kubeflow-pipelines-cache-role
-rules:
-- apiGroups:
- - ""
- resources:
- - pods
- verbs:
- - get
- - list
- - watch
- - update
- - patch
-- apiGroups:
- - ""
- resources:
- - configmaps
- verbs:
- - get
-- apiGroups:
- - argoproj.io
- resources:
- - workflows
- verbs:
- - get
- - list
- - watch
- - update
- - patch
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/cache/cache-rolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/cache/cache-rolebinding.yaml
deleted file mode 100644
index 9c89249..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/cache/cache-rolebinding.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: kubeflow-pipelines-cache-binding
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: kubeflow-pipelines-cache-role
-subjects:
-- kind: ServiceAccount
- name: kubeflow-pipelines-cache
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/cache/cache-service.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/cache/cache-service.yaml
deleted file mode 100644
index 5916d54..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/cache/cache-service.yaml
+++ /dev/null
@@ -1,10 +0,0 @@
-apiVersion: v1
-kind: Service
-metadata:
- name: cache-server
-spec:
- selector:
- app: cache-server
- ports:
- - port: 443
- targetPort: webhook-api
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/cache/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/cache/kustomization.yaml
deleted file mode 100644
index 8cafba7..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/cache/kustomization.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
- - cache-deployment.yaml
- - cache-role.yaml
- - cache-rolebinding.yaml
- - cache-sa.yaml
- - cache-service.yaml
-commonLabels:
- app: cache-server
-images:
- - name: gcr.io/ml-pipeline/cache-server
- newTag: 2.0.5
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/generic/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/generic/kustomization.yaml
deleted file mode 100644
index e07e3ee..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/generic/kustomization.yaml
+++ /dev/null
@@ -1,48 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-namespace: kubeflow
-bases:
-- ../../pipeline
-# - ../../cache
-# - ../../cache-deployer
-resources:
-- pipeline-install-config.yaml
-- mysql-secret.yaml
-vars:
-- name: kfp-namespace
- objref:
- kind: Deployment
- apiVersion: apps/v1
- name: ml-pipeline
- fieldref:
- fieldpath: metadata.namespace
-- name: kfp-app-name
- objref:
- kind: ConfigMap
- name: pipeline-install-config
- apiVersion: v1
- fieldref:
- fieldpath: data.appName
-- name: kfp-app-version
- objref:
- kind: ConfigMap
- name: pipeline-install-config
- apiVersion: v1
- fieldref:
- fieldpath: data.appVersion
-- name: kfp-artifact-bucket-name
- objref:
- kind: ConfigMap
- name: pipeline-install-config
- apiVersion: v1
- fieldref:
- fieldpath: data.bucketName
-- name: kfp-default-pipeline-root
- objref:
- kind: ConfigMap
- name: pipeline-install-config
- apiVersion: v1
- fieldref:
- fieldpath: data.defaultPipelineRoot
-configurations:
-- params.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/generic/mysql-secret.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/generic/mysql-secret.yaml
deleted file mode 100644
index 576dce6..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/generic/mysql-secret.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-kind: Secret
-apiVersion: v1
-metadata:
- name: mysql-secret
-stringData:
- username: root
- password: ""
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/generic/params.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/generic/params.yaml
deleted file mode 100644
index 9b8a7ef..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/generic/params.yaml
+++ /dev/null
@@ -1,10 +0,0 @@
-# Allow Kustomize var to replace following fields.
-varReference:
-- path: data/config
- kind: ConfigMap
-- path: data/defaultPipelineRoot
- kind: ConfigMap
-- path: metadata/name
- kind: Application
-- path: spec/descriptor/version
- kind: Application
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/generic/pipeline-install-config.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/generic/pipeline-install-config.yaml
deleted file mode 100644
index 5b41da3..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/generic/pipeline-install-config.yaml
+++ /dev/null
@@ -1,96 +0,0 @@
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: pipeline-install-config
-data:
- warning: |
- 1. Do not use kubectl to edit this configmap, because some values are used
- during kustomize build. Instead, change the configmap and apply the entire
- kustomize manifests again.
- 2. After updating the configmap, some deployments may need to be restarted
- until the changes take effect. A quick way to restart all deployments in a
- namespace: `kubectl rollout restart deployment -n `.
- appName: pipeline
- appVersion: 2.0.5
- dbHost: mysql # relic to be removed after release
- dbPort: "3306" # relic to be removed after release
- dbType: mysql
- mysqlHost: mysql
- mysqlPort: "3306"
- mlmdDb: metadb
- cacheDb: cachedb
- pipelineDb: mlpipeline
- bucketName: mlpipeline
- ## defaultPipelineRoot: Optional. Default pipeline root in v2 compatible mode.
- ## https://www.kubeflow.org/docs/components/pipelines/sdk/v2/v2-compatibility/
- ##
- ## If the field is not set, kfp-launcher configmaps won't be created and
- ## v2 compatible mode defaults to minio://mlpipeline/v2/artifacts as pipeline
- ## root.
- ##
- ## When not in Kubeflow Pipelines multi-user mode, the config works as you
- ## would normally expect.
- ##
- ## In Kubeflow Pipelines multi-user mode, the config creates default
- ## kfp-launcher configmaps in each user's namespace. Users can edit the
- ## kfp-launcher configmap's defaultPipelineRoot field afterwards to configure
- ## namespace-specific default pipeline root. The namespace specific changes in
- ## kfp-launcher configmap won't be overridden by pipeline-install-config.
- ##
- ## Caveat: when you update the config from a non-empty value, only new
- ## namespaces get the updated config by default. Owners of existing namespaces
- ## must delete the kfp-launcher configmap to get the new default config value.
- ##
- ## Examples:
- ## defaultPipelineRoot: minio://mlpipeline/v2/artifacts
- ## defaultPipelineRoot: gs://your-bucket/path/to/artifacts
- ## defaultPipelineRoot: s3://your-bucket/path/to/artifacts
- ##
- ## V2 Compatible Mode Feature stage:
- ## [Beta](https://github.com/kubeflow/pipelines/blob/master/docs/release/feature-stages.md#beta)
- defaultPipelineRoot: ""
- ## autoUpdatePipelineDefaultVersion: States if the pipeline version
- ## should be updated by defult for a versioned pipeline or not when a new
- ## version is uploaded. This sets the deployment wide definition.
- autoUpdatePipelineDefaultVersion: "true"
- ## cronScheduleTimezone: States the timezone which should be used for
- ## the cron scheduler. If not specified the local timezone of the
- ## cluster will be used. Valid values are UTC, Local or values according to
- ## the IANA Time Zone database, such as "America/New_York" and "Asia/Shanghai".
- ## Feature stage:
- ## [Alpha](https://github.com/kubeflow/pipelines/blob/master/docs/release/feature-stages.md#alpha)
- cronScheduleTimezone: "UTC"
- ## cacheImage is the image that the mutating webhook will use to patch
- ## cached steps with. Will be used to echo a message announcing that
- ## the cached step result will be used. If not set it will default to
- ## 'gcr.io/google-containers/busybox'
- cacheImage: "gcr.io/google-containers/busybox"
- ## cacheNodeRestrictions the dummy container runing if output is cached
- ## will run with the same affinity and node selector as the default pipeline
- ## step. This is defaulted to 'false' to allow the pod to be scheduled on
- ## any node and avoid defaulting to specific nodes. Allowed values are:
- ## 'false' and 'true'.
- cacheNodeRestrictions: "false"
- ## MAXIMUM_CACHE_STALENESS configures caching according to
- ## https://www.kubeflow.org/docs/components/pipelines/overview/caching/ and
- ## https://www.kubeflow.org/docs/components/pipelines/overview/caching-v2/.
- ## Larger than MAXIMUM_CACHE_STALENESS per pipeline user set values are
- ## reduced to MAXIMUM_CACHE_STALENESS.
- ## The administrator of the storage backend can rely on it to delete old cache
- ## artifacts.
- MAXIMUM_CACHE_STALENESS: ""
- ## MAXIMUM_CACHE_STALENESS: "P30D"
- ## DEFAULT_CACHE_STALENESS configures caching according to
- ## https://www.kubeflow.org/docs/components/pipelines/overview/caching/ and
- ## https://www.kubeflow.org/docs/components/pipelines/overview/caching-v2/.
- ## This value is used if the user did not set a value in the pipeline.
- DEFAULT_CACHE_STALENESS: ""
- ## DEFAULT_CACHE_STALENESS: "P7D"
- ## ConMaxLifeTime will set the connection max lifetime for MySQL
- ## this is very important to setup when using external databases.
- ## See this issue for more details: https://github.com/kubeflow/pipelines/issues/5329
- ## Note: this value should be a string that can be parsed by `time.ParseDuration`.
- ## If this value doesn't include a unit abbreviation, the units will be assumed
- ## to be nanoseconds.
- ConMaxLifeTime: "120s"
- LOG_LEVEL: "info"
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/api-service/deployment-patch.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/api-service/deployment-patch.yaml
deleted file mode 100644
index 4f283cd..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/api-service/deployment-patch.yaml
+++ /dev/null
@@ -1,17 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: ml-pipeline
-spec:
- template:
- spec:
- containers:
- - name: ml-pipeline-api-server
- envFrom:
- - configMapRef:
- name: pipeline-api-server-config
- env:
- - name: KUBEFLOW_USERID_HEADER
- value: kubeflow-userid
- - name: KUBEFLOW_USERID_PREFIX
- value: ""
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/api-service/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/api-service/kustomization.yaml
deleted file mode 100644
index 4650ab5..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/api-service/kustomization.yaml
+++ /dev/null
@@ -1,9 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
-- cluster-role-binding.yaml
-- cluster-role.yaml
-configMapGenerator:
-- name: pipeline-api-server-config
- envs:
- - params.env
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/api-service/params.env b/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/api-service/params.env
deleted file mode 100644
index 5bb1e0a..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/api-service/params.env
+++ /dev/null
@@ -1,4 +0,0 @@
-MULTIUSER=true
-DEFAULTPIPELINERUNNERSERVICEACCOUNT=default-editor
-VISUALIZATIONSERVICE_NAME=ml-pipeline-visualizationserver
-VISUALIZATIONSERVICE_PORT=8888
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/cache/cluster-role-binding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/cache/cluster-role-binding.yaml
deleted file mode 100644
index 4e80257..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/cache/cluster-role-binding.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: kubeflow-pipelines-cache-binding
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: kubeflow-pipelines-cache-role
-subjects:
-- kind: ServiceAccount
- name: kubeflow-pipelines-cache
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/cache/cluster-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/cache/cluster-role.yaml
deleted file mode 100644
index e604367..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/cache/cluster-role.yaml
+++ /dev/null
@@ -1,31 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- name: kubeflow-pipelines-cache-role
-rules:
-- apiGroups:
- - ""
- resources:
- - pods
- verbs:
- - get
- - list
- - watch
- - update
- - patch
-- apiGroups:
- - ""
- resources:
- - configmaps
- verbs:
- - get
-- apiGroups:
- - argoproj.io
- resources:
- - workflows
- verbs:
- - get
- - list
- - watch
- - update
- - patch
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/cache/deployment-patch.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/cache/deployment-patch.yaml
deleted file mode 100644
index 5f98ee1..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/cache/deployment-patch.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: cache-server
-spec:
- template:
- spec:
- containers:
- - name: server
- env:
- - name: NAMESPACE_TO_WATCH
- value: ''
- valueFrom: null
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/cache/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/cache/kustomization.yaml
deleted file mode 100644
index ec4dfa8..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/cache/kustomization.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-commonLabels:
- app: cache-server
-resources:
-- cluster-role.yaml
-- cluster-role-binding.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/istio-authorization-config.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/istio-authorization-config.yaml
deleted file mode 100644
index 8b3144a..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/istio-authorization-config.yaml
+++ /dev/null
@@ -1,106 +0,0 @@
-apiVersion: security.istio.io/v1beta1
-kind: AuthorizationPolicy
-metadata:
- name: ml-pipeline-ui
- namespace: kubeflow
-spec:
- selector:
- matchLabels:
- app: ml-pipeline-ui
- rules:
- - from:
- - source:
- namespaces:
- - istio-system
----
-apiVersion: security.istio.io/v1beta1
-kind: AuthorizationPolicy
-metadata:
- name: ml-pipeline
- namespace: kubeflow
-spec:
- selector:
- matchLabels:
- app: ml-pipeline
- rules:
- - from:
- - source:
- principals:
- - cluster.local/ns/kubeflow/sa/ml-pipeline
- - cluster.local/ns/kubeflow/sa/ml-pipeline-ui
- - cluster.local/ns/kubeflow/sa/ml-pipeline-persistenceagent
- - cluster.local/ns/kubeflow/sa/ml-pipeline-scheduledworkflow
- - cluster.local/ns/kubeflow/sa/ml-pipeline-viewer-crd-service-account
- - cluster.local/ns/kubeflow/sa/kubeflow-pipelines-cache
- # allow access by any trusted principal
- - from:
- - source:
- requestPrincipals: ["*"]
- # For user workloads, which cannot user http headers for authentication
- - when:
- - key: request.headers[kubeflow-userid]
- notValues: ['*']
----
-apiVersion: security.istio.io/v1beta1
-kind: AuthorizationPolicy
-metadata:
- name: ml-pipeline-visualizationserver
- namespace: kubeflow
-spec:
- selector:
- matchLabels:
- app: ml-pipeline-visualizationserver
- rules:
- - from:
- - source:
- principals:
- - cluster.local/ns/kubeflow/sa/ml-pipeline
- - cluster.local/ns/kubeflow/sa/ml-pipeline-ui
- - cluster.local/ns/kubeflow/sa/ml-pipeline-persistenceagent
- - cluster.local/ns/kubeflow/sa/ml-pipeline-scheduledworkflow
- - cluster.local/ns/kubeflow/sa/ml-pipeline-viewer-crd-service-account
- - cluster.local/ns/kubeflow/sa/kubeflow-pipelines-cache
-
----
-apiVersion: security.istio.io/v1beta1
-kind: AuthorizationPolicy
-metadata:
- name: service-cache-server
- namespace: kubeflow
-spec:
- selector:
- matchLabels:
- app: cache-server
- rules:
- - {}
-
----
-apiVersion: "networking.istio.io/v1alpha3"
-kind: DestinationRule
-metadata:
- name: ml-pipeline-ui
-spec:
- host: ml-pipeline-ui.kubeflow.svc.cluster.local
- trafficPolicy:
- tls:
- mode: ISTIO_MUTUAL
----
-apiVersion: "networking.istio.io/v1alpha3"
-kind: DestinationRule
-metadata:
- name: ml-pipeline
-spec:
- host: ml-pipeline.kubeflow.svc.cluster.local
- trafficPolicy:
- tls:
- mode: ISTIO_MUTUAL
----
-apiVersion: "networking.istio.io/v1alpha3"
-kind: DestinationRule
-metadata:
- name: ml-pipeline-visualizationserver
-spec:
- host: ml-pipeline-visualizationserver.kubeflow.svc.cluster.local
- trafficPolicy:
- tls:
- mode: ISTIO_MUTUAL
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/kustomization.yaml
deleted file mode 100644
index a09981a..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/kustomization.yaml
+++ /dev/null
@@ -1,28 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-namespace: kubeflow
-commonLabels:
- app.kubernetes.io/name: kubeflow-pipelines
- app.kubernetes.io/component: ml-pipeline
-resources:
-- ../../pipeline/cluster-scoped
-- ../generic
-- view-edit-cluster-roles.yaml
-- api-service
-- pipelines-ui
-- pipelines-profile-controller
-- scheduled-workflow
-- viewer-controller
-- persistence-agent
-- istio-authorization-config.yaml
-- virtual-service.yaml
-patchesStrategicMerge:
-- api-service/deployment-patch.yaml
-- pipelines-ui/deployment-patch.yaml
-- pipelines-ui/configmap-patch.yaml
-- scheduled-workflow/deployment-patch.yaml
-- viewer-controller/deployment-patch.yaml
-- persistence-agent/deployment-patch.yaml
-
-configurations:
-- params.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/metadata-writer/cluster-role-binding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/metadata-writer/cluster-role-binding.yaml
deleted file mode 100644
index 605f1ff..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/metadata-writer/cluster-role-binding.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: kubeflow-pipelines-metadata-writer-binding
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: kubeflow-pipelines-metadata-writer-role
-subjects:
-- kind: ServiceAccount
- name: kubeflow-pipelines-metadata-writer
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/metadata-writer/deployment-patch.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/metadata-writer/deployment-patch.yaml
deleted file mode 100644
index 2babe9f..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/metadata-writer/deployment-patch.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: metadata-writer
-spec:
- template:
- spec:
- containers:
- - name: main
- env:
- - name: NAMESPACE_TO_WATCH
- value: ''
- valueFrom: null
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/metadata-writer/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/metadata-writer/kustomization.yaml
deleted file mode 100644
index b1f6546..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/metadata-writer/kustomization.yaml
+++ /dev/null
@@ -1,5 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
-- cluster-role.yaml
-- cluster-role-binding.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/params.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/params.yaml
deleted file mode 100644
index 0cb3a00..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/params.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-# Allow Kustomize var to replace following fields.
-varReference:
-- path: spec/http/route/destination/host
- kind: VirtualService
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/persistence-agent/cluster-role-binding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/persistence-agent/cluster-role-binding.yaml
deleted file mode 100644
index e030bd8..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/persistence-agent/cluster-role-binding.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: ml-pipeline-persistenceagent-binding
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: ml-pipeline-persistenceagent-role
-subjects:
-- kind: ServiceAccount
- name: ml-pipeline-persistenceagent
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/persistence-agent/cluster-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/persistence-agent/cluster-role.yaml
deleted file mode 100644
index 875ca9e..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/persistence-agent/cluster-role.yaml
+++ /dev/null
@@ -1,52 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- name: ml-pipeline-persistenceagent-role
-rules:
-- apiGroups:
- - argoproj.io
- resources:
- - workflows
- verbs:
- - get
- - list
- - watch
-- apiGroups:
- - kubeflow.org
- resources:
- - scheduledworkflows
- verbs:
- - get
- - list
- - watch
-- apiGroups:
- - pipelines.kubeflow.org
- resources:
- - scheduledworkflows
- - workflows
- verbs:
- - report
-- apiGroups:
- - tekton.dev
- resources:
- - pipelineruns
- - taskruns
- - conditions
- - runs
- - customruns
- - tasks
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
-- apiGroups:
- - pipelines.kubeflow.org
- resources:
- - runs
- verbs:
- - reportMetrics
- - readArtifact
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/persistence-agent/deployment-patch.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/persistence-agent/deployment-patch.yaml
deleted file mode 100644
index a5e7a9f..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/persistence-agent/deployment-patch.yaml
+++ /dev/null
@@ -1,20 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: ml-pipeline-persistenceagent
-spec:
- template:
- spec:
- containers:
- - name: ml-pipeline-persistenceagent
- envFrom:
- - configMapRef:
- name: persistenceagent-config
- env:
- - name: NAMESPACE
- value: ''
- valueFrom: null
- - name: KUBEFLOW_USERID_HEADER
- value: kubeflow-userid
- - name: KUBEFLOW_USERID_PREFIX
- value: ""
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/persistence-agent/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/persistence-agent/kustomization.yaml
deleted file mode 100644
index 560e0fc..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/persistence-agent/kustomization.yaml
+++ /dev/null
@@ -1,9 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
-- cluster-role.yaml
-- cluster-role-binding.yaml
-configMapGenerator:
-- name: persistenceagent-config
- envs:
- - params.env
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/persistence-agent/params.env b/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/persistence-agent/params.env
deleted file mode 100644
index 4c3bab7..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/persistence-agent/params.env
+++ /dev/null
@@ -1 +0,0 @@
-MULTIUSER=true
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/pipelines-profile-controller/composite-controller.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/pipelines-profile-controller/composite-controller.yaml
deleted file mode 100644
index 71ef08d..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/pipelines-profile-controller/composite-controller.yaml
+++ /dev/null
@@ -1,41 +0,0 @@
-# Change resyncPeriodSeconds to 1 hour from insane 20 seconds
-# Only sync namespaces with pipelines.kubeflow.org/enabled = "true"
-apiVersion: metacontroller.k8s.io/v1alpha1
-kind: CompositeController
-metadata:
- name: kubeflow-pipelines-profile-controller
-spec:
- generateSelector: true
- resyncPeriodSeconds: 3600
- parentResource:
- apiVersion: v1
- resource: namespaces
- childResources:
- - apiVersion: v1
- resource: secrets
- updateStrategy:
- method: OnDelete
- - apiVersion: v1
- resource: configmaps
- updateStrategy:
- method: OnDelete
- - apiVersion: apps/v1
- resource: deployments
- updateStrategy:
- method: InPlace
- - apiVersion: v1
- resource: services
- updateStrategy:
- method: InPlace
- - apiVersion: networking.istio.io/v1alpha3
- resource: destinationrules
- updateStrategy:
- method: InPlace
- - apiVersion: security.istio.io/v1beta1
- resource: authorizationpolicies
- updateStrategy:
- method: InPlace
- hooks:
- sync:
- webhook:
- url: http://kubeflow-pipelines-profile-controller/sync
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/pipelines-profile-controller/deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/pipelines-profile-controller/deployment.yaml
deleted file mode 100644
index 99dd9e2..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/pipelines-profile-controller/deployment.yaml
+++ /dev/null
@@ -1,49 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: kubeflow-pipelines-profile-controller
-spec:
- replicas: 1
- template:
- metadata:
- annotations:
- sidecar.istio.io/inject: "false"
- spec:
- containers:
- - name: profile-controller
- image: python:3.7
- command: ["python", "/hooks/sync.py"]
- envFrom:
- - configMapRef:
- name: kubeflow-pipelines-profile-controller-env
- env:
- - name: KFP_VERSION
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: appVersion
- - name: KFP_DEFAULT_PIPELINE_ROOT
- valueFrom:
- configMapKeyRef:
- optional: true
- name: pipeline-install-config
- key: defaultPipelineRoot
- - name: MINIO_ACCESS_KEY
- valueFrom:
- secretKeyRef:
- name: mlpipeline-minio-artifact
- key: accesskey
- - name: MINIO_SECRET_KEY
- valueFrom:
- secretKeyRef:
- name: mlpipeline-minio-artifact
- key: secretkey
- volumeMounts:
- - name: hooks
- mountPath: /hooks
- ports:
- - containerPort: 8080
- volumes:
- - name: hooks
- configMap:
- name: kubeflow-pipelines-profile-controller-code
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/pipelines-profile-controller/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/pipelines-profile-controller/kustomization.yaml
deleted file mode 100644
index 6ed73f1..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/pipelines-profile-controller/kustomization.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-namespace: kubeflow
-commonLabels:
- app: kubeflow-pipelines-profile-controller
-resources:
-- service.yaml
-- deployment.yaml
-- composite-controller.yaml
-configMapGenerator:
-- name: kubeflow-pipelines-profile-controller-code
- files:
- - sync.py
-- name: kubeflow-pipelines-profile-controller-env
- envs:
- - params.env
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/pipelines-profile-controller/params.env b/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/pipelines-profile-controller/params.env
deleted file mode 100644
index 86706b9..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/pipelines-profile-controller/params.env
+++ /dev/null
@@ -1 +0,0 @@
-DISABLE_ISTIO_SIDECAR=false
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/pipelines-profile-controller/requirements-dev.txt b/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/pipelines-profile-controller/requirements-dev.txt
deleted file mode 100644
index dc27cb5..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/pipelines-profile-controller/requirements-dev.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-pytest
-pytest-lazy-fixture
-requests
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/pipelines-profile-controller/run_tests.sh b/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/pipelines-profile-controller/run_tests.sh
deleted file mode 100755
index 4933ec7..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/pipelines-profile-controller/run_tests.sh
+++ /dev/null
@@ -1,9 +0,0 @@
-# Build venv with required packages
-VENV=".venv"
-PYTHON_VENV="${VENV}/bin/python"
-python -m venv $VENV
-$PYTHON_VENV -m pip install -U pip
-$PYTHON_VENV -m pip install -r requirements-dev.txt
-
-# Run tests
-$PYTHON_VENV -m pytest ./test_sync.py
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/pipelines-profile-controller/service.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/pipelines-profile-controller/service.yaml
deleted file mode 100644
index 9c5316d..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/pipelines-profile-controller/service.yaml
+++ /dev/null
@@ -1,10 +0,0 @@
-apiVersion: v1
-kind: Service
-metadata:
- name: kubeflow-pipelines-profile-controller
-spec:
- ports:
- - name: http
- port: 80
- protocol: TCP
- targetPort: 8080
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/pipelines-profile-controller/sync.py b/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/pipelines-profile-controller/sync.py
deleted file mode 100644
index 031a3fa..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/pipelines-profile-controller/sync.py
+++ /dev/null
@@ -1,396 +0,0 @@
-# Copyright 2020-2021 The Kubeflow Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-from http.server import BaseHTTPRequestHandler, HTTPServer
-import json
-import os
-import base64
-
-
-def main():
- settings = get_settings_from_env()
- server = server_factory(**settings)
- server.serve_forever()
-
-
-def get_settings_from_env(controller_port=None,
- visualization_server_image=None, frontend_image=None,
- visualization_server_tag=None, frontend_tag=None, disable_istio_sidecar=None,
- minio_access_key=None, minio_secret_key=None, kfp_default_pipeline_root=None):
- """
- Returns a dict of settings from environment variables relevant to the controller
-
- Environment settings can be overridden by passing them here as arguments.
-
- Settings are pulled from the all-caps version of the setting name. The
- following defaults are used if those environment variables are not set
- to enable backwards compatibility with previous versions of this script:
- visualization_server_image: gcr.io/ml-pipeline/visualization-server
- visualization_server_tag: value of KFP_VERSION environment variable
- frontend_image: gcr.io/ml-pipeline/frontend
- frontend_tag: value of KFP_VERSION environment variable
- disable_istio_sidecar: Required (no default)
- minio_access_key: Required (no default)
- minio_secret_key: Required (no default)
- """
- settings = dict()
- settings["controller_port"] = \
- controller_port or \
- os.environ.get("CONTROLLER_PORT", "8080")
-
- settings["visualization_server_image"] = \
- visualization_server_image or \
- os.environ.get("VISUALIZATION_SERVER_IMAGE", "gcr.io/ml-pipeline/visualization-server")
-
- settings["frontend_image"] = \
- frontend_image or \
- os.environ.get("FRONTEND_IMAGE", "gcr.io/ml-pipeline/frontend")
-
- # Look for specific tags for each image first, falling back to
- # previously used KFP_VERSION environment variable for backwards
- # compatibility
- settings["visualization_server_tag"] = \
- visualization_server_tag or \
- os.environ.get("VISUALIZATION_SERVER_TAG") or \
- os.environ["KFP_VERSION"]
-
- settings["frontend_tag"] = \
- frontend_tag or \
- os.environ.get("FRONTEND_TAG") or \
- os.environ["KFP_VERSION"]
-
- settings["disable_istio_sidecar"] = \
- disable_istio_sidecar if disable_istio_sidecar is not None \
- else os.environ.get("DISABLE_ISTIO_SIDECAR") == "true"
-
- settings["minio_access_key"] = \
- minio_access_key or \
- base64.b64encode(bytes(os.environ.get("MINIO_ACCESS_KEY"), 'utf-8')).decode('utf-8')
-
- settings["minio_secret_key"] = \
- minio_secret_key or \
- base64.b64encode(bytes(os.environ.get("MINIO_SECRET_KEY"), 'utf-8')).decode('utf-8')
-
- # KFP_DEFAULT_PIPELINE_ROOT is optional
- settings["kfp_default_pipeline_root"] = \
- kfp_default_pipeline_root or \
- os.environ.get("KFP_DEFAULT_PIPELINE_ROOT")
-
- return settings
-
-
-def server_factory(visualization_server_image,
- visualization_server_tag, frontend_image, frontend_tag,
- disable_istio_sidecar, minio_access_key,
- minio_secret_key, kfp_default_pipeline_root=None,
- url="", controller_port=8080):
- """
- Returns an HTTPServer populated with Handler with customized settings
- """
- class Controller(BaseHTTPRequestHandler):
- def sync(self, parent, children):
- # parent is a namespace
- namespace = parent.get("metadata", {}).get("name")
-
- pipeline_enabled = parent.get("metadata", {}).get(
- "labels", {}).get("pipelines.kubeflow.org/enabled")
-
- if pipeline_enabled != "true":
- return {"status": {}, "children": []}
-
- desired_configmap_count = 1
- desired_resources = []
- if kfp_default_pipeline_root:
- desired_configmap_count = 2
- desired_resources += [{
- "apiVersion": "v1",
- "kind": "ConfigMap",
- "metadata": {
- "name": "kfp-launcher",
- "namespace": namespace,
- },
- "data": {
- "defaultPipelineRoot": kfp_default_pipeline_root,
- },
- }]
-
-
- # Compute status based on observed state.
- desired_status = {
- "kubeflow-pipelines-ready":
- len(children["Secret.v1"]) == 1 and
- len(children["ConfigMap.v1"]) == desired_configmap_count and
- len(children["Deployment.apps/v1"]) == 2 and
- len(children["Service.v1"]) == 2 and
- len(children["DestinationRule.networking.istio.io/v1alpha3"]) == 1 and
- len(children["AuthorizationPolicy.security.istio.io/v1beta1"]) == 1 and
- "True" or "False"
- }
-
- # Generate the desired child object(s).
- desired_resources += [
- {
- "apiVersion": "v1",
- "kind": "ConfigMap",
- "metadata": {
- "name": "metadata-grpc-configmap",
- "namespace": namespace,
- },
- "data": {
- "METADATA_GRPC_SERVICE_HOST":
- "metadata-grpc-service.kubeflow",
- "METADATA_GRPC_SERVICE_PORT": "8080",
- },
- },
- # Visualization server related manifests below
- {
- "apiVersion": "apps/v1",
- "kind": "Deployment",
- "metadata": {
- "labels": {
- "app": "ml-pipeline-visualizationserver"
- },
- "name": "ml-pipeline-visualizationserver",
- "namespace": namespace,
- },
- "spec": {
- "selector": {
- "matchLabels": {
- "app": "ml-pipeline-visualizationserver"
- },
- },
- "template": {
- "metadata": {
- "labels": {
- "app": "ml-pipeline-visualizationserver"
- },
- "annotations": disable_istio_sidecar and {
- "sidecar.istio.io/inject": "false"
- } or {},
- },
- "spec": {
- "containers": [{
- "image": f"{visualization_server_image}:{visualization_server_tag}",
- "imagePullPolicy":
- "IfNotPresent",
- "name":
- "ml-pipeline-visualizationserver",
- "ports": [{
- "containerPort": 8888
- }],
- "resources": {
- "requests": {
- "cpu": "50m",
- "memory": "200Mi"
- },
- "limits": {
- "cpu": "500m",
- "memory": "1Gi"
- },
- }
- }],
- "serviceAccountName":
- "default-editor",
- },
- },
- },
- },
- {
- "apiVersion": "networking.istio.io/v1alpha3",
- "kind": "DestinationRule",
- "metadata": {
- "name": "ml-pipeline-visualizationserver",
- "namespace": namespace,
- },
- "spec": {
- "host": "ml-pipeline-visualizationserver",
- "trafficPolicy": {
- "tls": {
- "mode": "ISTIO_MUTUAL"
- }
- }
- }
- },
- {
- "apiVersion": "security.istio.io/v1beta1",
- "kind": "AuthorizationPolicy",
- "metadata": {
- "name": "ml-pipeline-visualizationserver",
- "namespace": namespace,
- },
- "spec": {
- "selector": {
- "matchLabels": {
- "app": "ml-pipeline-visualizationserver"
- }
- },
- "rules": [{
- "from": [{
- "source": {
- "principals": ["cluster.local/ns/kubeflow/sa/ml-pipeline"]
- }
- }]
- }]
- }
- },
- {
- "apiVersion": "v1",
- "kind": "Service",
- "metadata": {
- "name": "ml-pipeline-visualizationserver",
- "namespace": namespace,
- },
- "spec": {
- "ports": [{
- "name": "http",
- "port": 8888,
- "protocol": "TCP",
- "targetPort": 8888,
- }],
- "selector": {
- "app": "ml-pipeline-visualizationserver",
- },
- },
- },
- # Artifact fetcher related resources below.
- {
- "apiVersion": "apps/v1",
- "kind": "Deployment",
- "metadata": {
- "labels": {
- "app": "ml-pipeline-ui-artifact"
- },
- "name": "ml-pipeline-ui-artifact",
- "namespace": namespace,
- },
- "spec": {
- "selector": {
- "matchLabels": {
- "app": "ml-pipeline-ui-artifact"
- }
- },
- "template": {
- "metadata": {
- "labels": {
- "app": "ml-pipeline-ui-artifact"
- },
- "annotations": disable_istio_sidecar and {
- "sidecar.istio.io/inject": "false"
- } or {},
- },
- "spec": {
- "containers": [{
- "name":
- "ml-pipeline-ui-artifact",
- "image": f"{frontend_image}:{frontend_tag}",
- "imagePullPolicy":
- "IfNotPresent",
- "ports": [{
- "containerPort": 3000
- }],
- "env": [
- {
- "name": "MINIO_ACCESS_KEY",
- "valueFrom": {
- "secretKeyRef": {
- "key": "accesskey",
- "name": "mlpipeline-minio-artifact"
- }
- }
- },
- {
- "name": "MINIO_SECRET_KEY",
- "valueFrom": {
- "secretKeyRef": {
- "key": "secretkey",
- "name": "mlpipeline-minio-artifact"
- }
- }
- }
- ],
- "resources": {
- "requests": {
- "cpu": "10m",
- "memory": "70Mi"
- },
- "limits": {
- "cpu": "100m",
- "memory": "500Mi"
- },
- }
- }],
- "serviceAccountName":
- "default-editor"
- }
- }
- }
- },
- {
- "apiVersion": "v1",
- "kind": "Service",
- "metadata": {
- "name": "ml-pipeline-ui-artifact",
- "namespace": namespace,
- "labels": {
- "app": "ml-pipeline-ui-artifact"
- }
- },
- "spec": {
- "ports": [{
- "name":
- "http", # name is required to let istio understand request protocol
- "port": 80,
- "protocol": "TCP",
- "targetPort": 3000
- }],
- "selector": {
- "app": "ml-pipeline-ui-artifact"
- }
- }
- },
- ]
- print('Received request:\n', json.dumps(parent, sort_keys=True))
- print('Desired resources except secrets:\n', json.dumps(desired_resources, sort_keys=True))
- # Moved after the print argument because this is sensitive data.
- desired_resources.append({
- "apiVersion": "v1",
- "kind": "Secret",
- "metadata": {
- "name": "mlpipeline-minio-artifact",
- "namespace": namespace,
- },
- "data": {
- "accesskey": minio_access_key,
- "secretkey": minio_secret_key,
- },
- })
-
- return {"status": desired_status, "children": desired_resources}
-
- def do_POST(self):
- # Serve the sync() function as a JSON webhook.
- observed = json.loads(
- self.rfile.read(int(self.headers.get("content-length"))))
- desired = self.sync(observed["parent"], observed["children"])
-
- self.send_response(200)
- self.send_header("Content-type", "application/json")
- self.end_headers()
- self.wfile.write(bytes(json.dumps(desired), 'utf-8'))
-
- return HTTPServer((url, int(controller_port)), Controller)
-
-
-if __name__ == "__main__":
- main()
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/pipelines-profile-controller/test_sync.py b/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/pipelines-profile-controller/test_sync.py
deleted file mode 100644
index 50362d6..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/pipelines-profile-controller/test_sync.py
+++ /dev/null
@@ -1,286 +0,0 @@
-import os
-from unittest import mock
-import threading
-from sync import get_settings_from_env, server_factory
-import json
-
-import pytest
-import requests
-
-# Data sets passed to server
-DATA_INCORRECT_CHILDREN = {
- "parent": {
- "metadata": {
- "labels": {
- "pipelines.kubeflow.org/enabled": "true"
- },
- "name": "myName"
- }
- },
- "children": {
- "Secret.v1": [],
- "ConfigMap.v1": [],
- "Deployment.apps/v1": [],
- "Service.v1": [],
- "DestinationRule.networking.istio.io/v1alpha3": [],
- "AuthorizationPolicy.security.istio.io/v1beta1": [],
- }
-}
-
-DATA_CORRECT_CHILDREN = {
- "parent": {
- "metadata": {
- "labels": {
- "pipelines.kubeflow.org/enabled": "true"
- },
- "name": "myName"
- }
- },
- "children": {
- "Secret.v1": [1],
- "ConfigMap.v1": [1],
- "Deployment.apps/v1": [1, 1],
- "Service.v1": [1, 1],
- "DestinationRule.networking.istio.io/v1alpha3": [1],
- "AuthorizationPolicy.security.istio.io/v1beta1": [1],
- }
-}
-
-DATA_MISSING_PIPELINE_ENABLED = {"parent": {}, "children": {}}
-
-# Default values when environments are not explicit
-DEFAULT_FRONTEND_IMAGE = "gcr.io/ml-pipeline/frontend"
-DEFAULT_VISUALIZATION_IMAGE = "gcr.io/ml-pipeline/visualization-server"
-
-# Variables used for environment variable sets
-VISUALIZATION_SERVER_IMAGE = "vis-image"
-VISUALIZATION_SERVER_TAG = "somenumber.1.2.3"
-FRONTEND_IMAGE = "frontend-image"
-FRONTEND_TAG = "somehash"
-
-KFP_VERSION = "x.y.z"
-
-MINIO_ACCESS_KEY = "abcdef"
-MINIO_SECRET_KEY = "uvwxyz"
-
-# "Environments" used in tests
-ENV_VARIABLES_BASE = {
- "MINIO_ACCESS_KEY": MINIO_ACCESS_KEY,
- "MINIO_SECRET_KEY": MINIO_SECRET_KEY,
- "CONTROLLER_PORT": "0", # HTTPServer randomly assigns the port to a free port
-}
-
-ENV_KFP_VERSION_ONLY = dict(ENV_VARIABLES_BASE,
- **{
- "KFP_VERSION": KFP_VERSION,
- }
- )
-
-ENV_IMAGES_NO_TAGS = dict(ENV_VARIABLES_BASE,
- **{
- "KFP_VERSION": KFP_VERSION,
- "VISUALIZATION_SERVER_IMAGE": VISUALIZATION_SERVER_IMAGE,
- "FRONTEND_IMAGE": FRONTEND_IMAGE,
- }
- )
-
-ENV_IMAGES_WITH_TAGS = dict(ENV_VARIABLES_BASE,
- **{
- "VISUALIZATION_SERVER_IMAGE": VISUALIZATION_SERVER_IMAGE,
- "FRONTEND_IMAGE": FRONTEND_IMAGE,
- "VISUALIZATION_SERVER_TAG": VISUALIZATION_SERVER_TAG,
- "FRONTEND_TAG": FRONTEND_TAG,
- }
- )
-
-ENV_IMAGES_WITH_TAGS_AND_ISTIO = dict(ENV_IMAGES_WITH_TAGS,
- **{
- "DISABLE_ISTIO_SIDECAR": "false",
- }
- )
-
-
-def generate_image_name(imagename, tag):
- return f"{str(imagename)}:{str(tag)}"
-
-
-@pytest.fixture(
- scope="function",
-)
-def sync_server(request):
- """
- Starts the sync HTTP server for a given set of environment variables on a separate thread
-
- Yields:
- * the server (useful to interrogate for the server address)
- * environment variables (useful to interrogate for correct responses)
- """
- environ = request.param
- with mock.patch.dict(os.environ, environ):
- # Create a server at an available port and serve it on a thread as a daemon
- # This will result in a collection of servers being active - not a great way
- # if this fixture is run many times during a test, but ok for now
- settings = get_settings_from_env()
- server = server_factory(**settings)
- server_thread = threading.Thread(target=server.serve_forever)
- # Put on daemon so it doesn't keep pytest from ending
- server_thread.daemon = True
- server_thread.start()
- yield server, environ
-
-
-@pytest.fixture(
- scope="function",
-)
-def sync_server_from_arguments(request):
- """
- Starts the sync HTTP server for a given set of parameters passed as arguments, with server on a separate thread
-
- Yields:
- * the server (useful to interrogate for the server address)
- * environment variables (useful to interrogate for correct responses)
- """
- environ = {k.lower(): v for k, v in request.param.items()}
- settings = environ
- server = server_factory(**settings)
- server_thread = threading.Thread(target=server.serve_forever)
- # Put on daemon so it doesn't keep pytest from ending
- server_thread.daemon = True
- server_thread.start()
- yield server, environ
-
-
-@pytest.mark.parametrize(
- "sync_server, data, expected_status, expected_visualization_server_image, expected_frontend_server_image",
- [
- (
- ENV_KFP_VERSION_ONLY,
- DATA_INCORRECT_CHILDREN,
- {"kubeflow-pipelines-ready": "False"},
- generate_image_name(DEFAULT_VISUALIZATION_IMAGE, KFP_VERSION),
- generate_image_name(DEFAULT_FRONTEND_IMAGE, KFP_VERSION),
- ),
- (
- ENV_IMAGES_NO_TAGS,
- DATA_INCORRECT_CHILDREN,
- {"kubeflow-pipelines-ready": "False"},
- generate_image_name(ENV_IMAGES_NO_TAGS["VISUALIZATION_SERVER_IMAGE"], KFP_VERSION),
- generate_image_name(ENV_IMAGES_NO_TAGS["FRONTEND_IMAGE"], KFP_VERSION),
- ),
- (
- ENV_IMAGES_WITH_TAGS,
- DATA_INCORRECT_CHILDREN,
- {"kubeflow-pipelines-ready": "False"},
- generate_image_name(ENV_IMAGES_WITH_TAGS["VISUALIZATION_SERVER_IMAGE"],
- ENV_IMAGES_WITH_TAGS["VISUALIZATION_SERVER_TAG"]),
- generate_image_name(ENV_IMAGES_WITH_TAGS["FRONTEND_IMAGE"], ENV_IMAGES_WITH_TAGS["FRONTEND_TAG"]),
- ),
- (
- ENV_IMAGES_WITH_TAGS,
- DATA_CORRECT_CHILDREN,
- {"kubeflow-pipelines-ready": "True"},
- generate_image_name(ENV_IMAGES_WITH_TAGS["VISUALIZATION_SERVER_IMAGE"],
- ENV_IMAGES_WITH_TAGS["VISUALIZATION_SERVER_TAG"]),
- generate_image_name(ENV_IMAGES_WITH_TAGS["FRONTEND_IMAGE"], ENV_IMAGES_WITH_TAGS["FRONTEND_TAG"]),
- ),
- ],
- indirect=["sync_server"]
-)
-def test_sync_server_with_pipeline_enabled(sync_server, data, expected_status,
- expected_visualization_server_image, expected_frontend_server_image):
- """
- Nearly end-to-end test of how Controller serves .sync as a POST
-
- Tests case where metadata.labels.pipelines.kubeflow.org/enabled exists, and thus
- we should produce children
-
- Only does spot checks on children to see if key properties are correct
- """
- server, environ = sync_server
-
- # server.server_address = (url, port_as_integer)
- url = f"http://{server.server_address[0]}:{str(server.server_address[1])}"
- print("url: ", url)
- print("data")
- print(json.dumps(data))
- x = requests.post(url, data=json.dumps(data))
- results = json.loads(x.text)
-
- # Test overall status of whether children are ok
- assert results['status'] == expected_status
-
- # Poke a few children to test things that can vary by environment variable
- assert results['children'][1]["spec"]["template"]["spec"]["containers"][0][
- "image"] == expected_visualization_server_image
- assert results['children'][5]["spec"]["template"]["spec"]["containers"][0][
- "image"] == expected_frontend_server_image
-
-
-@pytest.mark.parametrize(
- "sync_server_from_arguments, data, expected_status, expected_visualization_server_image, "
- "expected_frontend_server_image",
- [
- (
- ENV_IMAGES_WITH_TAGS_AND_ISTIO,
- DATA_CORRECT_CHILDREN,
- {"kubeflow-pipelines-ready": "True"},
- generate_image_name(ENV_IMAGES_WITH_TAGS["VISUALIZATION_SERVER_IMAGE"],
- ENV_IMAGES_WITH_TAGS["VISUALIZATION_SERVER_TAG"]),
- generate_image_name(ENV_IMAGES_WITH_TAGS["FRONTEND_IMAGE"], ENV_IMAGES_WITH_TAGS["FRONTEND_TAG"]),
- ),
- ],
- indirect=["sync_server_from_arguments"]
-)
-def test_sync_server_with_direct_passing_of_settings(
- sync_server_from_arguments, data, expected_status, expected_visualization_server_image,
- expected_frontend_server_image):
- """
- Nearly end-to-end test of how Controller serves .sync as a POST, taking variables as arguments
-
- Only does spot checks on children to see if key properties are correct
- """
- server, environ = sync_server_from_arguments
-
- # server.server_address = (url, port_as_integer)
- url = f"http://{server.server_address[0]}:{str(server.server_address[1])}"
- print("url: ", url)
- print("data")
- print(json.dumps(data))
- x = requests.post(url, data=json.dumps(data))
- results = json.loads(x.text)
-
- # Test overall status of whether children are ok
- assert results['status'] == expected_status
-
- # Poke a few children to test things that can vary by environment variable
- assert results['children'][1]["spec"]["template"]["spec"]["containers"][0][
- "image"] == expected_visualization_server_image
- assert results['children'][5]["spec"]["template"]["spec"]["containers"][0][
- "image"] == expected_frontend_server_image
-
-
-@pytest.mark.parametrize(
- "sync_server, data, expected_status, expected_children",
- [
- (ENV_IMAGES_WITH_TAGS, DATA_MISSING_PIPELINE_ENABLED, {}, []),
- ],
- indirect=["sync_server"]
-)
-def test_sync_server_without_pipeline_enabled(sync_server, data, expected_status,
- expected_children):
- """
- Nearly end-to-end test of how Controller serves .sync as a POST
-
- Tests case where metadata.labels.pipelines.kubeflow.org/enabled does not
- exist and thus server returns an empty reply
- """
- server, environ = sync_server
-
- # server.server_address = (url, port_as_integer)
- url = f"http://{server.server_address[0]}:{str(server.server_address[1])}"
- x = requests.post(url, data=json.dumps(data))
- results = json.loads(x.text)
-
- # Test overall status of whether children are ok
- assert results['status'] == expected_status
- assert results['children'] == expected_children
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/pipelines-ui/cluster-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/pipelines-ui/cluster-role.yaml
deleted file mode 100644
index dc352c9..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/pipelines-ui/cluster-role.yaml
+++ /dev/null
@@ -1,42 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- name: ml-pipeline-ui
-rules:
-- apiGroups:
- - ""
- resources:
- - pods
- - pods/log
- verbs:
- - get
-- apiGroups:
- - ""
- resources:
- - events
- verbs:
- - list
-- apiGroups:
- - ""
- resources:
- - secrets
- verbs:
- - get
- - list
-- apiGroups:
- - "kubeflow.org"
- resources:
- - viewers
- verbs:
- - create
- - get
- - list
- - watch
- - delete
-- apiGroups:
- - "argoproj.io"
- resources:
- - workflows
- verbs:
- - get
- - list
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/pipelines-ui/configmap-patch.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/pipelines-ui/configmap-patch.yaml
deleted file mode 100644
index 11f1f55..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/pipelines-ui/configmap-patch.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: ml-pipeline-ui-configmap
-data:
- # Temporary workarounds:
- # 1. Using default-editor because default-viewer isn't bound to workload identity
- viewer-pod-template.json: |-
- {
- "spec": {
- "serviceAccountName": "default-editor"
- }
- }
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/pipelines-ui/deployment-patch.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/pipelines-ui/deployment-patch.yaml
deleted file mode 100644
index 0403cc3..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/pipelines-ui/deployment-patch.yaml
+++ /dev/null
@@ -1,34 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: ml-pipeline-ui
-spec:
- template:
- spec:
- volumes:
- - name: config-volume
- configMap:
- name: ml-pipeline-ui-configmap
- containers:
- - name: ml-pipeline-ui
- env:
- - name: VIEWER_TENSORBOARD_POD_TEMPLATE_SPEC_PATH
- value: /etc/config/viewer-pod-template.json
- - name: DEPLOYMENT
- value: KUBEFLOW
- - name: ARTIFACTS_SERVICE_PROXY_NAME
- value: ml-pipeline-ui-artifact
- - name: ARTIFACTS_SERVICE_PROXY_PORT
- value: '80'
- - name: ARTIFACTS_SERVICE_PROXY_ENABLED
- value: 'true'
- - name: ENABLE_AUTHZ
- value: 'true'
- - name: KUBEFLOW_USERID_HEADER
- value: kubeflow-userid
- - name: KUBEFLOW_USERID_PREFIX
- value: ""
- volumeMounts:
- - name: config-volume
- mountPath: /etc/config
- readOnly: true
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/pipelines-ui/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/pipelines-ui/kustomization.yaml
deleted file mode 100644
index c84d97c..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/pipelines-ui/kustomization.yaml
+++ /dev/null
@@ -1,8 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-namespace: kubeflow
-commonLabels:
- app: ml-pipeline-ui
-resources:
-- cluster-role.yaml
-- cluster-role-binding.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/scheduled-workflow/cluster-role-binding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/scheduled-workflow/cluster-role-binding.yaml
deleted file mode 100644
index 0495d00..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/scheduled-workflow/cluster-role-binding.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: ml-pipeline-scheduledworkflow-binding
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: ml-pipeline-scheduledworkflow-role
-subjects:
-- kind: ServiceAccount
- name: ml-pipeline-scheduledworkflow
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/scheduled-workflow/cluster-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/scheduled-workflow/cluster-role.yaml
deleted file mode 100644
index cffc67f..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/scheduled-workflow/cluster-role.yaml
+++ /dev/null
@@ -1,72 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- name: ml-pipeline-scheduledworkflow-role
-rules:
-- apiGroups:
- - argoproj.io
- resources:
- - workflows
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
-- apiGroups:
- - kubeflow.org
- resources:
- - scheduledworkflows
- - scheduledworkflows/finalizers
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
-- apiGroups:
- - ''
- resources:
- - events
- verbs:
- - create
- - patch
-- apiGroups:
- - ''
- resources:
- - namespaces
- verbs:
- - get
-- apiGroups:
- - tekton.dev
- resources:
- - pipelineruns
- - taskruns
- - conditions
- - runs
- - customruns
- - tasks
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
-- apiGroups:
- - custom.tekton.dev
- resources:
- - pipelineloops
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/scheduled-workflow/deployment-patch.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/scheduled-workflow/deployment-patch.yaml
deleted file mode 100644
index d47f934..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/scheduled-workflow/deployment-patch.yaml
+++ /dev/null
@@ -1,19 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: ml-pipeline-scheduledworkflow
-spec:
- template:
- spec:
- containers:
- - name: ml-pipeline-scheduledworkflow
- env:
- - name: NAMESPACE
- value: '' # Empty namespace let viewer controller watch all namespaces
- valueFrom: null # HACK: https://github.com/kubernetes-sigs/kustomize/issues/2606
- - name: KUBEFLOW_USERID_HEADER
- value: kubeflow-userid
- - name: KUBEFLOW_USERID_PREFIX
- value: ""
- - name: MULTIUSER
- value: "true"
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/scheduled-workflow/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/scheduled-workflow/kustomization.yaml
deleted file mode 100644
index ad2710f..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/scheduled-workflow/kustomization.yaml
+++ /dev/null
@@ -1,6 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-namespace: kubeflow
-resources:
-- cluster-role.yaml
-- cluster-role-binding.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/view-edit-cluster-roles.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/view-edit-cluster-roles.yaml
deleted file mode 100644
index abb531e..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/view-edit-cluster-roles.yaml
+++ /dev/null
@@ -1,141 +0,0 @@
-# NOTE: IMPORTANT
-# We need to separate out actual rules from aggregation rules due to
-# https://github.com/kubernetes/kubernetes/issues/65171
-# TL;DR: We can't have both aggregation and rules in a [Cluster]Role. When that
-# is the case, the rules get ignored.
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- labels:
- rbac.authorization.kubeflow.org/aggregate-to-kubeflow-edit: "true"
- name: kubeflow-pipelines-edit
-aggregationRule:
- clusterRoleSelectors:
- - matchLabels:
- rbac.authorization.kubeflow.org/aggregate-to-kubeflow-pipelines-edit: "true"
-rules: []
-
----
-
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- labels:
- rbac.authorization.kubeflow.org/aggregate-to-kubeflow-pipelines-edit: "true"
- rbac.authorization.kubeflow.org/aggregate-to-kubeflow-view: "true"
- name: kubeflow-pipelines-view
-aggregationRule:
- clusterRoleSelectors:
- - matchLabels:
- rbac.authorization.kubeflow.org/aggregate-to-kubeflow-pipelines-view: "true"
-rules: []
-
----
-
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- labels:
- rbac.authorization.kubeflow.org/aggregate-to-kubeflow-pipelines-edit: "true"
- name: aggregate-to-kubeflow-pipelines-edit
-rules:
-- apiGroups:
- - pipelines.kubeflow.org
- resources:
- - pipelines
- - pipelines/versions
- verbs:
- - create
- - delete
- - update
-- apiGroups:
- - pipelines.kubeflow.org
- resources:
- - experiments
- verbs:
- - archive
- - create
- - delete
- - unarchive
-- apiGroups:
- - pipelines.kubeflow.org
- resources:
- - runs
- verbs:
- - archive
- - create
- - delete
- - retry
- - terminate
- - unarchive
- - reportMetrics
- - readArtifact
-- apiGroups:
- - pipelines.kubeflow.org
- resources:
- - jobs
- verbs:
- - create
- - delete
- - disable
- - enable
-- apiGroups:
- - kubeflow.org
- verbs:
- - '*'
- resources:
- - scheduledworkflows
-- apiGroups:
- - argoproj.io
- verbs:
- - '*'
- resources:
- - cronworkflows
- - cronworkflows/finalizers
- - workflows
- - workflows/finalizers
- - workfloweventbindings
- - workflowtemplates
-
----
-
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- labels:
- rbac.authorization.kubeflow.org/aggregate-to-kubeflow-pipelines-view: "true"
- name: aggregate-to-kubeflow-pipelines-view
-rules:
-- apiGroups:
- - pipelines.kubeflow.org
- resources:
- - pipelines
- - pipelines/versions
- - experiments
- - jobs
- verbs:
- - get
- - list
-- apiGroups:
- - pipelines.kubeflow.org
- resources:
- - runs
- verbs:
- - get
- - list
- - readArtifact
-- apiGroups:
- - kubeflow.org
- resources:
- - viewers
- verbs:
- - create
- - get
- - delete
-- apiGroups:
- - pipelines.kubeflow.org
- resources:
- - visualizations
- verbs:
- - create
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/viewer-controller/cluster-role-binding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/viewer-controller/cluster-role-binding.yaml
deleted file mode 100644
index 5e325bf..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/viewer-controller/cluster-role-binding.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: ml-pipeline-viewer-crd-binding
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: ml-pipeline-viewer-controller-role
-subjects:
-- kind: ServiceAccount
- name: ml-pipeline-viewer-crd-service-account
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/viewer-controller/cluster-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/viewer-controller/cluster-role.yaml
deleted file mode 100644
index 9e9b68a..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/viewer-controller/cluster-role.yaml
+++ /dev/null
@@ -1,31 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- name: ml-pipeline-viewer-controller-role
-rules:
-- apiGroups:
- - '*'
- resources:
- - deployments
- - services
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
-- apiGroups:
- - kubeflow.org
- resources:
- - viewers
- - viewers/finalizers
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/viewer-controller/deployment-patch.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/viewer-controller/deployment-patch.yaml
deleted file mode 100644
index 73e5d10..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/viewer-controller/deployment-patch.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: ml-pipeline-viewer-crd
-spec:
- template:
- spec:
- containers:
- - name: ml-pipeline-viewer-crd
- env:
- - name: NAMESPACE
- value: '' # Empty namespace let viewer controller watch all namespaces
- valueFrom: null
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/viewer-controller/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/viewer-controller/kustomization.yaml
deleted file mode 100644
index b1f6546..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/viewer-controller/kustomization.yaml
+++ /dev/null
@@ -1,5 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
-- cluster-role.yaml
-- cluster-role-binding.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/virtual-service.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/virtual-service.yaml
deleted file mode 100644
index 2b7991a..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/virtual-service.yaml
+++ /dev/null
@@ -1,21 +0,0 @@
-apiVersion: networking.istio.io/v1alpha3
-kind: VirtualService
-metadata:
- name: ml-pipeline-ui
-spec:
- gateways:
- - kubeflow-gateway
- hosts:
- - '*'
- http:
- - match:
- - uri:
- prefix: /pipeline
- rewrite:
- uri: /pipeline
- route:
- - destination:
- host: ml-pipeline-ui.$(kfp-namespace).svc.cluster.local
- port:
- number: 80
- timeout: 300s
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/base/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/base/kustomization.yaml
deleted file mode 100644
index 9f803d0..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/base/kustomization.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
- - metadata-grpc-configmap.yaml
- - metadata-grpc-deployment.yaml
- - metadata-grpc-service.yaml
- - metadata-envoy-deployment.yaml
- - metadata-envoy-service.yaml
- - metadata-grpc-sa.yaml
-namespace: kubeflow
-images:
- - name: gcr.io/ml-pipeline/metadata-envoy
- newTag: 2.0.5
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/base/metadata-envoy-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/base/metadata-envoy-deployment.yaml
deleted file mode 100644
index e087d80..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/base/metadata-envoy-deployment.yaml
+++ /dev/null
@@ -1,26 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: metadata-envoy-deployment
- labels:
- component: metadata-envoy
-spec:
- replicas: 1
- selector:
- matchLabels:
- component: metadata-envoy
- template:
- metadata:
- labels:
- component: metadata-envoy
- annotations:
- sidecar.istio.io/inject: "false"
- spec:
- containers:
- - name: container
- image: gcr.io/ml-pipeline/metadata-envoy:dummy
- ports:
- - name: md-envoy
- containerPort: 9090
- - name: envoy-admin
- containerPort: 9901
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/base/metadata-envoy-service.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/base/metadata-envoy-service.yaml
deleted file mode 100644
index 42166c8..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/base/metadata-envoy-service.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-kind: Service
-apiVersion: v1
-metadata:
- labels:
- app: metadata-envoy
- name: metadata-envoy-service
-spec:
- selector:
- component: metadata-envoy
- type: ClusterIP
- ports:
- - port: 9090
- protocol: TCP
- name: md-envoy
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/base/metadata-grpc-configmap.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/base/metadata-grpc-configmap.yaml
deleted file mode 100644
index 08cc7e6..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/base/metadata-grpc-configmap.yaml
+++ /dev/null
@@ -1,9 +0,0 @@
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: metadata-grpc-configmap
- labels:
- component: metadata-grpc-server
-data:
- METADATA_GRPC_SERVICE_HOST: "metadata-grpc-service"
- METADATA_GRPC_SERVICE_PORT: "8080"
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/base/metadata-grpc-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/base/metadata-grpc-deployment.yaml
deleted file mode 100644
index 4ed3444..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/base/metadata-grpc-deployment.yaml
+++ /dev/null
@@ -1,77 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: metadata-grpc-deployment
- labels:
- component: metadata-grpc-server
-spec:
- replicas: 1
- selector:
- matchLabels:
- component: metadata-grpc-server
- template:
- metadata:
- labels:
- component: metadata-grpc-server
- spec:
- containers:
- - name: container
- # ! Sync to the same MLMD version:
- # * backend/metadata_writer/requirements.in and requirements.txt
- # * @kubeflow/frontend/src/mlmd/generated
- # * .cloudbuild.yaml and .release.cloudbuild.yaml
- # * manifests/kustomize/base/metadata/base/metadata-grpc-deployment.yaml
- # * test/tag_for_hosted.sh
- image: gcr.io/tfx-oss-public/ml_metadata_store_server:1.5.0
- env:
- - name: DBCONFIG_USER
- valueFrom:
- secretKeyRef:
- name: mysql-secret
- key: username
- - name: DBCONFIG_PASSWORD
- valueFrom:
- secretKeyRef:
- name: mysql-secret
- key: password
- - name: MYSQL_DATABASE
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: mlmdDb
- - name: MYSQL_HOST
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: dbHost
- - name: MYSQL_PORT
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: dbPort
- command: ["/bin/metadata_store_server"]
- args: ["--grpc_port=8080",
- "--mysql_config_database=$(MYSQL_DATABASE)",
- "--mysql_config_host=$(MYSQL_HOST)",
- "--mysql_config_port=$(MYSQL_PORT)",
- "--mysql_config_user=$(DBCONFIG_USER)",
- "--mysql_config_password=$(DBCONFIG_PASSWORD)",
- "--enable_database_upgrade=true"
- ]
- ports:
- - name: grpc-api
- containerPort: 8080
- livenessProbe:
- tcpSocket:
- port: grpc-api
- initialDelaySeconds: 3
- periodSeconds: 5
- timeoutSeconds: 2
- readinessProbe:
- tcpSocket:
- port: grpc-api
- initialDelaySeconds: 3
- periodSeconds: 5
- timeoutSeconds: 2
- serviceAccountName: metadata-grpc-server
-
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/base/metadata-grpc-sa.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/base/metadata-grpc-sa.yaml
deleted file mode 100644
index c8e8d1f..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/base/metadata-grpc-sa.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: metadata-grpc-server
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/base/metadata-grpc-service.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/base/metadata-grpc-service.yaml
deleted file mode 100644
index 7e7b73b..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/base/metadata-grpc-service.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-kind: Service
-apiVersion: v1
-metadata:
- labels:
- app: metadata
- name: metadata-grpc-service
-spec:
- selector:
- component: metadata-grpc-server
- type: ClusterIP
- ports:
- - port: 8080
- protocol: TCP
- name: grpc-api
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/options/istio/destination-rule.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/options/istio/destination-rule.yaml
deleted file mode 100644
index e2ce8ca..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/options/istio/destination-rule.yaml
+++ /dev/null
@@ -1,9 +0,0 @@
-apiVersion: networking.istio.io/v1alpha3
-kind: DestinationRule
-metadata:
- name: metadata-grpc-service
-spec:
- host: metadata-grpc-service.kubeflow.svc.cluster.local
- trafficPolicy:
- tls:
- mode: ISTIO_MUTUAL
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/options/istio/istio-authorization-policy.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/options/istio/istio-authorization-policy.yaml
deleted file mode 100644
index 8f41789..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/options/istio/istio-authorization-policy.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: security.istio.io/v1beta1
-kind: AuthorizationPolicy
-metadata:
- name: metadata-grpc-service
-spec:
- action: ALLOW
- selector:
- matchLabels:
- component: metadata-grpc-server
- rules:
- - {}
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/options/istio/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/options/istio/kustomization.yaml
deleted file mode 100644
index 029a693..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/options/istio/kustomization.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
-- istio-authorization-policy.yaml
-- destination-rule.yaml
-- virtual-service.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/options/istio/virtual-service.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/options/istio/virtual-service.yaml
deleted file mode 100644
index 01e000b..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/options/istio/virtual-service.yaml
+++ /dev/null
@@ -1,21 +0,0 @@
-apiVersion: networking.istio.io/v1alpha3
-kind: VirtualService
-metadata:
- name: metadata-grpc
- namespace: kubeflow
-spec:
- gateways:
- - kubeflow-gateway
- hosts:
- - '*'
- http:
- - match:
- - uri:
- prefix: /ml_metadata
- rewrite:
- uri: /ml_metadata
- route:
- - destination:
- host: metadata-envoy-service.kubeflow.svc.cluster.local
- port:
- number: 9090
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/overlays/db/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/overlays/db/kustomization.yaml
deleted file mode 100644
index fa67b8a..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/overlays/db/kustomization.yaml
+++ /dev/null
@@ -1,39 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-namespace: kubeflow
-
-bases:
-- ../../base
-resources:
-- metadata-db-pvc.yaml
-- metadata-db-deployment.yaml
-- metadata-db-service.yaml
-
-patchesStrategicMerge:
-- patches/metadata-grpc-deployment.yaml
-
-configMapGenerator:
-- name: metadata-db-parameters
- envs:
- - params.env
-secretGenerator:
-- name: metadata-db-secrets
- envs:
- - secrets.env
-generatorOptions:
- disableNameSuffixHash: true
-
-
-images:
-- name: mysql
- newName: mysql
- newTag: 8.0.3
-
-vars:
-- name: MLMD_DB_HOST
- objref:
- kind: Service
- name: metadata-db
- apiVersion: v1
- fieldref:
- fieldpath: metadata.name
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/overlays/db/metadata-db-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/overlays/db/metadata-db-deployment.yaml
deleted file mode 100644
index f5a7332..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/overlays/db/metadata-db-deployment.yaml
+++ /dev/null
@@ -1,52 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: metadata-db
- labels:
- component: db
-spec:
- selector:
- matchLabels:
- component: db
- replicas: 1
- strategy:
- type: Recreate
- template:
- metadata:
- name: db
- labels:
- component: db
- annotations:
- sidecar.istio.io/inject: "false"
- spec:
- containers:
- - name: db-container
- image: mysql:8.0.3
- args:
- - --datadir
- - /var/lib/mysql/datadir
- envFrom:
- - configMapRef:
- name: metadata-db-parameters
- - secretRef:
- name: metadata-db-secrets
- ports:
- - name: dbapi
- containerPort: 3306
- readinessProbe:
- exec:
- command:
- - "/bin/bash"
- - "-c"
- - "mysql -D $$MYSQL_DATABASE -p$$MYSQL_ROOT_PASSWORD -e 'SELECT 1'"
- initialDelaySeconds: 5
- periodSeconds: 2
- timeoutSeconds: 1
- volumeMounts:
- - name: metadata-mysql
- mountPath: /var/lib/mysql
- volumes:
- - name: metadata-mysql
- persistentVolumeClaim:
- claimName: metadata-mysql
-
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/overlays/db/metadata-db-pvc.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/overlays/db/metadata-db-pvc.yaml
deleted file mode 100644
index b1c083d..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/overlays/db/metadata-db-pvc.yaml
+++ /dev/null
@@ -1,10 +0,0 @@
-apiVersion: v1
-kind: PersistentVolumeClaim
-metadata:
- name: metadata-mysql
-spec:
- accessModes:
- - ReadWriteOnce
- resources:
- requests:
- storage: 10Gi
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/overlays/db/metadata-db-service.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/overlays/db/metadata-db-service.yaml
deleted file mode 100644
index b7a6401..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/overlays/db/metadata-db-service.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: v1
-kind: Service
-metadata:
- name: metadata-db
- labels:
- component: db
-spec:
- type: ClusterIP
- ports:
- - port: 3306
- protocol: TCP
- name: dbapi
- selector:
- component: db
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/overlays/db/params.env b/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/overlays/db/params.env
deleted file mode 100644
index 5ab2adb..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/overlays/db/params.env
+++ /dev/null
@@ -1,3 +0,0 @@
-MYSQL_DATABASE=metadb
-MYSQL_PORT=3306
-MYSQL_ALLOW_EMPTY_PASSWORD=true
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/overlays/db/patches/metadata-grpc-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/overlays/db/patches/metadata-grpc-deployment.yaml
deleted file mode 100644
index 03023a3..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/overlays/db/patches/metadata-grpc-deployment.yaml
+++ /dev/null
@@ -1,25 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: metadata-grpc-deployment
-spec:
- template:
- spec:
- containers:
- - name: container
- # Remove existing environment variables
- env:
- - $patch: replace
- envFrom:
- - configMapRef:
- name: metadata-db-parameters
- - secretRef:
- name: metadata-db-secrets
- - configMapRef:
- name: metadata-grpc-configmap
- args: ["--grpc_port=$(METADATA_GRPC_SERVICE_PORT)",
- "--mysql_config_host=$(MLMD_DB_HOST)",
- "--mysql_config_database=$(MYSQL_DATABASE)",
- "--mysql_config_port=$(MYSQL_PORT)",
- "--mysql_config_user=$(MYSQL_USER_NAME)",
- "--mysql_config_password=$(MYSQL_ROOT_PASSWORD)"]
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/overlays/db/secrets.env b/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/overlays/db/secrets.env
deleted file mode 100644
index 44ac2ee..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/metadata/overlays/db/secrets.env
+++ /dev/null
@@ -1,2 +0,0 @@
-MYSQL_USER_NAME=root
-MYSQL_ROOT_PASSWORD=test
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/cluster-scoped/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/cluster-scoped/kustomization.yaml
deleted file mode 100644
index 9a92c2c..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/cluster-scoped/kustomization.yaml
+++ /dev/null
@@ -1,5 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
-- scheduled-workflow-crd.yaml
-- viewer-crd.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/cluster-scoped/scheduled-workflow-crd.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/cluster-scoped/scheduled-workflow-crd.yaml
deleted file mode 100644
index 906b029..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/cluster-scoped/scheduled-workflow-crd.yaml
+++ /dev/null
@@ -1,41 +0,0 @@
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- name: scheduledworkflows.kubeflow.org
- labels:
- kubeflow/crd-install: "true"
-spec:
- group: kubeflow.org
- names:
- kind: ScheduledWorkflow
- listKind: ScheduledWorkflowList
- plural: scheduledworkflows
- singular: scheduledworkflow
- shortNames:
- - swf
- scope: Namespaced
- versions:
- - name: v1beta1
- schema:
- openAPIV3Schema:
- properties:
- apiVersion:
- type: string
- kind:
- type: string
- metadata:
- type: object
- spec:
- type: object
- x-kubernetes-preserve-unknown-fields: true
- x-kubernetes-map-type: atomic
- status:
- type: object
- x-kubernetes-preserve-unknown-fields: true
- x-kubernetes-map-type: atomic
- required:
- - spec
- - status
- type: object
- served: true
- storage: true
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/cluster-scoped/viewer-crd.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/cluster-scoped/viewer-crd.yaml
deleted file mode 100644
index 917962a..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/cluster-scoped/viewer-crd.yaml
+++ /dev/null
@@ -1,36 +0,0 @@
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- name: viewers.kubeflow.org
- labels:
- kubeflow/crd-install: "true"
-spec:
- group: kubeflow.org
- names:
- kind: Viewer
- listKind: ViewerList
- plural: viewers
- singular: viewer
- shortNames:
- - vi
- scope: Namespaced
- versions:
- - name: v1beta1
- schema:
- openAPIV3Schema:
- properties:
- apiVersion:
- type: string
- kind:
- type: string
- metadata:
- type: object
- spec:
- type: object
- x-kubernetes-preserve-unknown-fields: true
- x-kubernetes-map-type: atomic
- required:
- - spec
- type: object
- served: true
- storage: true
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/container-builder-sa.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/container-builder-sa.yaml
deleted file mode 100644
index aa65bd9..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/container-builder-sa.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: kubeflow-pipelines-container-builder
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/kfp-launcher-configmap.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/kfp-launcher-configmap.yaml
deleted file mode 100644
index 13f6051..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/kfp-launcher-configmap.yaml
+++ /dev/null
@@ -1,6 +0,0 @@
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: kfp-launcher
-data:
- defaultPipelineRoot: $(kfp-default-pipeline-root)
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/kustomization.yaml
deleted file mode 100644
index 4133ae4..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/kustomization.yaml
+++ /dev/null
@@ -1,50 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-# bases:
-# - metadata-writer
-resources:
- - ml-pipeline-apiserver-deployment.yaml
- - ml-pipeline-apiserver-role.yaml
- - ml-pipeline-apiserver-rolebinding.yaml
- - ml-pipeline-apiserver-sa.yaml
- - ml-pipeline-apiserver-service.yaml
- - ml-pipeline-persistenceagent-deployment.yaml
- - ml-pipeline-persistenceagent-role.yaml
- - ml-pipeline-persistenceagent-rolebinding.yaml
- - ml-pipeline-persistenceagent-sa.yaml
- - ml-pipeline-scheduledworkflow-deployment.yaml
- - ml-pipeline-scheduledworkflow-role.yaml
- - ml-pipeline-scheduledworkflow-rolebinding.yaml
- - ml-pipeline-scheduledworkflow-sa.yaml
- - ml-pipeline-ui-deployment.yaml
- - ml-pipeline-ui-configmap.yaml
- - ml-pipeline-ui-role.yaml
- - ml-pipeline-ui-rolebinding.yaml
- - ml-pipeline-ui-sa.yaml
- - ml-pipeline-ui-service.yaml
- - ml-pipeline-viewer-crd-role.yaml
- - ml-pipeline-viewer-crd-rolebinding.yaml
- - ml-pipeline-viewer-crd-deployment.yaml
- - ml-pipeline-viewer-crd-sa.yaml
- - ml-pipeline-visualization-deployment.yaml
- - ml-pipeline-visualization-sa.yaml
- - ml-pipeline-visualization-service.yaml
- - pipeline-runner-role.yaml
- - pipeline-runner-rolebinding.yaml
- - pipeline-runner-sa.yaml
- - container-builder-sa.yaml
- - viewer-sa.yaml
- - kfp-launcher-configmap.yaml
-images:
- - name: gcr.io/ml-pipeline/api-server
- newTag: 2.0.5
- - name: gcr.io/ml-pipeline/persistenceagent
- newTag: 2.0.5
- - name: gcr.io/ml-pipeline/scheduledworkflow
- newTag: 2.0.5
- - name: gcr.io/ml-pipeline/frontend
- newTag: 2.0.5
- - name: gcr.io/ml-pipeline/viewer-crd-controller
- newTag: 2.0.5
- - name: gcr.io/ml-pipeline/visualization-server
- newTag: 2.0.5
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/metadata-writer/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/metadata-writer/kustomization.yaml
deleted file mode 100644
index 5d4cec9..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/metadata-writer/kustomization.yaml
+++ /dev/null
@@ -1,10 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
- - metadata-writer-deployment.yaml
- - metadata-writer-role.yaml
- - metadata-writer-rolebinding.yaml
- - metadata-writer-sa.yaml
-images:
- - name: gcr.io/ml-pipeline/metadata-writer
- newTag: 2.0.5
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/metadata-writer/metadata-writer-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/metadata-writer/metadata-writer-deployment.yaml
deleted file mode 100644
index c51903d..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/metadata-writer/metadata-writer-deployment.yaml
+++ /dev/null
@@ -1,25 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: metadata-writer
- labels:
- app: metadata-writer
-spec:
- replicas: 1
- selector:
- matchLabels:
- app: metadata-writer
- template:
- metadata:
- labels:
- app: metadata-writer
- spec:
- containers:
- - name: main
- image: gcr.io/ml-pipeline/metadata-writer:dummy
- env:
- - name: NAMESPACE_TO_WATCH
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- serviceAccountName: kubeflow-pipelines-metadata-writer
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/metadata-writer/metadata-writer-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/metadata-writer/metadata-writer-role.yaml
deleted file mode 100644
index 06317b0..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/metadata-writer/metadata-writer-role.yaml
+++ /dev/null
@@ -1,33 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata:
- labels:
- app: kubeflow-pipelines-metadata-writer-role
- name: kubeflow-pipelines-metadata-writer-role
-rules:
-- apiGroups:
- - ""
- resources:
- - pods
- verbs:
- - get
- - list
- - watch
- - update
- - patch
-- apiGroups:
- - ""
- resources:
- - configmaps
- verbs:
- - get
-- apiGroups:
- - argoproj.io
- resources:
- - workflows
- verbs:
- - get
- - list
- - watch
- - update
- - patch
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/metadata-writer/metadata-writer-rolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/metadata-writer/metadata-writer-rolebinding.yaml
deleted file mode 100644
index 5a6c1fe..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/metadata-writer/metadata-writer-rolebinding.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: kubeflow-pipelines-metadata-writer-binding
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: kubeflow-pipelines-metadata-writer-role
-subjects:
-- kind: ServiceAccount
- name: kubeflow-pipelines-metadata-writer
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/metadata-writer/metadata-writer-sa.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/metadata-writer/metadata-writer-sa.yaml
deleted file mode 100644
index 7781294..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/metadata-writer/metadata-writer-sa.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: kubeflow-pipelines-metadata-writer
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-apiserver-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-apiserver-deployment.yaml
deleted file mode 100644
index b631cca..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-apiserver-deployment.yaml
+++ /dev/null
@@ -1,131 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- labels:
- app: ml-pipeline
- name: ml-pipeline
-spec:
- selector:
- matchLabels:
- app: ml-pipeline
- template:
- metadata:
- labels:
- app: ml-pipeline
- annotations:
- cluster-autoscaler.kubernetes.io/safe-to-evict: "true"
- spec:
- containers:
- - env:
- - name: LOG_LEVEL
- value: "info"
- - name: AUTO_UPDATE_PIPELINE_DEFAULT_VERSION
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: autoUpdatePipelineDefaultVersion
- - name: POD_NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- - name: OBJECTSTORECONFIG_SECURE
- value: "false"
- - name: OBJECTSTORECONFIG_BUCKETNAME
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: bucketName
- - name: DBCONFIG_USER
- valueFrom:
- secretKeyRef:
- name: mysql-secret
- key: username
- - name: DBCONFIG_PASSWORD
- valueFrom:
- secretKeyRef:
- name: mysql-secret
- key: password
- - name: DBCONFIG_DBNAME
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: pipelineDb
- - name: DBCONFIG_HOST
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: dbHost
- - name: DBCONFIG_PORT
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: dbPort
- - name: DBCONFIG_CONMAXLIFETIME
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: ConMaxLifeTime
- - name: OBJECTSTORECONFIG_ACCESSKEY
- valueFrom:
- secretKeyRef:
- name: mlpipeline-minio-artifact
- key: accesskey
- - name: OBJECTSTORECONFIG_SECRETACCESSKEY
- valueFrom:
- secretKeyRef:
- name: mlpipeline-minio-artifact
- key: secretkey
- - name: EXECUTIONTYPE
- value: Workflow
- image: gcr.io/ml-pipeline/api-server:dummy
- imagePullPolicy: IfNotPresent
- name: ml-pipeline-api-server
- ports:
- - name: http
- containerPort: 8888
- - name: grpc
- containerPort: 8887
- readinessProbe:
- exec:
- command:
- - wget
- - -q # quiet
- - -S # show server response
- - -O
- - "-" # Redirect output to stdout
- - http://localhost:8888/apis/v1beta1/healthz
- initialDelaySeconds: 3
- periodSeconds: 5
- timeoutSeconds: 2
- livenessProbe:
- exec:
- command:
- - wget
- - -q # quiet
- - -S # show server response
- - -O
- - "-" # Redirect output to stdout
- - http://localhost:8888/apis/v1beta1/healthz
- initialDelaySeconds: 3
- periodSeconds: 5
- timeoutSeconds: 2
- # This startup probe provides up to a 60 second grace window before the
- # liveness probe takes over to accomodate the occasional database
- # migration.
- startupProbe:
- exec:
- command:
- - wget
- - -q # quiet
- - -S # show server response
- - -O
- - "-" # Redirect output to stdout
- - http://localhost:8888/apis/v1beta1/healthz
- failureThreshold: 12
- periodSeconds: 5
- timeoutSeconds: 2
- resources:
- requests:
- cpu: 250m
- memory: 500Mi
- serviceAccountName: ml-pipeline
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-apiserver-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-apiserver-role.yaml
deleted file mode 100644
index 3942a14..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-apiserver-role.yaml
+++ /dev/null
@@ -1,79 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata:
- labels:
- app: ml-pipeline
- name: ml-pipeline
-rules:
-- apiGroups:
- - ""
- resources:
- - pods
- - pods/log
- verbs:
- - get
- - list
- - delete
-- apiGroups:
- - argoproj.io
- resources:
- - workflows
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
-- apiGroups:
- - kubeflow.org
- resources:
- - scheduledworkflows
- verbs:
- - create
- - get
- - list
- - update
- - patch
- - delete
-- apiGroups:
- - authorization.k8s.io
- resources:
- - subjectaccessreviews
- verbs:
- - create
-- apiGroups:
- - authentication.k8s.io
- resources:
- - tokenreviews
- verbs:
- - create
-- apiGroups:
- - tekton.dev
- resources:
- - pipelineruns
- - taskruns
- - conditions
- - runs
- - tasks
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
-- apiGroups:
- - custom.tekton.dev
- resources:
- - pipelineloops
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-apiserver-rolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-apiserver-rolebinding.yaml
deleted file mode 100644
index c4ef4f5..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-apiserver-rolebinding.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- labels:
- app: ml-pipeline
- name: ml-pipeline
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: ml-pipeline
-subjects:
-- kind: ServiceAccount
- name: ml-pipeline
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-apiserver-sa.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-apiserver-sa.yaml
deleted file mode 100644
index 95ff314..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-apiserver-sa.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: ml-pipeline
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-apiserver-service.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-apiserver-service.yaml
deleted file mode 100644
index 51c4f85..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-apiserver-service.yaml
+++ /dev/null
@@ -1,20 +0,0 @@
-apiVersion: v1
-kind: Service
-metadata:
- name: ml-pipeline
- annotations:
- prometheus.io/port: "8888"
- prometheus.io/scheme: http
- prometheus.io/scrape: "true"
-spec:
- ports:
- - name: http
- port: 8888
- protocol: TCP
- targetPort: 8888
- - name: grpc
- port: 8887
- protocol: TCP
- targetPort: 8887
- selector:
- app: ml-pipeline
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-persistenceagent-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-persistenceagent-deployment.yaml
deleted file mode 100644
index 97815ce..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-persistenceagent-deployment.yaml
+++ /dev/null
@@ -1,43 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- labels:
- app: ml-pipeline-persistenceagent
- name: ml-pipeline-persistenceagent
-spec:
- selector:
- matchLabels:
- app: ml-pipeline-persistenceagent
- template:
- metadata:
- labels:
- app: ml-pipeline-persistenceagent
- annotations:
- cluster-autoscaler.kubernetes.io/safe-to-evict: "true"
- spec:
- containers:
- - env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- - name: TTL_SECONDS_AFTER_WORKFLOW_FINISH
- value: "86400"
- - name: NUM_WORKERS
- value: "2"
- - name: KUBEFLOW_USERID_HEADER
- value: kubeflow-userid
- - name: KUBEFLOW_USERID_PREFIX
- value: ""
- - name: EXECUTIONTYPE
- value: Workflow
- - name: LOG_LEVEL
- value: "info"
- image: gcr.io/ml-pipeline/persistenceagent:dummy
- imagePullPolicy: IfNotPresent
- name: ml-pipeline-persistenceagent
- resources:
- requests:
- cpu: 120m
- memory: 500Mi
- serviceAccountName: ml-pipeline-persistenceagent
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-persistenceagent-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-persistenceagent-role.yaml
deleted file mode 100644
index 92c36be..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-persistenceagent-role.yaml
+++ /dev/null
@@ -1,52 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata:
- name: ml-pipeline-persistenceagent-role
-rules:
-- apiGroups:
- - argoproj.io
- resources:
- - workflows
- verbs:
- - get
- - list
- - watch
-- apiGroups:
- - kubeflow.org
- resources:
- - scheduledworkflows
- verbs:
- - get
- - list
- - watch
-- apiGroups:
- - pipelines.kubeflow.org
- resources:
- - scheduledworkflows
- - workflows
- verbs:
- - report
-- apiGroups:
- - tekton.dev
- resources:
- - pipelineruns
- - customruns
- - taskruns
- - conditions
- - runs
- - tasks
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
-- apiGroups:
- - pipelines.kubeflow.org
- resources:
- - runs
- verbs:
- - reportMetrics
- - readArtifact
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-persistenceagent-rolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-persistenceagent-rolebinding.yaml
deleted file mode 100644
index a690f20..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-persistenceagent-rolebinding.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: ml-pipeline-persistenceagent-binding
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: ml-pipeline-persistenceagent-role
-subjects:
-- kind: ServiceAccount
- name: ml-pipeline-persistenceagent
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-persistenceagent-sa.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-persistenceagent-sa.yaml
deleted file mode 100644
index 4725287..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-persistenceagent-sa.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: ml-pipeline-persistenceagent
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-scheduledworkflow-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-scheduledworkflow-deployment.yaml
deleted file mode 100644
index 0c68a5a..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-scheduledworkflow-deployment.yaml
+++ /dev/null
@@ -1,36 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- labels:
- app: ml-pipeline-scheduledworkflow
- name: ml-pipeline-scheduledworkflow
-spec:
- selector:
- matchLabels:
- app: ml-pipeline-scheduledworkflow
- template:
- metadata:
- labels:
- app: ml-pipeline-scheduledworkflow
- annotations:
- cluster-autoscaler.kubernetes.io/safe-to-evict: "true"
- spec:
- containers:
- - image: gcr.io/ml-pipeline/scheduledworkflow:dummy
- imagePullPolicy: IfNotPresent
- name: ml-pipeline-scheduledworkflow
- env:
- - name: LOG_LEVEL
- value: "info"
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- - name: CRON_SCHEDULE_TIMEZONE
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: cronScheduleTimezone
- - name: EXECUTIONTYPE
- value: Workflow
- serviceAccountName: ml-pipeline-scheduledworkflow
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-scheduledworkflow-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-scheduledworkflow-role.yaml
deleted file mode 100644
index ac3fb4f..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-scheduledworkflow-role.yaml
+++ /dev/null
@@ -1,73 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata:
- labels:
- app: ml-pipeline-scheduledworkflow-role
- name: ml-pipeline-scheduledworkflow-role
-rules:
-- apiGroups:
- - argoproj.io
- resources:
- - workflows
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
-- apiGroups:
- - kubeflow.org
- resources:
- - scheduledworkflows
- - scheduledworkflows/finalizers
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
-- apiGroups:
- - ""
- resources:
- - namespaces
- verbs:
- - get
-- apiGroups:
- - ''
- resources:
- - events
- verbs:
- - create
- - patch
-- apiGroups:
- - tekton.dev
- resources:
- - pipelineruns
- - taskruns
- - conditions
- - runs
- - tasks
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
-- apiGroups:
- - custom.tekton.dev
- resources:
- - pipelineloops
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-scheduledworkflow-rolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-scheduledworkflow-rolebinding.yaml
deleted file mode 100644
index e9429f3..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-scheduledworkflow-rolebinding.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: ml-pipeline-scheduledworkflow-binding
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: ml-pipeline-scheduledworkflow-role
-subjects:
-- kind: ServiceAccount
- name: ml-pipeline-scheduledworkflow
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-scheduledworkflow-sa.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-scheduledworkflow-sa.yaml
deleted file mode 100644
index 285c137..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-scheduledworkflow-sa.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: ml-pipeline-scheduledworkflow
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-ui-configmap.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-ui-configmap.yaml
deleted file mode 100644
index 85b6422..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-ui-configmap.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: ml-pipeline-ui-configmap
-data:
- viewer-pod-template.json: |-
- {
- "spec": {
- "serviceAccountName": "kubeflow-pipelines-viewer"
- }
- }
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-ui-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-ui-deployment.yaml
deleted file mode 100644
index 8e8923a..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-ui-deployment.yaml
+++ /dev/null
@@ -1,79 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- labels:
- app: ml-pipeline-ui
- name: ml-pipeline-ui
-spec:
- selector:
- matchLabels:
- app: ml-pipeline-ui
- template:
- metadata:
- labels:
- app: ml-pipeline-ui
- annotations:
- cluster-autoscaler.kubernetes.io/safe-to-evict: "true"
- spec:
- volumes:
- - name: config-volume
- configMap:
- name: ml-pipeline-ui-configmap
- containers:
- - image: gcr.io/ml-pipeline/frontend:dummy
- imagePullPolicy: IfNotPresent
- name: ml-pipeline-ui
- ports:
- - containerPort: 3000
- volumeMounts:
- - name: config-volume
- mountPath: /etc/config
- readOnly: true
- env:
- - name: VIEWER_TENSORBOARD_POD_TEMPLATE_SPEC_PATH
- value: /etc/config/viewer-pod-template.json
- - name: MINIO_NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- - name: MINIO_ACCESS_KEY
- valueFrom:
- secretKeyRef:
- name: mlpipeline-minio-artifact
- key: accesskey
- - name: MINIO_SECRET_KEY
- valueFrom:
- secretKeyRef:
- name: mlpipeline-minio-artifact
- key: secretkey
- - name: ALLOW_CUSTOM_VISUALIZATIONS
- value: "true"
- readinessProbe:
- exec:
- command:
- - wget
- - -q # quiet
- - -S # show server response
- - -O
- - "-" # Redirect output to stdout
- - http://localhost:3000/apis/v1beta1/healthz
- initialDelaySeconds: 3
- periodSeconds: 5
- timeoutSeconds: 2
- livenessProbe:
- exec:
- command:
- - wget
- - -q # quiet
- - -S # show server response
- - -O
- - "-" # Redirect output to stdout
- - http://localhost:3000/apis/v1beta1/healthz
- initialDelaySeconds: 3
- periodSeconds: 5
- timeoutSeconds: 2
- resources:
- requests:
- cpu: 10m
- memory: 70Mi
- serviceAccountName: ml-pipeline-ui
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-ui-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-ui-role.yaml
deleted file mode 100644
index 5ff1eeb..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-ui-role.yaml
+++ /dev/null
@@ -1,59 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata:
- labels:
- app: ml-pipeline-ui
- name: ml-pipeline-ui
-rules:
-- apiGroups:
- - ""
- resources:
- - pods
- - pods/log
- verbs:
- - get
-- apiGroups:
- - ""
- resources:
- - events
- verbs:
- - list
-- apiGroups:
- - ""
- resources:
- - secrets
- verbs:
- - get
- - list
-- apiGroups:
- - "kubeflow.org"
- resources:
- - viewers
- verbs:
- - create
- - get
- - list
- - watch
- - delete
-- apiGroups:
- - "argoproj.io"
- resources:
- - workflows
- verbs:
- - get
- - list
-- apiGroups:
- - tekton.dev
- resources:
- - pipelineruns
- - taskruns
- - conditions
- - tasks
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-ui-rolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-ui-rolebinding.yaml
deleted file mode 100644
index e829835..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-ui-rolebinding.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- labels:
- app: ml-pipeline-ui
- name: ml-pipeline-ui
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: ml-pipeline-ui
-subjects:
-- kind: ServiceAccount
- name: ml-pipeline-ui
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-ui-service.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-ui-service.yaml
deleted file mode 100644
index 093ad8c..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-ui-service.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: ml-pipeline-ui
- name: ml-pipeline-ui
-spec:
- ports:
- - name: http
- protocol: TCP
- port: 80
- targetPort: 3000
- selector:
- app: ml-pipeline-ui
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-viewer-crd-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-viewer-crd-deployment.yaml
deleted file mode 100644
index 9e101b9..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-viewer-crd-deployment.yaml
+++ /dev/null
@@ -1,29 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- labels:
- app: ml-pipeline-viewer-crd
- name: ml-pipeline-viewer-crd
-spec:
- selector:
- matchLabels:
- app: ml-pipeline-viewer-crd
- template:
- metadata:
- labels:
- app: ml-pipeline-viewer-crd
- annotations:
- cluster-autoscaler.kubernetes.io/safe-to-evict: "true"
- spec:
- containers:
- - image: gcr.io/ml-pipeline/viewer-crd-controller:dummy
- imagePullPolicy: Always
- name: ml-pipeline-viewer-crd
- env:
- - name: MAX_NUM_VIEWERS
- value: "50"
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- serviceAccountName: ml-pipeline-viewer-crd-service-account
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-viewer-crd-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-viewer-crd-role.yaml
deleted file mode 100644
index fa3e321..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-viewer-crd-role.yaml
+++ /dev/null
@@ -1,31 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata:
- name: ml-pipeline-viewer-controller-role
-rules:
-- apiGroups:
- - '*'
- resources:
- - deployments
- - services
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
-- apiGroups:
- - kubeflow.org
- resources:
- - viewers
- - viewers/finalizers
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-viewer-crd-rolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-viewer-crd-rolebinding.yaml
deleted file mode 100644
index bd1f77a..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-viewer-crd-rolebinding.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: ml-pipeline-viewer-crd-binding
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: ml-pipeline-viewer-controller-role
-subjects:
-- kind: ServiceAccount
- name: ml-pipeline-viewer-crd-service-account
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-viewer-crd-sa.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-viewer-crd-sa.yaml
deleted file mode 100644
index 5dd08f8..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-viewer-crd-sa.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: ml-pipeline-viewer-crd-service-account
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-visualization-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-visualization-deployment.yaml
deleted file mode 100644
index b6d1e11..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-visualization-deployment.yaml
+++ /dev/null
@@ -1,53 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- labels:
- app: ml-pipeline-visualizationserver
- name: ml-pipeline-visualizationserver
-spec:
- selector:
- matchLabels:
- app: ml-pipeline-visualizationserver
- template:
- metadata:
- labels:
- app: ml-pipeline-visualizationserver
- annotations:
- cluster-autoscaler.kubernetes.io/safe-to-evict: "true"
- spec:
- containers:
- - image: gcr.io/ml-pipeline/visualization-server:dummy
- imagePullPolicy: IfNotPresent
- name: ml-pipeline-visualizationserver
- ports:
- - name: http
- containerPort: 8888
- readinessProbe:
- exec:
- command:
- - wget
- - -q # quiet
- - -S # show server response
- - -O
- - "-" # Redirect output to stdout
- - http://localhost:8888/
- initialDelaySeconds: 3
- periodSeconds: 5
- timeoutSeconds: 2
- livenessProbe:
- exec:
- command:
- - wget
- - -q # quiet
- - -S # show server response
- - -O
- - "-" # Redirect output to stdout
- - http://localhost:8888/
- initialDelaySeconds: 3
- periodSeconds: 5
- timeoutSeconds: 2
- resources:
- requests:
- cpu: 30m
- memory: 500Mi
- serviceAccountName: ml-pipeline-visualizationserver
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-visualization-sa.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-visualization-sa.yaml
deleted file mode 100644
index e1bbc6a..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-visualization-sa.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: ml-pipeline-visualizationserver
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-visualization-service.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-visualization-service.yaml
deleted file mode 100644
index 83c7dd6..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-visualization-service.yaml
+++ /dev/null
@@ -1,12 +0,0 @@
-apiVersion: v1
-kind: Service
-metadata:
- name: ml-pipeline-visualizationserver
-spec:
- ports:
- - name: http
- port: 8888
- protocol: TCP
- targetPort: 8888
- selector:
- app: ml-pipeline-visualizationserver
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/pipeline-runner-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/pipeline-runner-role.yaml
deleted file mode 100644
index 9178ee4..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/pipeline-runner-role.yaml
+++ /dev/null
@@ -1,96 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata:
- name: pipeline-runner
-rules:
-- apiGroups:
- - ""
- resources:
- - secrets
- verbs:
- - get
-- apiGroups:
- - ""
- resources:
- - configmaps
- verbs:
- - get
- - watch
- - list
-- apiGroups:
- - ""
- resources:
- - persistentvolumes
- - persistentvolumeclaims
- verbs:
- - '*'
-- apiGroups:
- - snapshot.storage.k8s.io
- resources:
- - volumesnapshots
- verbs:
- - create
- - delete
- - get
-- apiGroups:
- - argoproj.io
- resources:
- - workflows
- verbs:
- - get
- - list
- - watch
- - update
- - patch
-- apiGroups:
- - ""
- resources:
- - pods
- - pods/exec
- - pods/log
- - services
- verbs:
- - '*'
-- apiGroups:
- - ""
- - apps
- - extensions
- resources:
- - deployments
- - replicasets
- verbs:
- - '*'
-- apiGroups:
- - kubeflow.org
- resources:
- - '*'
- verbs:
- - '*'
-- apiGroups:
- - batch
- resources:
- - jobs
- verbs:
- - '*'
-- apiGroups:
- - machinelearning.seldon.io
- resources:
- - seldondeployments
- verbs:
- - '*'
-- apiGroups:
- - tekton.dev
- resources:
- - pipelineruns
- - taskruns
- - conditions
- - runs
- - tasks
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/pipeline-runner-rolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/pipeline-runner-rolebinding.yaml
deleted file mode 100644
index 9adae61..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/pipeline-runner-rolebinding.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: pipeline-runner-binding
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: pipeline-runner
-subjects:
-- kind: ServiceAccount
- name: pipeline-runner
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/pipeline-runner-sa.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/pipeline-runner-sa.yaml
deleted file mode 100644
index 8cb2c66..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/pipeline-runner-sa.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: pipeline-runner
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/viewer-sa.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/viewer-sa.yaml
deleted file mode 100644
index 932133c..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/viewer-sa.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: kubeflow-pipelines-viewer
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/cluster-scoped-resources-tekton/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/cluster-scoped-resources-tekton/kustomization.yaml
deleted file mode 100644
index ea1a04a..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/cluster-scoped-resources-tekton/kustomization.yaml
+++ /dev/null
@@ -1,27 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-namespace: kubeflow
-
-resources:
-- namespace.yaml
-bases:
-- ../third-party/application/cluster-scoped
-# - ../third-party/argo/installs/namespace/cluster-scoped
-- ../base/pipeline/cluster-scoped
-- ../base/cache-deployer/cluster-scoped
-vars:
-# NOTE: var name must be unique globally to allow composition of multiple kustomize
-# packages. Therefore, we added prefix `kfp-cluster-scoped-` to distinguish it from
-# others.
-- name: kfp-cluster-scoped-namespace
- objref:
- # cache deployer sa's metadata.namespace will be first transformed by namespace field in kustomization.yaml
- # so that we only need to change kustomization.yaml's namespace field for namespace customization.
- kind: ServiceAccount
- name: kubeflow-pipelines-cache-deployer-sa
- apiVersion: v1
- fieldref:
- fieldpath: metadata.namespace
-configurations:
-- params.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/cluster-scoped-resources-tekton/namespace.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/cluster-scoped-resources-tekton/namespace.yaml
deleted file mode 100644
index 3c65856..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/cluster-scoped-resources-tekton/namespace.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: Namespace
-metadata:
- name: '$(kfp-cluster-scoped-namespace)'
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/cluster-scoped-resources-tekton/params.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/cluster-scoped-resources-tekton/params.yaml
deleted file mode 100644
index cc253fe..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/cluster-scoped-resources-tekton/params.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-# Allow Kustomize var to replace following fields.
-varReference:
-- path: metadata/name
- kind: Namespace
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/cluster-scoped-resources/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/cluster-scoped-resources/kustomization.yaml
deleted file mode 100644
index df0f654..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/cluster-scoped-resources/kustomization.yaml
+++ /dev/null
@@ -1,27 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-namespace: kubeflow
-
-resources:
-- namespace.yaml
-bases:
-- ../third-party/application/cluster-scoped
-- ../third-party/argo/installs/namespace/cluster-scoped
-- ../base/pipeline/cluster-scoped
-- ../base/cache-deployer/cluster-scoped
-vars:
-# NOTE: var name must be unique globally to allow composition of multiple kustomize
-# packages. Therefore, we added prefix `kfp-cluster-scoped-` to distinguish it from
-# others.
-- name: kfp-cluster-scoped-namespace
- objref:
- # cache deployer sa's metadata.namespace will be first transformed by namespace field in kustomization.yaml
- # so that we only need to change kustomization.yaml's namespace field for namespace customization.
- kind: ServiceAccount
- name: kubeflow-pipelines-cache-deployer-sa
- apiVersion: v1
- fieldref:
- fieldpath: metadata.namespace
-configurations:
-- params.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/cluster-scoped-resources/namespace.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/cluster-scoped-resources/namespace.yaml
deleted file mode 100644
index 3c65856..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/cluster-scoped-resources/namespace.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: Namespace
-metadata:
- name: '$(kfp-cluster-scoped-namespace)'
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/cluster-scoped-resources/params.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/cluster-scoped-resources/params.yaml
deleted file mode 100644
index cc253fe..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/cluster-scoped-resources/params.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-# Allow Kustomize var to replace following fields.
-varReference:
-- path: metadata/name
- kind: Namespace
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/aws/OWNERS b/charts/kubeflow/apps/kfp-tekton/upstream/env/aws/OWNERS
deleted file mode 100644
index ae0e748..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/aws/OWNERS
+++ /dev/null
@@ -1,3 +0,0 @@
-approvers:
- - Jeffwan
- - PatrickXYS
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/aws/README.md b/charts/kubeflow/apps/kfp-tekton/upstream/env/aws/README.md
deleted file mode 100644
index 4502094..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/aws/README.md
+++ /dev/null
@@ -1,56 +0,0 @@
-# Sample installation
-
-1. Create an EKS cluster
-
-Run this command to create EKS cluster
-```
-eksctl create cluster \
---name AWS-KFP \
---version 1.17 \
---region us-west-2 \
---nodegroup-name linux-nodes \
---node-type m5.xlarge \
---nodes 2 \
---nodes-min 1 \
---nodes-max 4 \
---managed
-```
-
-2. Prepare S3
-
-Create S3 bucket. [Console](https://console.aws.amazon.com/s3/home).
-
-Run this command to create S3 bucket by changing `` to your prefer s3 bucket name.
-
-```
-export S3_BUCKET=
-export AWS_REGION=us-west-2
-aws s3 mb s3://$S3_BUCKET --region $AWS_REGION
-```
-
-3. Prepare RDS
-
-Follow this [doc](https://awslabs.github.io/kubeflow-manifests/docs/deployment/rds-s3/guide/) to set up AWS RDS instance.
-
-4. Customize your values
-- Edit [params.env](params.env), [secret.env](secret.env) and [minio-artifact-secret-patch.env](minio-artifact-secret-patch.env)
-
-5. Install
-
-```
-kubectl apply -k ../../cluster-scoped-resources
-# If upper one action got failed, e.x. you used wrong value, try delete, fix and apply again
-# kubectl delete -k ../../cluster-scoped-resources
-
-kubectl wait crd/applications.app.k8s.io --for condition=established --timeout=60s
-
-kubectl apply -k ./
-# If upper one action got failed, e.x. you used wrong value, try delete, fix and apply again
-# kubectl delete -k ./
-
-kubectl wait applications/pipeline -n kubeflow --for condition=Ready --timeout=1800s
-
-kubectl port-forward -n kubeflow svc/ml-pipeline-ui 8080:80
-```
-
-Now you can access via `localhost:8080`
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/aws/aws-configuration-patch.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/env/aws/aws-configuration-patch.yaml
deleted file mode 100644
index d008e3b..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/aws/aws-configuration-patch.yaml
+++ /dev/null
@@ -1,61 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: ml-pipeline-ui
-spec:
- template:
- metadata:
- labels:
- app: ml-pipeline-ui
- spec:
- volumes:
- - name: config-volume
- configMap:
- name: ml-pipeline-ui-configmap
- containers:
- - name: ml-pipeline-ui
- env:
- - name: AWS_ACCESS_KEY_ID
- valueFrom:
- secretKeyRef:
- name: mlpipeline-minio-artifact
- key: accesskey
- - name: AWS_SECRET_ACCESS_KEY
- valueFrom:
- secretKeyRef:
- name: mlpipeline-minio-artifact
- key: secretkey
-
----
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: ml-pipeline
-spec:
- template:
- metadata:
- labels:
- app: ml-pipeline
- spec:
- containers:
- - env:
- - name: OBJECTSTORECONFIG_SECURE
- value: "true"
- - name: OBJECTSTORECONFIG_BUCKETNAME
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: bucketName
- - name: OBJECTSTORECONFIG_HOST
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: minioServiceHost
- - name: OBJECTSTORECONFIG_REGION
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: minioServiceRegion
- - name: OBJECTSTORECONFIG_PORT
- value: ""
- name: ml-pipeline-api-server
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/aws/config b/charts/kubeflow/apps/kfp-tekton/upstream/env/aws/config
deleted file mode 100644
index ebf0553..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/aws/config
+++ /dev/null
@@ -1,20 +0,0 @@
-{
-artifactRepository:
-{
- s3: {
- bucket: $(kfp-artifact-bucket-name),
- keyPrefix: artifacts,
- endpoint: s3.amazonaws.com,
- insecure: true,
- accessKeySecret: {
- name: mlpipeline-minio-artifact,
- key: accesskey
- },
- secretKeySecret: {
- name: mlpipeline-minio-artifact,
- key: secretkey
- }
- },
- archiveLogs: true
-}
-}
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/aws/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/env/aws/kustomization.yaml
deleted file mode 100644
index 50bb9d3..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/aws/kustomization.yaml
+++ /dev/null
@@ -1,33 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-namespace: kubeflow
-bases:
-- ../../env/platform-agnostic
-configMapGenerator:
-- name: pipeline-install-config
- env: params.env
- behavior: merge
-- name: workflow-controller-configmap
- behavior: replace
- files:
- - config
-- name: ml-pipeline-ui-configmap
- behavior: replace
- files:
- - viewer-pod-template.json
-secretGenerator:
-- name: mysql-secret
- env: secret.env
- behavior: merge
-- name: mlpipeline-minio-artifact
- env: minio-artifact-secret-patch.env
- behavior: merge
-generatorOptions:
- disableNameSuffixHash: true
-patchesStrategicMerge:
-- aws-configuration-patch.yaml
-# Identifier for application manager to apply ownerReference.
-# The ownerReference ensures the resources get garbage collected
-# when application is deleted.
-commonLabels:
- application-crd-id: kubeflow-pipelines
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/aws/minio-artifact-secret-patch.env b/charts/kubeflow/apps/kfp-tekton/upstream/env/aws/minio-artifact-secret-patch.env
deleted file mode 100644
index 3f11b74..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/aws/minio-artifact-secret-patch.env
+++ /dev/null
@@ -1,2 +0,0 @@
-accesskey=YOUR_AWS_ACCESS_ID
-secretkey=YOUR_AWS_SECRET_KEY
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/aws/params.env b/charts/kubeflow/apps/kfp-tekton/upstream/env/aws/params.env
deleted file mode 100644
index 30e9665..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/aws/params.env
+++ /dev/null
@@ -1,5 +0,0 @@
-dbHost=YOUR_RDS_ENDPOINT
-
-bucketName=YOUR_S3_BUCKET_NAME
-minioServiceHost=s3.amazonaws.com
-minioServiceRegion=YOUR_AWS_REGION
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/aws/secret.env b/charts/kubeflow/apps/kfp-tekton/upstream/env/aws/secret.env
deleted file mode 100644
index cdd7b0a..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/aws/secret.env
+++ /dev/null
@@ -1,2 +0,0 @@
-username=YOUR_RDS_USERNAME
-password=YOUR_RDS_PASSWORD
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/aws/viewer-pod-template.json b/charts/kubeflow/apps/kfp-tekton/upstream/env/aws/viewer-pod-template.json
deleted file mode 100644
index 5cce566..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/aws/viewer-pod-template.json
+++ /dev/null
@@ -1,37 +0,0 @@
-{
- "spec": {
- "containers": [
- {
- "env": [
- {
- "name": "AWS_ACCESS_KEY_ID",
- "valueFrom": {
- "secretKeyRef": {
- "name": "mlpipeline-minio-artifact",
- "key": "accesskey"
- }
- }
- },
- {
- "name": "AWS_SECRET_ACCESS_KEY",
- "valueFrom": {
- "secretKeyRef": {
- "name": "mlpipeline-minio-artifact",
- "key": "secretkey"
- }
- }
- },
- {
- "name": "AWS_REGION",
- "valueFrom": {
- "configMapKeyRef": {
- "name": "pipeline-install-config",
- "key": "minioServiceRegion"
- }
- }
- }
- ]
- }
- ]
- }
-}
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/azure/OWNERS b/charts/kubeflow/apps/kfp-tekton/upstream/env/azure/OWNERS
deleted file mode 100644
index b72ffa3..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/azure/OWNERS
+++ /dev/null
@@ -1,4 +0,0 @@
-approvers:
-- dtzar
-- eedorenko
-- sudivate
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/azure/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/env/azure/kustomization.yaml
deleted file mode 100644
index 39b9c7d..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/azure/kustomization.yaml
+++ /dev/null
@@ -1,25 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-namespace: kubeflow
-
-bases:
-- ../../base/installs/generic
-- ../../base/metadata/base
-- ../../third-party/argo/installs/namespace
-- minio-azure-gateway
-
-configMapGenerator:
-- name: pipeline-install-config
- env: params.env
- behavior: merge
-
-secretGenerator:
-- name: mysql-secret
- env: mysql-secret.env
- behavior: merge
-
-# Identifier for application manager to apply ownerReference.
-# The ownerReference ensures the resources get garbage collected
-# when application is deleted.
-commonLabels:
- application-crd-id: kubeflow-pipelines
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/azure/minio-azure-gateway/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/env/azure/minio-azure-gateway/kustomization.yaml
deleted file mode 100644
index db350a6..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/azure/minio-azure-gateway/kustomization.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
-- minio-azure-gateway-deployment.yaml
-- minio-azure-gateway-service.yaml
-
-secretGenerator:
-- name: mlpipeline-minio-artifact
- env: minio-artifact-secret.env
-generatorOptions:
- # mlpipeline-minio-artifact needs to be referred by exact name
- disableNameSuffixHash: true
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/azure/minio-azure-gateway/minio-artifact-secret.env b/charts/kubeflow/apps/kfp-tekton/upstream/env/azure/minio-azure-gateway/minio-artifact-secret.env
deleted file mode 100644
index 7d9d25d..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/azure/minio-azure-gateway/minio-artifact-secret.env
+++ /dev/null
@@ -1,2 +0,0 @@
-accesskey=[STORAGEACCOUNTNAME]
-secretkey=[STORAGEACCOUNTKEY]
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/azure/minio-azure-gateway/minio-azure-gateway-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/env/azure/minio-azure-gateway/minio-azure-gateway-deployment.yaml
deleted file mode 100644
index 56979c4..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/azure/minio-azure-gateway/minio-azure-gateway-deployment.yaml
+++ /dev/null
@@ -1,40 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: minio
- labels:
- app: minio
-spec:
- selector:
- matchLabels:
- app: minio
- strategy:
- type: Recreate
- template:
- metadata:
- labels:
- app: minio
- spec:
- containers:
- - name: minio
- image: gcr.io/ml-pipeline/minio:RELEASE.2019-08-14T20-37-41Z-license-compliance
- args:
- - gateway
- - azure
- env:
- - name: MINIO_ACCESS_KEY
- valueFrom:
- secretKeyRef:
- name: mlpipeline-minio-artifact
- key: accesskey
- - name: MINIO_SECRET_KEY
- valueFrom:
- secretKeyRef:
- name: mlpipeline-minio-artifact
- key: secretkey
- ports:
- - containerPort: 9000
- resources:
- requests:
- cpu: 20m
- memory: 25Mi
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/azure/minio-azure-gateway/minio-azure-gateway-service.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/env/azure/minio-azure-gateway/minio-azure-gateway-service.yaml
deleted file mode 100644
index 7dd1817..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/azure/minio-azure-gateway/minio-azure-gateway-service.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: v1
-kind: Service
-metadata:
- name: minio-service
-spec:
- ports:
- - port: 9000
- targetPort: 9000
- protocol: TCP
- selector:
- app: minio
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/azure/mysql-secret.env b/charts/kubeflow/apps/kfp-tekton/upstream/env/azure/mysql-secret.env
deleted file mode 100644
index 93f6075..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/azure/mysql-secret.env
+++ /dev/null
@@ -1,2 +0,0 @@
-username=[SQLUSER]@[SQLSERVERNAME]
-password=[SQLPASS]
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/azure/params.env b/charts/kubeflow/apps/kfp-tekton/upstream/env/azure/params.env
deleted file mode 100644
index 44ed717..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/azure/params.env
+++ /dev/null
@@ -1 +0,0 @@
-dbHost=[SQLSERVERNAME].mysql.database.azure.com
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/azure/readme.md b/charts/kubeflow/apps/kfp-tekton/upstream/env/azure/readme.md
deleted file mode 100644
index 5487d6a..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/azure/readme.md
+++ /dev/null
@@ -1,15 +0,0 @@
-# KFP customizations for Azure
-
-This template provides a starting point to configure KFP to use an Azure hosted MySQL database, as well as an Azure Blob backed MinIO service.
-
-## MySQL
-
-1. [Create an Azure Database for MySQL](https://docs.microsoft.com/azure/mysql/quickstart-create-mysql-server-database-using-azure-portal). Ensure that it will allow connections from the Kubernetes cluster.
-
-2. Substitute the server name into [params.env](./params.env), and the username and password into [mysql-secret.env](./mysql-secret.env)
-
-## MinIO Gateway for Azure Blobstore
-
-1. [Create an Azure Storage account](https://docs.microsoft.com/azure/storage/common/storage-account-create). Ensure that it will allow connections from the Kubernetes cluster.
-
-2. Substitute the storage name and access key into [minio-artifact-secret.env](./minio-azure-gateway/minio-artifact-secret.env).
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/cert-manager/base/cache-cert.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/env/cert-manager/base/cache-cert.yaml
deleted file mode 100644
index 7d11367..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/cert-manager/base/cache-cert.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
-apiVersion: cert-manager.io/v1
-kind: Certificate
-metadata:
- name: kfp-cache-cert
-spec:
- commonName: kfp-cache-cert
- isCA: true
- dnsNames:
- - cache-server
- - cache-server.$(kfp-namespace)
- - cache-server.$(kfp-namespace).svc
- issuerRef:
- kind: Issuer
- name: kfp-cache-selfsigned-issuer
- secretName: webhook-server-tls
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/cert-manager/base/cache-webhook-config.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/env/cert-manager/base/cache-webhook-config.yaml
deleted file mode 100644
index 0f6b43c..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/cert-manager/base/cache-webhook-config.yaml
+++ /dev/null
@@ -1,25 +0,0 @@
-apiVersion: admissionregistration.k8s.io/v1
-kind: MutatingWebhookConfiguration
-metadata:
- name: cache-webhook-kubeflow
- annotations:
- cert-manager.io/inject-ca-from: $(kfp-namespace)/kfp-cache-cert
-webhooks:
- - name: cache-server.$(kfp-namespace).svc
- clientConfig:
- service:
- name: cache-server
- namespace: $(kfp-namespace)
- path: "/mutate"
- failurePolicy: Ignore
- rules:
- - operations: [ "CREATE" ]
- apiGroups: [""]
- apiVersions: ["v1"]
- resources: ["pods"]
- sideEffects: None
- timeoutSeconds: 5
- objectSelector:
- matchLabels:
- pipelines.kubeflow.org/cache_enabled: "true"
- admissionReviewVersions: ["v1beta1"]
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/cert-manager/base/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/env/cert-manager/base/kustomization.yaml
deleted file mode 100644
index 14cacd9..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/cert-manager/base/kustomization.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-namespace: kubeflow
-
-resources:
- - cache-cert-issuer.yaml
- - cache-cert.yaml
- - cache-webhook-config.yaml
-commonLabels:
- app: cache-server-cert-manager
-
-configurations:
-- params.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/cert-manager/base/params.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/env/cert-manager/base/params.yaml
deleted file mode 100644
index 8ee2b1b..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/cert-manager/base/params.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-varReference:
- - path: spec/commonName
- kind: Certificate
- - path: spec/dnsNames
- kind: Certificate
- - path: spec/issuerRef/name
- kind: Certificate
- - path: metadata/annotations
- kind: MutatingWebhookConfiguration
- - path: webhooks/clientConfig/service/namespace
- kind: MutatingWebhookConfiguration
- - path: webhooks/name
- kind: MutatingWebhookConfiguration
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/cert-manager/cluster-scoped-resources/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/env/cert-manager/cluster-scoped-resources/kustomization.yaml
deleted file mode 100644
index c5df9e9..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/cert-manager/cluster-scoped-resources/kustomization.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-bases:
-- ../../../third-party/application/cluster-scoped
-- ../../../third-party/argo/installs/namespace/cluster-scoped
-- ../../../base/pipeline/cluster-scoped
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/cert-manager/dev/delete-cache-deployer.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/env/cert-manager/dev/delete-cache-deployer.yaml
deleted file mode 100644
index 07e2f87..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/cert-manager/dev/delete-cache-deployer.yaml
+++ /dev/null
@@ -1,18 +0,0 @@
-# Delete cache deployer related resources as we use the cert-manager instead
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: cache-deployer-deployment
-$patch: delete
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata:
- name: kubeflow-pipelines-cache-deployer-role
-$patch: delete
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: kubeflow-pipelines-cache-deployer-rolebinding
-$patch: delete
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/cert-manager/dev/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/env/cert-manager/dev/kustomization.yaml
deleted file mode 100644
index e4dc5ed..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/cert-manager/dev/kustomization.yaml
+++ /dev/null
@@ -1,47 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-bases:
- - ../../dev
- - ../base
-namespace: kubeflow
-
-# Delete the cache deployer as we use the cert-manager instead
-patchesStrategicMerge:
- - ./delete-cache-deployer.yaml
-
-resources:
-- namespace.yaml
-
-vars:
-# NOTE: var name must be unique globally to allow composition of multiple kustomize
-# packages. Therefore, we added prefix `kfp-dev-` to distinguish it from
-# others.
-- name: kfp-dev-namespace
- objref:
- # ml-pipeline sa's metadata.namespace will be first transformed by namespace field in kustomization.yaml
- # so that we only need to change kustomization.yaml's namespace field for namespace customization.
- kind: ServiceAccount
- name: ml-pipeline
- apiVersion: v1
- fieldref:
- fieldpath: metadata.namespace
-configurations:
-- params.yaml
-
-# Pass proper arguments to cache-server to use cert-manager certificate
-patches:
-- patch: |-
- - op: add
- path: /spec/template/spec/containers/0/args/-
- value: "--tls_cert_filename=tls.crt"
- target:
- kind: Deployment
- name: cache-server
-- patch: |-
- - op: add
- path: /spec/template/spec/containers/0/args/-
- value: "--tls_key_filename=tls.key"
- target:
- kind: Deployment
- name: cache-server
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/cert-manager/dev/namespace.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/env/cert-manager/dev/namespace.yaml
deleted file mode 100644
index 51de7ac..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/cert-manager/dev/namespace.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: Namespace
-metadata:
- name: '$(kfp-dev-namespace)'
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/cert-manager/dev/params.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/env/cert-manager/dev/params.yaml
deleted file mode 100644
index cc253fe..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/cert-manager/dev/params.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-# Allow Kustomize var to replace following fields.
-varReference:
-- path: metadata/name
- kind: Namespace
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/cert-manager/platform-agnostic-multi-user/delete-cache-deployer.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/env/cert-manager/platform-agnostic-multi-user/delete-cache-deployer.yaml
deleted file mode 100644
index de57ccc..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/cert-manager/platform-agnostic-multi-user/delete-cache-deployer.yaml
+++ /dev/null
@@ -1,36 +0,0 @@
-# Delete cache deployer as we use the cert-manager instead
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- name: kubeflow-pipelines-cache-deployer-clusterrole
-$patch: delete
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: kubeflow-pipelines-cache-deployer-clusterrolebinding
-$patch: delete
----
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: kubeflow-pipelines-cache-deployer-sa
-$patch: delete
----
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: cache-deployer-deployment
-$patch: delete
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata:
- name: kubeflow-pipelines-cache-deployer-role
-$patch: delete
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: kubeflow-pipelines-cache-deployer-rolebinding
-$patch: delete
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/cert-manager/platform-agnostic-multi-user/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/env/cert-manager/platform-agnostic-multi-user/kustomization.yaml
deleted file mode 100644
index 3d21848..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/cert-manager/platform-agnostic-multi-user/kustomization.yaml
+++ /dev/null
@@ -1,28 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-bases:
- - ../../platform-agnostic-multi-user
- - ../base
-namespace: kubeflow
-
-# Delete the cache deployer as we use the cert-manager instead
-patchesStrategicMerge:
- - ./delete-cache-deployer.yaml
-
-# Pass proper arguments to cache-server to use cert-manager certificate
-patches:
-- patch: |-
- - op: add
- path: /spec/template/spec/containers/0/args/-
- value: "--tls_cert_filename=tls.crt"
- target:
- kind: Deployment
- name: cache-server
-- patch: |-
- - op: add
- path: /spec/template/spec/containers/0/args/-
- value: "--tls_key_filename=tls.key"
- target:
- kind: Deployment
- name: cache-server
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/dev/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/env/dev/kustomization.yaml
deleted file mode 100644
index 23030ce..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/dev/kustomization.yaml
+++ /dev/null
@@ -1,19 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-bases:
- # Application controller is used to provide Google Cloud Console integration.
- - ../../third-party/application
- - ../../base/application
- - ../platform-agnostic
- - ../gcp/inverse-proxy
-
-# Identifier for application manager to apply ownerReference.
-# The ownerReference ensures the resources get garbage collected
-# when application is deleted.
-commonLabels:
- application-crd-id: kubeflow-pipelines
-
-# !!! If you want to customize the namespace,
-# please refer sample/cluster-scoped-resources to update the namespace for cluster-scoped-resources
-namespace: kubeflow
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/cloudsql-proxy/cloudsql-proxy-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/cloudsql-proxy/cloudsql-proxy-deployment.yaml
deleted file mode 100644
index 42d3bf1..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/cloudsql-proxy/cloudsql-proxy-deployment.yaml
+++ /dev/null
@@ -1,89 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: cloudsqlproxy
- labels:
- app: cloudsqlproxy
-spec:
- selector:
- matchLabels:
- app: cloudsqlproxy
- replicas: 1
- template:
- metadata:
- labels:
- app: cloudsqlproxy
- spec:
- serviceAccountName: kubeflow-pipelines-cloudsql-proxy
- containers:
- - image: gcr.io/cloudsql-docker/gce-proxy:1.25.0
- name: cloudsqlproxy
- env:
- - name: GCP_CLOUDSQL_INSTANCE_NAME
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: gcsCloudSqlInstanceName
- command: ["/cloud_sql_proxy",
- "-dir=/cloudsql",
- "-instances=$(GCP_CLOUDSQL_INSTANCE_NAME)=tcp:0.0.0.0:3306",
- "-use_http_health_check",
- "term_timeout=10s"]
- # set term_timeout if require graceful handling of shutdown
- # NOTE: proxy will stop accepting new connections; only wait on existing connections
- lifecycle:
- preStop:
- exec:
- # (optional) add a preStop hook so that termination is delayed
- # this is required if your server still require new connections (e.g., connection pools)
- command: ['sleep', '10']
- # Liveness probe configuration is adviced by Cloud SQL Proxy examples:
- # https://github.com/GoogleCloudPlatform/cloudsql-proxy/tree/main/examples/k8s-health-check
- # For details, see https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/
- livenessProbe:
- httpGet:
- path: /liveness
- port: 8090
- # Number of seconds after the container has started before the first probe is scheduled. Defaults to 0.
- # Not necessary when the startup probe is in use.
- initialDelaySeconds: 0
- # Frequency of the probe.
- periodSeconds: 60
- # Number of seconds after which the probe times out.
- timeoutSeconds: 30
- # Number of times the probe is allowed to fail before the transition
- # from healthy to failure state.
- #
- # If periodSeconds = 60, 5 tries will result in five minutes of
- # checks. The proxy starts to refresh a certificate five minutes
- # before its expiration. If those five minutes lapse without a
- # successful refresh, the liveness probe will fail and the pod will be
- # restarted.
- failureThreshold: 5
- readinessProbe:
- httpGet:
- path: /readiness
- port: 8090
- initialDelaySeconds: 0
- periodSeconds: 10
- timeoutSeconds: 5
- # Number of times the probe must report success to transition from failure to healthy state.
- # Defaults to 1 for readiness probe.
- successThreshold: 1
- failureThreshold: 1
- startupProbe:
- httpGet:
- path: /startup
- port: 8090
- periodSeconds: 1
- timeoutSeconds: 5
- failureThreshold: 20
- ports:
- - name: mysql
- containerPort: 3306
- volumeMounts:
- - mountPath: /cloudsql
- name: cloudsql
- volumes:
- - name: cloudsql
- emptyDir:
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/cloudsql-proxy/cloudsql-proxy-sa.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/cloudsql-proxy/cloudsql-proxy-sa.yaml
deleted file mode 100644
index a4cc9c4..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/cloudsql-proxy/cloudsql-proxy-sa.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: kubeflow-pipelines-cloudsql-proxy
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/cloudsql-proxy/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/cloudsql-proxy/kustomization.yaml
deleted file mode 100644
index a336cb5..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/cloudsql-proxy/kustomization.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
-- cloudsql-proxy-deployment.yaml
-- cloudsql-proxy-sa.yaml
-- mysql-service.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/cloudsql-proxy/mysql-service.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/cloudsql-proxy/mysql-service.yaml
deleted file mode 100644
index f97dbc3..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/cloudsql-proxy/mysql-service.yaml
+++ /dev/null
@@ -1,9 +0,0 @@
-apiVersion: v1
-kind: Service
-metadata:
- name: mysql
-spec:
- ports:
- - port: 3306
- selector:
- app: cloudsqlproxy
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/gcp-configurations-patch.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/gcp-configurations-patch.yaml
deleted file mode 100644
index 5e725b5..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/gcp-configurations-patch.yaml
+++ /dev/null
@@ -1,22 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: ml-pipeline
-spec:
- template:
- spec:
- containers:
- - name: ml-pipeline-api-server
- env:
- - name: HAS_DEFAULT_BUCKET
- value: 'true'
- - name: BUCKET_NAME
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: bucketName
- - name: PROJECT_ID
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: gcsProjectId
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/inverse-proxy/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/inverse-proxy/kustomization.yaml
deleted file mode 100644
index 9c2d3b3..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/inverse-proxy/kustomization.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-images:
- - name: gcr.io/ml-pipeline/inverse-proxy-agent
- newTag: 2.0.5
-resources:
- - proxy-configmap.yaml
- - proxy-deployment.yaml
- - proxy-role.yaml
- - proxy-rolebinding.yaml
- - proxy-sa.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/inverse-proxy/proxy-configmap.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/inverse-proxy/proxy-configmap.yaml
deleted file mode 100644
index c469f7a..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/inverse-proxy/proxy-configmap.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: inverse-proxy-config
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/inverse-proxy/proxy-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/inverse-proxy/proxy-deployment.yaml
deleted file mode 100644
index faf3e47..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/inverse-proxy/proxy-deployment.yaml
+++ /dev/null
@@ -1,21 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- labels:
- app: proxy-agent
- name: proxy-agent
-spec:
- selector:
- matchLabels:
- app: proxy-agent
- template:
- metadata:
- labels:
- app: proxy-agent
- spec:
- hostNetwork: true
- containers:
- - image: gcr.io/ml-pipeline/inverse-proxy-agent:dummy
- imagePullPolicy: IfNotPresent
- name: proxy-agent
- serviceAccountName: proxy-agent-runner
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/inverse-proxy/proxy-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/inverse-proxy/proxy-role.yaml
deleted file mode 100644
index d6c03d5..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/inverse-proxy/proxy-role.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata:
- labels:
- app: proxy-agent-runner
- name: proxy-agent-runner
-rules:
-- apiGroups:
- - ""
- resources:
- - configmaps
- verbs:
- - '*'
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/inverse-proxy/proxy-rolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/inverse-proxy/proxy-rolebinding.yaml
deleted file mode 100644
index 72f1fc0..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/inverse-proxy/proxy-rolebinding.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- labels:
- app: proxy-agent-runner
- name: proxy-agent-runner
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: proxy-agent-runner
-subjects:
-- kind: ServiceAccount
- name: proxy-agent-runner
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/inverse-proxy/proxy-sa.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/inverse-proxy/proxy-sa.yaml
deleted file mode 100644
index af8b0c3..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/inverse-proxy/proxy-sa.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: proxy-agent-runner
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/kustomization.yaml
deleted file mode 100644
index e96b884..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/kustomization.yaml
+++ /dev/null
@@ -1,32 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-bases:
- # Application controller is used to provide Google Cloud Console integration.
- - ../../third-party/application
- - ../../base/application
- - ../../base/installs/generic
- - ../../base/metadata/base
- - ../../third-party/argo/installs/namespace
- - inverse-proxy
- - minio-gcs-gateway
- - cloudsql-proxy
-
-# Identifier for application manager to apply ownerReference.
-# The ownerReference ensures the resources get garbage collected
-# when application is deleted.
-commonLabels:
- application-crd-id: kubeflow-pipelines
-
-# !!! If you want to customize the namespace,
-# please also update base/cache-deployer/cluster-scoped/cache-deployer-clusterrolebinding.yaml
-namespace: kubeflow
-
-patchesStrategicMerge:
- - gcp-configurations-patch.yaml
-
-# Used by Kustomize
-configMapGenerator:
- - name: pipeline-install-config
- env: params.env
- behavior: merge
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/minio-gcs-gateway/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/minio-gcs-gateway/kustomization.yaml
deleted file mode 100644
index 877ad81..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/minio-gcs-gateway/kustomization.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
-- minio-gcs-gateway-deployment.yaml
-- minio-gcs-gateway-sa.yaml
-- minio-gcs-gateway-service.yaml
-
-secretGenerator:
-- name: mlpipeline-minio-artifact
- env: minio-artifact-secret.env
-generatorOptions:
- # mlpipeline-minio-artifact needs to be referred by exact name
- disableNameSuffixHash: true
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/minio-gcs-gateway/minio-artifact-secret.env b/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/minio-gcs-gateway/minio-artifact-secret.env
deleted file mode 100644
index bc8613c..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/minio-gcs-gateway/minio-artifact-secret.env
+++ /dev/null
@@ -1,2 +0,0 @@
-accesskey=minio
-secretkey=minio123
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/minio-gcs-gateway/minio-gcs-gateway-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/minio-gcs-gateway/minio-gcs-gateway-deployment.yaml
deleted file mode 100644
index bb85c95..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/minio-gcs-gateway/minio-gcs-gateway-deployment.yaml
+++ /dev/null
@@ -1,47 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: minio
- labels:
- app: minio
-spec:
- selector:
- matchLabels:
- app: minio
- strategy:
- type: Recreate
- template:
- metadata:
- labels:
- app: minio
- spec:
- serviceAccountName: kubeflow-pipelines-minio-gcs-gateway
- containers:
- - name: minio
- image: gcr.io/ml-pipeline/minio:RELEASE.2019-08-14T20-37-41Z-license-compliance
- args:
- - gateway
- - gcs
- - $(GCP_PROJECT_ID)
- env:
- - name: GCP_PROJECT_ID
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: gcsProjectId
- - name: MINIO_ACCESS_KEY
- valueFrom:
- secretKeyRef:
- name: mlpipeline-minio-artifact
- key: accesskey
- - name: MINIO_SECRET_KEY
- valueFrom:
- secretKeyRef:
- name: mlpipeline-minio-artifact
- key: secretkey
- resources:
- requests:
- cpu: 20m
- memory: 25Mi
- ports:
- - containerPort: 9000
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/minio-gcs-gateway/minio-gcs-gateway-sa.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/minio-gcs-gateway/minio-gcs-gateway-sa.yaml
deleted file mode 100644
index 2aa4f93..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/minio-gcs-gateway/minio-gcs-gateway-sa.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: kubeflow-pipelines-minio-gcs-gateway
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/minio-gcs-gateway/minio-gcs-gateway-service.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/minio-gcs-gateway/minio-gcs-gateway-service.yaml
deleted file mode 100644
index 7dd1817..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/minio-gcs-gateway/minio-gcs-gateway-service.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: v1
-kind: Service
-metadata:
- name: minio-service
-spec:
- ports:
- - port: 9000
- targetPort: 9000
- protocol: TCP
- selector:
- app: minio
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/params.env b/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/params.env
deleted file mode 100644
index 0c1d077..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/gcp/params.env
+++ /dev/null
@@ -1,6 +0,0 @@
-pipelineDb=pipelinedb
-mlmdDb=metadb
-cacheDb=cachedb
-bucketName=yourGcsBucketName
-gcsProjectId=yourGcsProjectId
-gcsCloudSqlInstanceName=yourCloudSqlInstanceName
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/plain/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/env/plain/kustomization.yaml
deleted file mode 100644
index 7bf943c..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/plain/kustomization.yaml
+++ /dev/null
@@ -1,19 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
- - ../../cluster-scoped-resources-tekton
- - ../../base/installs/generic
- - ../../base/metadata/base
- - ../../third-party/minio/base
- - ../../third-party/mysql/base
-
-# Identifier for application manager to apply ownerReference.
-# The ownerReference ensures the resources get garbage collected
-# when application is deleted.
-commonLabels:
- application-crd-id: kubeflow-pipelines
-
-# !!! If you want to customize the namespace,
-# please also update base/cache-deployer/cluster-scoped/cache-deployer-clusterrolebinding.yaml
-namespace: kubeflow
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/platform-agnostic-emissary/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/env/platform-agnostic-emissary/kustomization.yaml
deleted file mode 100644
index b0f8662..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/platform-agnostic-emissary/kustomization.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-bases:
-- ../platform-agnostic
-
-patchesStrategicMerge:
-- workflow-controller-configmap-patch.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/platform-agnostic-emissary/workflow-controller-configmap-patch.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/env/platform-agnostic-emissary/workflow-controller-configmap-patch.yaml
deleted file mode 100644
index 87b8fda..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/platform-agnostic-emissary/workflow-controller-configmap-patch.yaml
+++ /dev/null
@@ -1,12 +0,0 @@
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: workflow-controller-configmap
-data:
- # References:
- # * https://github.com/argoproj/argo-workflows/blob/v3.1.5/config/config.go
- # * https://github.com/argoproj/argo-workflows/blob/v3.1.5/docs/workflow-controller-configmap.md
- # * https://github.com/argoproj/argo-workflows/blob/v3.1.5/docs/workflow-controller-configmap.yaml
-
- # Emissary Executor: https://argoproj.github.io/argo-workflows/workflow-executors/#emissary-emissary
- containerRuntimeExecutor: emissary
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/platform-agnostic-multi-user-emissary/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/env/platform-agnostic-multi-user-emissary/kustomization.yaml
deleted file mode 100644
index 42dda7a..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/platform-agnostic-multi-user-emissary/kustomization.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-bases:
-- ../platform-agnostic-multi-user
-
-patchesStrategicMerge:
-- workflow-controller-configmap-patch.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/platform-agnostic-multi-user-emissary/workflow-controller-configmap-patch.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/env/platform-agnostic-multi-user-emissary/workflow-controller-configmap-patch.yaml
deleted file mode 100644
index d0f4426..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/platform-agnostic-multi-user-emissary/workflow-controller-configmap-patch.yaml
+++ /dev/null
@@ -1,12 +0,0 @@
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: workflow-controller-configmap
-data:
- # References:
- # * https://github.com/argoproj/argo-workflows/blob/v3.3.10/config/config.go
- # * https://github.com/argoproj/argo-workflows/blob/v3.3.10/docs/workflow-controller-configmap.md
- # * https://github.com/argoproj/argo-workflows/blob/v3.3.10/docs/workflow-controller-configmap.yaml
-
- # Emissary Executor: https://argoproj.github.io/argo-workflows/workflow-executors/#emissary-emissary
- containerRuntimeExecutor: emissary
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/platform-agnostic-multi-user-legacy/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/env/platform-agnostic-multi-user-legacy/kustomization.yaml
deleted file mode 100644
index 6800d9e..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/platform-agnostic-multi-user-legacy/kustomization.yaml
+++ /dev/null
@@ -1,23 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-bases:
- - ../../base/installs/multi-user
- - ../../base/metadata/overlays/db
- - ../../base/metadata/options/istio
- - ../../third-party/argo/installs/cluster
- - ../../third-party/mysql/base
- - ../../third-party/mysql/options/istio
- - ../../third-party/minio/base
- - ../../third-party/minio/options/istio
- - ../../third-party/metacontroller/base
-
-# Identifier for application manager to apply ownerReference.
-# The ownerReference ensures the resources get garbage collected
-# when application is deleted.
-commonLabels:
- application-crd-id: kubeflow-pipelines
-
-# !!! If you want to customize the namespace,
-# please also update base/cache-deployer/cluster-scoped/cache-deployer-clusterrolebinding.yaml
-namespace: kubeflow
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/platform-agnostic-multi-user-pns/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/env/platform-agnostic-multi-user-pns/kustomization.yaml
deleted file mode 100644
index 42dda7a..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/platform-agnostic-multi-user-pns/kustomization.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-bases:
-- ../platform-agnostic-multi-user
-
-patchesStrategicMerge:
-- workflow-controller-configmap-patch.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/platform-agnostic-multi-user-pns/workflow-controller-configmap-patch.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/env/platform-agnostic-multi-user-pns/workflow-controller-configmap-patch.yaml
deleted file mode 100644
index 5435970..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/platform-agnostic-multi-user-pns/workflow-controller-configmap-patch.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: workflow-controller-configmap
-data:
- # References:
- # * https://github.com/argoproj/argo-workflows/blob/v3.3.10/config/config.go
- # * https://github.com/argoproj/argo-workflows/blob/v3.3.10/docs/workflow-controller-configmap.md
- # * https://github.com/argoproj/argo-workflows/blob/v3.3.10/docs/workflow-controller-configmap.yaml
-
- # pns executor is a more portable default, see https://github.com/kubeflow/pipelines/issues/1654.
- # However, it is flaky for containers that run really fast, see https://github.com/kubeflow/pipelines/issues/5285.
- containerRuntimeExecutor: pns
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/platform-agnostic-multi-user/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/env/platform-agnostic-multi-user/kustomization.yaml
deleted file mode 100644
index 1ea99e5..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/platform-agnostic-multi-user/kustomization.yaml
+++ /dev/null
@@ -1,23 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-bases:
- - ../../base/installs/multi-user
- - ../../base/metadata/base
- - ../../base/metadata/options/istio
- - ../../third-party/argo/installs/cluster
- - ../../third-party/mysql/base
- - ../../third-party/mysql/options/istio
- - ../../third-party/minio/base
- - ../../third-party/minio/options/istio
- - ../../third-party/metacontroller/base
-
-# Identifier for application manager to apply ownerReference.
-# The ownerReference ensures the resources get garbage collected
-# when application is deleted.
-commonLabels:
- application-crd-id: kubeflow-pipelines
-
-# !!! If you want to customize the namespace,
-# please also update base/cache-deployer/cluster-scoped/cache-deployer-clusterrolebinding.yaml
-namespace: kubeflow
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/platform-agnostic-pns/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/env/platform-agnostic-pns/kustomization.yaml
deleted file mode 100644
index b0f8662..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/platform-agnostic-pns/kustomization.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-bases:
-- ../platform-agnostic
-
-patchesStrategicMerge:
-- workflow-controller-configmap-patch.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/platform-agnostic-pns/workflow-controller-configmap-patch.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/env/platform-agnostic-pns/workflow-controller-configmap-patch.yaml
deleted file mode 100644
index 5435970..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/platform-agnostic-pns/workflow-controller-configmap-patch.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: workflow-controller-configmap
-data:
- # References:
- # * https://github.com/argoproj/argo-workflows/blob/v3.3.10/config/config.go
- # * https://github.com/argoproj/argo-workflows/blob/v3.3.10/docs/workflow-controller-configmap.md
- # * https://github.com/argoproj/argo-workflows/blob/v3.3.10/docs/workflow-controller-configmap.yaml
-
- # pns executor is a more portable default, see https://github.com/kubeflow/pipelines/issues/1654.
- # However, it is flaky for containers that run really fast, see https://github.com/kubeflow/pipelines/issues/5285.
- containerRuntimeExecutor: pns
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/platform-agnostic-tekton-multi-user/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/env/platform-agnostic-tekton-multi-user/kustomization.yaml
deleted file mode 100644
index 807b318..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/platform-agnostic-tekton-multi-user/kustomization.yaml
+++ /dev/null
@@ -1,81 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
- - ../../third-party/tekton/installs/cluster
- - ../../third-party/tekton-custom-task
- - ../plain-multi-user
-
-# Identifier for application manager to apply ownerReference.
-# The ownerReference ensures the resources get garbage collected
-# when application is deleted.
-commonLabels:
- application-crd-id: kubeflow-pipelines
-
-images:
-- name: gcr.io/ml-pipeline/api-server
- newName: quay.io/aipipeline/apiserver
- newTag: 2.0.5
-- name: gcr.io/ml-pipeline/persistenceagent
- newName: quay.io/aipipeline/persistenceagent
- newTag: 2.0.5
-- name: gcr.io/ml-pipeline/scheduledworkflow
- newName: quay.io/aipipeline/scheduledworkflow
- newTag: 2.0.5
-
-patchesStrategicMerge:
-- tekton-config.yaml
-
-patches:
-- patch: |-
- apiVersion: apps/v1
- kind: Deployment
- metadata:
- name: ml-pipeline
- spec:
- template:
- spec:
- containers:
- - name: ml-pipeline-api-server
- env:
- - name: EXECUTIONTYPE
- value: PipelineRun
-- patch: |-
- apiVersion: apps/v1
- kind: Deployment
- metadata:
- name: ml-pipeline-persistenceagent
- spec:
- template:
- spec:
- containers:
- - name: ml-pipeline-persistenceagent
- env:
- - name: EXECUTIONTYPE
- value: PipelineRun
-- patch: |-
- apiVersion: apps/v1
- kind: Deployment
- metadata:
- name: ml-pipeline-scheduledworkflow
- spec:
- template:
- spec:
- containers:
- - name: ml-pipeline-scheduledworkflow
- env:
- - name: EXECUTIONTYPE
- value: PipelineRun
-- patch: |-
- apiVersion: apps/v1
- kind: Deployment
- metadata:
- name: ml-pipeline-ui
- spec:
- template:
- spec:
- containers:
- - name: ml-pipeline-ui
- env:
- - name: POD_LOG_CONTAINER_NAME
- value: step-user-main
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/platform-agnostic-tekton-multi-user/tekton-config.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/env/platform-agnostic-tekton-multi-user/tekton-config.yaml
deleted file mode 100644
index 5707255..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/platform-agnostic-tekton-multi-user/tekton-config.yaml
+++ /dev/null
@@ -1,10 +0,0 @@
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: feature-flags
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- running-in-environment-with-injected-sidecars: "true"
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/platform-agnostic-tekton/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/env/platform-agnostic-tekton/kustomization.yaml
deleted file mode 100644
index cb9814e..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/platform-agnostic-tekton/kustomization.yaml
+++ /dev/null
@@ -1,81 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
-- ../../third-party/tekton/installs/cluster
-- ../../third-party/tekton-custom-task
-- ../plain
-
-# Identifier for application manager to apply ownerReference.
-# The ownerReference ensures the resources get garbage collected
-# when application is deleted.
-
-images:
-- name: gcr.io/ml-pipeline/api-server
- newName: quay.io/aipipeline/apiserver
- newTag: 2.0.5
-- name: gcr.io/ml-pipeline/persistenceagent
- newName: quay.io/aipipeline/persistenceagent
- newTag: 2.0.5
-- name: gcr.io/ml-pipeline/scheduledworkflow
- newName: quay.io/aipipeline/scheduledworkflow
- newTag: 2.0.5
-
-labels:
-- includeSelectors: true
- pairs:
- application-crd-id: kubeflow-pipelines
-
-patches:
-- patch: |-
- apiVersion: apps/v1
- kind: Deployment
- metadata:
- name: ml-pipeline
- spec:
- template:
- spec:
- containers:
- - name: ml-pipeline-api-server
- env:
- - name: EXECUTIONTYPE
- value: PipelineRun
-- patch: |-
- apiVersion: apps/v1
- kind: Deployment
- metadata:
- name: ml-pipeline-persistenceagent
- spec:
- template:
- spec:
- containers:
- - name: ml-pipeline-persistenceagent
- env:
- - name: EXECUTIONTYPE
- value: PipelineRun
-- patch: |-
- apiVersion: apps/v1
- kind: Deployment
- metadata:
- name: ml-pipeline-scheduledworkflow
- spec:
- template:
- spec:
- containers:
- - name: ml-pipeline-scheduledworkflow
- env:
- - name: EXECUTIONTYPE
- value: PipelineRun
-- patch: |-
- apiVersion: apps/v1
- kind: Deployment
- metadata:
- name: ml-pipeline-ui
- spec:
- template:
- spec:
- containers:
- - name: ml-pipeline-ui
- env:
- - name: POD_LOG_CONTAINER_NAME
- value: step-user-main
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/platform-agnostic/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/env/platform-agnostic/kustomization.yaml
deleted file mode 100644
index bab11aa..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/platform-agnostic/kustomization.yaml
+++ /dev/null
@@ -1,19 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
- - ../../base/installs/generic
- - ../../base/metadata/base
- - ../../third-party/argo/installs/namespace
- - ../../third-party/minio/base
- - ../../third-party/mysql/base
-
-# Identifier for application manager to apply ownerReference.
-# The ownerReference ensures the resources get garbage collected
-# when application is deleted.
-commonLabels:
- application-crd-id: kubeflow-pipelines
-
-# !!! If you want to customize the namespace,
-# please also update base/cache-deployer/cluster-scoped/cache-deployer-clusterrolebinding.yaml
-namespace: kubeflow
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/platform-openshift-pipelines/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/env/platform-openshift-pipelines/kustomization.yaml
deleted file mode 100644
index 181c56c..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/platform-openshift-pipelines/kustomization.yaml
+++ /dev/null
@@ -1,81 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
-- ../../base/installs/generic
-- ../../base/metadata/base
-- ../../third-party/minio/base
-- ../../third-party/mysql/base
-- ../../third-party/openshift-pipelines-custom-task
-- ../../third-party/openshift/standalone
-
-patches:
-- patch: |-
- apiVersion: apps/v1
- kind: Deployment
- metadata:
- name: ml-pipeline
- spec:
- template:
- spec:
- containers:
- - name: ml-pipeline-api-server
- env:
- - name: EXECUTIONTYPE
- value: PipelineRun
-- patch: |-
- apiVersion: apps/v1
- kind: Deployment
- metadata:
- name: ml-pipeline-persistenceagent
- spec:
- template:
- spec:
- containers:
- - name: ml-pipeline-persistenceagent
- env:
- - name: EXECUTIONTYPE
- value: PipelineRun
-- patch: |-
- apiVersion: apps/v1
- kind: Deployment
- metadata:
- name: ml-pipeline-scheduledworkflow
- spec:
- template:
- spec:
- containers:
- - name: ml-pipeline-scheduledworkflow
- env:
- - name: EXECUTIONTYPE
- value: PipelineRun
-- patch: |-
- apiVersion: apps/v1
- kind: Deployment
- metadata:
- name: ml-pipeline-ui
- spec:
- template:
- spec:
- containers:
- - name: ml-pipeline-ui
- env:
- - name: POD_LOG_CONTAINER_NAME
- value: step-user-main
-
-
-images:
-- name: gcr.io/ml-pipeline/api-server
- newName: quay.io/aipipeline/apiserver
- newTag: 2.0.0
-- name: gcr.io/ml-pipeline/persistenceagent
- newName: quay.io/aipipeline/persistenceagent
- newTag: 2.0.0
-- name: gcr.io/ml-pipeline/scheduledworkflow
- newName: quay.io/aipipeline/scheduledworkflow
- newTag: 2.0.0
-
-labels:
-- includeSelectors: true
- pairs:
- application-crd-id: kubeflow-pipelines
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/gcp-workload-identity-setup.sh b/charts/kubeflow/apps/kfp-tekton/upstream/gcp-workload-identity-setup.sh
deleted file mode 100755
index 79f86c9..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/gcp-workload-identity-setup.sh
+++ /dev/null
@@ -1,202 +0,0 @@
-#!/bin/bash
-#
-# Copyright 2019 The Kubeflow Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-set -e
-
-# Kubernetes Namespace
-NAMESPACE=${NAMESPACE:-kubeflow}
-
-# Google service Account (GSA)
-SYSTEM_GSA=${SYSTEM_GSA:-$RESOURCE_PREFIX-kfp-system}
-USER_GSA=${USER_GSA:-$RESOURCE_PREFIX-kfp-user}
-
-# Kubernetes Service Account (KSA)
-# Note, if deploying manifests/kustomize/env/gcp, you can add the following KSAs
-# to the array of SYSTEM_KSA:
-# * kubeflow-pipelines-minio-gcs-gateway needs gcs permissions
-# * kubeflow-pipelines-cloudsql-proxy needs cloudsql permissions
-SYSTEM_KSA=(ml-pipeline-ui ml-pipeline-visualizationserver)
-USER_KSA=(pipeline-runner kubeflow-pipelines-container-builder kubeflow-pipelines-viewer)
-
-if [ -n $USE_GCP_MANAGED_STORAGE ]; then
- SYSTEM_KSA+=(kubeflow-pipelines-minio-gcs-gateway)
- SYSTEM_KSA+=(kubeflow-pipelines-cloudsql-proxy)
-fi
-
-cat < RESOURCE_PREFIX= NAMESPACE= ./gcp-workload-identity-setup.sh
-```
-
-PROJECT_ID: GCP project ID your cluster belongs to.
-RESOURCE_PREFIX: Your preferred resource prefix for GCP resources this script creates.
-NAMESPACE: Optional. Kubernetes namespace your Kubeflow Pipelines standalone deployment belongs to. (Defaults to kubeflow)
-USE_GCP_MANAGED_STORAGE: Optional. Defaults to "false", specify "true" if you intend to use GCP managed storage (Google Cloud Storage and Cloud SQL) following instructions in:
-https://github.com/kubeflow/pipelines/tree/master/manifests/kustomize/sample
-EOF
-}
-if [ -z "$PROJECT_ID" ]; then
- usage
- echo
- echo "Error: PROJECT_ID env variable is empty!"
- exit 1
-fi
-if [ -z "$RESOURCE_PREFIX" ]; then
- usage
- echo
- echo "Error: RESOURCE_PREFIX env variable is empty!"
- exit 1
-fi
-echo "Env variables set:"
-echo "* PROJECT_ID=$PROJECT_ID"
-echo "* RESOURCE_PREFIX=$RESOURCE_PREFIX"
-echo "* NAMESPACE=$NAMESPACE"
-echo "* USE_GCP_MANAGED_STORAGE=${USE_GCP_MANAGED_STORAGE:-false}"
-echo
-
-SYSTEM_GSA_FULL="$SYSTEM_GSA@$PROJECT_ID.iam.gserviceaccount.com"
-USER_GSA_FULL="$USER_GSA@$PROJECT_ID.iam.gserviceaccount.com"
-
-cat </dev/null; then
- echo "KSA $name already exists"
- else
- kubectl create serviceaccount $name -n $NAMESPACE --save-config
- echo "KSA $name created"
- fi
-}
-
-# Bind KSA to GSA through workload identity.
-# Documentation: https://cloud.google.com/kubernetes-engine/docs/how-to/workload-identity
-function bind_gsa_and_ksa {
- local gsa=${1}
- local ksa=${2}
-
- gcloud iam service-accounts add-iam-policy-binding $gsa@$PROJECT_ID.iam.gserviceaccount.com \
- --member="serviceAccount:$PROJECT_ID.svc.id.goog[$NAMESPACE/$ksa]" \
- --role="roles/iam.workloadIdentityUser" \
- > /dev/null # hide verbose output
-
- create_ksa_if_not_present $ksa
- kubectl annotate serviceaccount \
- --namespace $NAMESPACE \
- --overwrite \
- $ksa \
- iam.gke.io/gcp-service-account=$gsa@$PROJECT_ID.iam.gserviceaccount.com
- echo "* Bound KSA $ksa to GSA $gsa"
-}
-
-echo "Binding each kfp system KSA to $SYSTEM_GSA"
-for ksa in ${SYSTEM_KSA[@]}; do
- bind_gsa_and_ksa $SYSTEM_GSA $ksa
-done
-
-echo "Binding each kfp user KSA to $USER_GSA"
-for ksa in ${USER_KSA[@]}; do
- bind_gsa_and_ksa $USER_GSA $ksa
-done
-
-echo
-echo "All the workload identity bindings have succeeded!"
-cat < /dev/null && pwd)"
-
-function format_yaml {
- local path=$1
- local tmp=$(mktemp)
- yq r "$path" > "$tmp"
- cp "$tmp" "$path"
-}
-echo "This formatting script uses yq, it can be downloaded at https://github.com/mikefarah/yq/releases/tag/3.3.0"
-kustomization_yamls_with_images=(
- "base/cache-deployer/kustomization.yaml"
- "base/cache/kustomization.yaml"
- "base/metadata/base/kustomization.yaml"
- "base/pipeline/metadata-writer/kustomization.yaml"
- "base/pipeline/kustomization.yaml"
- "env/gcp/inverse-proxy/kustomization.yaml"
-)
-for path in "${kustomization_yamls_with_images[@]}"
-do
- format_yaml "$DIR/../$path"
-done
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/hack/presubmit.sh b/charts/kubeflow/apps/kfp-tekton/upstream/hack/presubmit.sh
deleted file mode 100755
index 99cb0da..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/hack/presubmit.sh
+++ /dev/null
@@ -1,49 +0,0 @@
-#!/bin/bash
-#
-# Copyright 2021 The Kubeflow Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-# This is a wrapper script on top of test.sh, it installs required dependencies.
-
-set -ex
-
-DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" > /dev/null && pwd)"
-TMP="$(mktemp -d)"
-
-pushd "${TMP}"
-# Install Kustomize
-KUSTOMIZE_VERSION=3.10.0
-# Reference: https://kubectl.docs.kubernetes.io/installation/kustomize/binaries/
-curl -s -O "https://raw.githubusercontent.com/\
-kubernetes-sigs/kustomize/master/hack/install_kustomize.sh"
-chmod +x install_kustomize.sh
-./install_kustomize.sh "${KUSTOMIZE_VERSION}" /usr/local/bin/
-
-# Reference: https://github.com/mikefarah/yq/releases/tag/3.4.1
-curl -s -LO "https://github.com/mikefarah/yq/releases/download/3.4.1/yq_linux_amd64"
-chmod +x yq_linux_amd64
-mv yq_linux_amd64 /usr/local/bin/yq
-popd
-
-# kpt and kubectl should already be installed in gcr.io/google.com/cloudsdktool/cloud-sdk:latest
-# so we do not need to install them here
-
-# trigger real unit tests
-${DIR}/test.sh
-# verify release script runs properly
-
-${DIR}/release.sh v1.2.3-dummy
-# --no-pager sends output to stdout
-# Show git diff, so people can manually verify results of the release script
-git --no-pager diff
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/hack/release.sh b/charts/kubeflow/apps/kfp-tekton/upstream/hack/release.sh
deleted file mode 100755
index 14a2c53..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/hack/release.sh
+++ /dev/null
@@ -1,42 +0,0 @@
-#!/bin/bash
-#
-# Copyright 2020 The Kubeflow Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-set -ex
-
-TAG_NAME=$1
-DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" > /dev/null && pwd)"
-MANIFEST_DIR="${DIR}/.."
-
-if [[ -z "$TAG_NAME" ]]; then
- echo "Usage: release.sh " >&2
- exit 1
-fi
-
-echo "This release script uses yq, it can be downloaded at https://github.com/mikefarah/yq/releases/tag/3.3.0"
-kustomization_yamls_with_images=(
- "base/cache-deployer/kustomization.yaml"
- "base/cache/kustomization.yaml"
- "base/metadata/base/kustomization.yaml"
- "base/pipeline/metadata-writer/kustomization.yaml"
- "base/pipeline/kustomization.yaml"
- "env/gcp/inverse-proxy/kustomization.yaml"
-)
-for path in "${kustomization_yamls_with_images[@]}"
-do
- yq w -i "${MANIFEST_DIR}/$path" images[*].newTag "$TAG_NAME"
-done
-
-yq w -i "${MANIFEST_DIR}/base/installs/generic/pipeline-install-config.yaml" data.appVersion "$TAG_NAME"
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/hack/test.sh b/charts/kubeflow/apps/kfp-tekton/upstream/hack/test.sh
deleted file mode 100755
index 7e251fb..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/hack/test.sh
+++ /dev/null
@@ -1,59 +0,0 @@
-#!/bin/bash
-#
-# Copyright 2021 The Kubeflow Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-# This script quickly tests whether major entrances of the manifests folder can
-# be hydrated. Maybe we can improve on it to provide snapshot diff.
-
-set -ex
-
-DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" > /dev/null && pwd)"
-MANIFESTS_DIR="${DIR}/.."
-
-# Verify required tools are installed and show their versions.
-kubectl version --client=true
-kustomize version
-kpt version
-
-# These kustomization.yaml folders expect using kubectl kustomize (kustomize v2).
-kustomization_yamls=(
- "cluster-scoped-resources"
- "base/installs/generic"
- "env/dev"
- "env/gcp"
- "env/platform-agnostic"
- "env/platform-agnostic-pns"
- "env/platform-agnostic-emissary"
- "env/aws"
- "env/azure"
-)
-for path in "${kustomization_yamls[@]}"
-do
- kubectl kustomize "${MANIFESTS_DIR}/${path}" >/dev/null
-done
-
-# These kustomization.yaml folders expect using kustomize v3+.
-kustomization_yamls_v3=(
- "base/installs/multi-user"
- "env/platform-agnostic-multi-user"
- "env/platform-agnostic-multi-user-pns"
- "env/platform-agnostic-multi-user-emissary"
-)
-for path in "${kustomization_yamls_v3[@]}"
-do
- kustomize build "${MANIFESTS_DIR}/${path}" >/dev/null
-done
-
-kpt pkg tree "${MANIFESTS_DIR}" >/dev/null
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/sample/README.md b/charts/kubeflow/apps/kfp-tekton/upstream/sample/README.md
deleted file mode 100644
index c4bfe95..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/sample/README.md
+++ /dev/null
@@ -1,77 +0,0 @@
-# Sample installation
-
-1. Prepare a cluster and setup kubectl context
-Do whatever you want to customize your cluster. You can use existing cluster
-or create a new one.
-- **ML Usage** GPU normally is required for deep learning task.
-You may consider create **zero-sized GPU node-pool with autoscaling**.
-Please reference [GPU Tutorial](/samples/tutorials/gpu/).
-- **Security** You may consider use **Workload Identity** in GCP cluster.
-
-Here for simplicity, we create a small cluster with **--scopes=cloud-platform**
-which grants all the GCP permissions to the cluster.
-
-```
-gcloud container clusters create mycluster \
- --zone us-central1-a \
- --machine-type n1-standard-2 \
- --scopes cloud-platform \
- --enable-autoscaling \
- --min-nodes 1 \
- --max-nodes 5 \
- --num-nodes 3
-```
-
-2. Prepare CloudSQL
-
-Create CloudSQL instance. [Console](https://console.cloud.google.com/sql/instances).
-
-Here is a sample for demo.
-
-```
-gcloud beta sql instances create mycloudsqlname \
- --database-version=MYSQL_5_7 \
- --tier=db-n1-standard-1 \
- --region=us-central1 \
- --root-password=password123
-```
-
-You may use **Private IP** to well protect your CloudSQL.
-If you use **Private IP**, please go to [VPC network peering](https://console.cloud.google.com/networking/peering/list)
-to double check whether the "cloudsql-mysql-googleais-com" is created and the "Exchange custom routes" is enabled. You
-are expected to see "Peer VPC network is connected".
-
-3. Prepare GCS Bucket
-
-Create Cloud Storage bucket. [Console](https://console.cloud.google.com/storage).
-
-```
-gsutil mb -p myProjectId gs://myBucketName/
-```
-
-4. Customize your values
-- Edit **params.env**, **params-db-secret.env** and **cluster-scoped-resources/params.env**
-- Edit kustomization.yaml to set your namespace, e.x. "kubeflow"
-
-5. (Optional.) If the cluster is on Workload Identity, please run **[gcp-workload-identity-setup.sh](../gcp-workload-identity-setup.sh)**
- The script prints usage documentation when calling without argument. Note, you should
- call it with `USE_GCP_MANAGED_STORAGE=true` env var.
-
- - make sure the Google Service Account (GSA) can access the CloudSQL instance and GCS bucket
- - if your workload calls other GCP APIs, make sure the GSA can access them
-
-6. Install
-
-```
-kubectl apply -k sample/cluster-scoped-resources/
-
-kubectl wait crd/applications.app.k8s.io --for condition=established --timeout=60s
-
-kubectl apply -k sample/
-# If upper one action got failed, e.x. you used wrong value, try delete, fix and apply again
-# kubectl delete -k sample/
-
-kubectl wait applications/mypipeline -n kubeflow --for condition=Ready --timeout=1800s
-```
-
-Now you can find the installation in [Console](http://console.cloud.google.com/ai-platform/pipelines)
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/sample/cluster-scoped-resources/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/sample/cluster-scoped-resources/kustomization.yaml
deleted file mode 100644
index 83c54aa..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/sample/cluster-scoped-resources/kustomization.yaml
+++ /dev/null
@@ -1,10 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-# !!! If you want to customize the namespace,
-# please also update sample/kustomization.yaml's namespace field to the same value
-namespace: kubeflow
-
-bases:
- # Or github.com/kubeflow/pipelines/manifests/kustomize/cluster-scoped-resources?ref=1.0.0
- - ../../cluster-scoped-resources
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/sample/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/sample/kustomization.yaml
deleted file mode 100644
index 3af7efd..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/sample/kustomization.yaml
+++ /dev/null
@@ -1,39 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-bases:
- # Or github.com/kubeflow/pipelines/manifests/kustomize/env/gcp?ref=1.0.0
- - ../env/gcp
- # Kubeflow Pipelines servers are capable of collecting Prometheus metrics.
- # If you want to monitor your Kubeflow Pipelines servers with those metrics, you'll need a Prometheus server in your Kubeflow Pipelines cluster.
- # If you don't already have a Prometheus server up, you can uncomment the following configuration files for Prometheus.
- # If you have your own Prometheus server up already or you don't want a Prometheus server for monitoring, you can comment the following line out.
- # - ../third_party/prometheus
- # - ../third_party/grafana
-
-# Identifier for application manager to apply ownerReference.
-# The ownerReference ensures the resources get garbage collected
-# when application is deleted.
-commonLabels:
- application-crd-id: kubeflow-pipelines
-
-# Used by Kustomize
-configMapGenerator:
- - name: pipeline-install-config
- env: params.env
- behavior: merge
-
-secretGenerator:
- - name: mysql-secret
- env: params-db-secret.env
- behavior: merge
-
-# !!! If you want to customize the namespace,
-# please also update sample/cluster-scoped-resources/kustomization.yaml's namespace field to the same value
-namespace: kubeflow
-
-#### Customization ###
-# 1. Change values in params.env file
-# 2. Change values in params-db-secret.env file for CloudSQL username and password
-# 3. kubectl apply -k ./
-####
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/sample/params-db-secret.env b/charts/kubeflow/apps/kfp-tekton/upstream/sample/params-db-secret.env
deleted file mode 100644
index c15cb2e..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/sample/params-db-secret.env
+++ /dev/null
@@ -1,2 +0,0 @@
-username=root
-password=
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/sample/params.env b/charts/kubeflow/apps/kfp-tekton/upstream/sample/params.env
deleted file mode 100644
index 6d6cca0..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/sample/params.env
+++ /dev/null
@@ -1,4 +0,0 @@
-appName=mypipeline
-bucketName=mybucketname
-gcsProjectId=myprojectid
-gcsCloudSqlInstanceName=myprojectid:myregion:myinstance
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/application/application-controller-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/application/application-controller-deployment.yaml
deleted file mode 100644
index 1f1c589..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/application/application-controller-deployment.yaml
+++ /dev/null
@@ -1,38 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: controller-manager
- labels:
- control-plane: controller-manager
- controller-tools.k8s.io: "1.0"
-spec:
- selector:
- matchLabels:
- control-plane: controller-manager
- controller-tools.k8s.io: "1.0"
- template:
- metadata:
- labels:
- control-plane: controller-manager
- controller-tools.k8s.io: "1.0"
- spec:
- containers:
- - command:
- - /kube-app-manager
- # Built from https://github.com/kubernetes-sigs/application master branch on the date specified in the image tag.
- image: gcr.io/ml-pipeline/application-crd-controller:20231101
- imagePullPolicy: IfNotPresent
- name: manager
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- resources:
- limits:
- cpu: 100m
- memory: 30Mi
- requests:
- cpu: 100m
- memory: 20Mi
- serviceAccountName: application
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/application/application-controller-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/application/application-controller-role.yaml
deleted file mode 100644
index ac06135..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/application/application-controller-role.yaml
+++ /dev/null
@@ -1,21 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata:
- name: application-manager-role
-rules:
- - apiGroups:
- - '*'
- resources:
- - '*'
- verbs:
- - get
- - list
- - update
- - patch
- - watch
- - apiGroups:
- - app.k8s.io
- resources:
- - '*'
- verbs:
- - '*'
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/application/application-controller-rolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/application/application-controller-rolebinding.yaml
deleted file mode 100644
index 24b383a..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/application/application-controller-rolebinding.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: application-manager-rolebinding
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: application-manager-role
-subjects:
- - kind: ServiceAccount
- name: application
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/application/application-controller-sa.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/application/application-controller-sa.yaml
deleted file mode 100644
index bd13039..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/application/application-controller-sa.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: application
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/application/application-controller-service.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/application/application-controller-service.yaml
deleted file mode 100644
index e4b6086..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/application/application-controller-service.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: v1
-kind: Service
-metadata:
- name: controller-manager-service
- labels:
- control-plane: controller-manager
- controller-tools.k8s.io: "1.0"
-spec:
- selector:
- control-plane: controller-manager
- controller-tools.k8s.io: "1.0"
- ports:
- - port: 443
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/application/cluster-scoped/application-crd.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/application/cluster-scoped/application-crd.yaml
deleted file mode 100644
index 3e17478..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/application/cluster-scoped/application-crd.yaml
+++ /dev/null
@@ -1,531 +0,0 @@
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- labels:
- controller-tools.k8s.io: "1.0"
- annotations:
- api-approved.kubernetes.io: https://github.com/kubernetes-sigs/application/pull/2
- controller-gen.kubebuilder.io/version: v0.4.0
- creationTimestamp: null
- name: applications.app.k8s.io
-spec:
- group: app.k8s.io
- names:
- categories:
- - all
- kind: Application
- listKind: ApplicationList
- plural: applications
- shortNames:
- - app
- singular: application
- scope: Namespaced
- versions:
- - additionalPrinterColumns:
- - description: The type of the application
- jsonPath: .spec.descriptor.type
- name: Type
- type: string
- - description: The creation date
- jsonPath: .spec.descriptor.version
- name: Version
- type: string
- - description: The application object owns the matched resources
- jsonPath: .spec.addOwnerRef
- name: Owner
- type: boolean
- - description: Numbers of components ready
- jsonPath: .status.componentsReady
- name: Ready
- type: string
- - description: The creation date
- jsonPath: .metadata.creationTimestamp
- name: Age
- type: date
- name: v1beta1
- schema:
- openAPIV3Schema:
- description: Application is the Schema for the applications API
- properties:
- apiVersion:
- description: 'APIVersion defines the versioned schema of this representation
- of an object. Servers should convert recognized schemas to the latest
- internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
- type: string
- kind:
- description: 'Kind is a string value representing the REST resource this
- object represents. Servers may infer this from the endpoint the client
- submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
- type: string
- metadata:
- type: object
- spec:
- description: ApplicationSpec defines the specification for an Application.
- properties:
- addOwnerRef:
- description: AddOwnerRef objects - flag to indicate if we need to
- add OwnerRefs to matching objects Matching is done by using Selector
- to query all ComponentGroupKinds
- type: boolean
- assemblyPhase:
- description: AssemblyPhase represents the current phase of the application's
- assembly. An empty value is equivalent to "Succeeded".
- type: string
- componentKinds:
- description: ComponentGroupKinds is a list of Kinds for Application's
- components (e.g. Deployments, Pods, Services, CRDs). It can be used
- in conjunction with the Application's Selector to list or watch
- the Applications components.
- items:
- description: GroupKind specifies a Group and a Kind, but does not
- force a version. This is useful for identifying concepts during
- lookup stages without having partially valid types
- properties:
- group:
- type: string
- kind:
- type: string
- required:
- - group
- - kind
- type: object
- type: array
- descriptor:
- description: Descriptor regroups information and metadata about an
- application.
- properties:
- description:
- description: Description is a brief string description of the
- Application.
- type: string
- icons:
- description: Icons is an optional list of icons for an application.
- Icon information includes the source, size, and mime type.
- items:
- description: ImageSpec contains information about an image used
- as an icon.
- properties:
- size:
- description: (optional) The size of the image in pixels
- (e.g., 25x25).
- type: string
- src:
- description: The source for image represented as either
- an absolute URL to the image or a Data URL containing
- the image. Data URLs are defined in RFC 2397.
- type: string
- type:
- description: (optional) The mine type of the image (e.g.,
- "image/png").
- type: string
- required:
- - src
- type: object
- type: array
- keywords:
- description: Keywords is an optional list of key words associated
- with the application (e.g. MySQL, RDBMS, database).
- items:
- type: string
- type: array
- links:
- description: Links are a list of descriptive URLs intended to
- be used to surface additional documentation, dashboards, etc.
- items:
- description: Link contains information about an URL to surface
- documentation, dashboards, etc.
- properties:
- description:
- description: Description is human readable content explaining
- the purpose of the link.
- type: string
- url:
- description: Url typically points at a website address.
- type: string
- type: object
- type: array
- maintainers:
- description: Maintainers is an optional list of maintainers of
- the application. The maintainers in this list maintain the the
- source code, images, and package for the application.
- items:
- description: ContactData contains information about an individual
- or organization.
- properties:
- email:
- description: Email is the email address.
- type: string
- name:
- description: Name is the descriptive name.
- type: string
- url:
- description: Url could typically be a website address.
- type: string
- type: object
- type: array
- notes:
- description: Notes contain a human readable snippets intended
- as a quick start for the users of the Application. CommonMark
- markdown syntax may be used for rich text representation.
- type: string
- owners:
- description: Owners is an optional list of the owners of the installed
- application. The owners of the application should be contacted
- in the event of a planned or unplanned disruption affecting
- the application.
- items:
- description: ContactData contains information about an individual
- or organization.
- properties:
- email:
- description: Email is the email address.
- type: string
- name:
- description: Name is the descriptive name.
- type: string
- url:
- description: Url could typically be a website address.
- type: string
- type: object
- type: array
- type:
- description: Type is the type of the application (e.g. WordPress,
- MySQL, Cassandra).
- type: string
- version:
- description: Version is an optional version indicator for the
- Application.
- type: string
- type: object
- info:
- description: Info contains human readable key,value pairs for the
- Application.
- items:
- description: InfoItem is a human readable key,value pair containing
- important information about how to access the Application.
- properties:
- name:
- description: Name is a human readable title for this piece of
- information.
- type: string
- type:
- description: Type of the value for this InfoItem.
- type: string
- value:
- description: Value is human readable content.
- type: string
- valueFrom:
- description: ValueFrom defines a reference to derive the value
- from another source.
- properties:
- configMapKeyRef:
- description: Selects a key of a ConfigMap.
- properties:
- apiVersion:
- description: API version of the referent.
- type: string
- fieldPath:
- description: 'If referring to a piece of an object instead
- of an entire object, this string should contain a
- valid JSON/Go field access statement, such as desiredState.manifest.containers[2].
- For example, if the object reference is to a container
- within a pod, this would take on a value like: "spec.containers{name}"
- (where "name" refers to the name of the container
- that triggered the event) or if no container name
- is specified "spec.containers[2]" (container with
- index 2 in this pod). This syntax is chosen only to
- have some well-defined way of referencing a part of
- an object. TODO: this design is not final and this
- field is subject to change in the future.'
- type: string
- key:
- description: The key to select.
- type: string
- kind:
- description: 'Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
- type: string
- name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- namespace:
- description: 'Namespace of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/'
- type: string
- resourceVersion:
- description: 'Specific resourceVersion to which this
- reference is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency'
- type: string
- uid:
- description: 'UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids'
- type: string
- type: object
- ingressRef:
- description: Select an Ingress.
- properties:
- apiVersion:
- description: API version of the referent.
- type: string
- fieldPath:
- description: 'If referring to a piece of an object instead
- of an entire object, this string should contain a
- valid JSON/Go field access statement, such as desiredState.manifest.containers[2].
- For example, if the object reference is to a container
- within a pod, this would take on a value like: "spec.containers{name}"
- (where "name" refers to the name of the container
- that triggered the event) or if no container name
- is specified "spec.containers[2]" (container with
- index 2 in this pod). This syntax is chosen only to
- have some well-defined way of referencing a part of
- an object. TODO: this design is not final and this
- field is subject to change in the future.'
- type: string
- host:
- description: The optional host to select.
- type: string
- kind:
- description: 'Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
- type: string
- name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- namespace:
- description: 'Namespace of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/'
- type: string
- path:
- description: The optional HTTP path.
- type: string
- protocol:
- description: Protocol for the ingress
- type: string
- resourceVersion:
- description: 'Specific resourceVersion to which this
- reference is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency'
- type: string
- uid:
- description: 'UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids'
- type: string
- type: object
- secretKeyRef:
- description: Selects a key of a Secret.
- properties:
- apiVersion:
- description: API version of the referent.
- type: string
- fieldPath:
- description: 'If referring to a piece of an object instead
- of an entire object, this string should contain a
- valid JSON/Go field access statement, such as desiredState.manifest.containers[2].
- For example, if the object reference is to a container
- within a pod, this would take on a value like: "spec.containers{name}"
- (where "name" refers to the name of the container
- that triggered the event) or if no container name
- is specified "spec.containers[2]" (container with
- index 2 in this pod). This syntax is chosen only to
- have some well-defined way of referencing a part of
- an object. TODO: this design is not final and this
- field is subject to change in the future.'
- type: string
- key:
- description: The key to select.
- type: string
- kind:
- description: 'Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
- type: string
- name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- namespace:
- description: 'Namespace of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/'
- type: string
- resourceVersion:
- description: 'Specific resourceVersion to which this
- reference is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency'
- type: string
- uid:
- description: 'UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids'
- type: string
- type: object
- serviceRef:
- description: Select a Service.
- properties:
- apiVersion:
- description: API version of the referent.
- type: string
- fieldPath:
- description: 'If referring to a piece of an object instead
- of an entire object, this string should contain a
- valid JSON/Go field access statement, such as desiredState.manifest.containers[2].
- For example, if the object reference is to a container
- within a pod, this would take on a value like: "spec.containers{name}"
- (where "name" refers to the name of the container
- that triggered the event) or if no container name
- is specified "spec.containers[2]" (container with
- index 2 in this pod). This syntax is chosen only to
- have some well-defined way of referencing a part of
- an object. TODO: this design is not final and this
- field is subject to change in the future.'
- type: string
- kind:
- description: 'Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
- type: string
- name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- namespace:
- description: 'Namespace of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/'
- type: string
- path:
- description: The optional HTTP path.
- type: string
- port:
- description: The optional port to select.
- format: int32
- type: integer
- protocol:
- description: Protocol for the service
- type: string
- resourceVersion:
- description: 'Specific resourceVersion to which this
- reference is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency'
- type: string
- uid:
- description: 'UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids'
- type: string
- type: object
- type:
- description: Type of source.
- type: string
- type: object
- type: object
- type: array
- selector:
- description: 'Selector is a label query over kinds that created by
- the application. It must match the component objects'' labels. More
- info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors'
- properties:
- matchExpressions:
- description: matchExpressions is a list of label selector requirements.
- The requirements are ANDed.
- items:
- description: A label selector requirement is a selector that
- contains values, a key, and an operator that relates the key
- and values.
- properties:
- key:
- description: key is the label key that the selector applies
- to.
- type: string
- operator:
- description: operator represents a key's relationship to
- a set of values. Valid operators are In, NotIn, Exists
- and DoesNotExist.
- type: string
- values:
- description: values is an array of string values. If the
- operator is In or NotIn, the values array must be non-empty.
- If the operator is Exists or DoesNotExist, the values
- array must be empty. This array is replaced during a strategic
- merge patch.
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- description: matchLabels is a map of {key,value} pairs. A single
- {key,value} in the matchLabels map is equivalent to an element
- of matchExpressions, whose key field is "key", the operator
- is "In", and the values array contains only "value". The requirements
- are ANDed.
- type: object
- type: object
- type: object
- status:
- description: ApplicationStatus defines controller's the observed state
- of Application
- properties:
- components:
- description: Object status array for all matching objects
- items:
- description: ObjectStatus is a generic status holder for objects
- properties:
- group:
- description: Object group
- type: string
- kind:
- description: Kind of object
- type: string
- link:
- description: Link to object
- type: string
- name:
- description: Name of object
- type: string
- status:
- description: 'Status. Values: InProgress, Ready, Unknown'
- type: string
- type: object
- type: array
- componentsReady:
- description: 'ComponentsReady: status of the components in the format
- ready/total'
- type: string
- conditions:
- description: Conditions represents the latest state of the object
- items:
- description: Condition describes the state of an object at a certain
- point.
- properties:
- lastTransitionTime:
- description: Last time the condition transitioned from one status
- to another.
- format: date-time
- type: string
- lastUpdateTime:
- description: Last time the condition was probed
- format: date-time
- type: string
- message:
- description: A human readable message indicating details about
- the transition.
- type: string
- reason:
- description: The reason for the condition's last transition.
- type: string
- status:
- description: Status of the condition, one of True, False, Unknown.
- type: string
- type:
- description: Type of condition.
- type: string
- required:
- - status
- - type
- type: object
- type: array
- observedGeneration:
- description: ObservedGeneration is the most recent generation observed.
- It corresponds to the Object's generation, which is updated on mutation
- by the API Server.
- format: int64
- type: integer
- type: object
- type: object
- served: true
- storage: true
- subresources:
- status: {}
-status:
- acceptedNames:
- kind: ""
- plural: ""
- conditions: []
- storedVersions: []
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/application/cluster-scoped/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/application/cluster-scoped/kustomization.yaml
deleted file mode 100644
index f54a41c..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/application/cluster-scoped/kustomization.yaml
+++ /dev/null
@@ -1,9 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
-- application-crd.yaml
-
-# Update application CRD:
-# Copy the upstream file to application-crd.yaml of the current folder.
-# Upstream file: https://github.com/kubernetes-sigs/application/blob/master/config/crd/bases/app.k8s.io_applications.yaml
-# Keep label controller-tools.k8s.io.
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/application/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/application/kustomization.yaml
deleted file mode 100644
index c35e3ee..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/application/kustomization.yaml
+++ /dev/null
@@ -1,9 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
- - application-controller-deployment.yaml
- - application-controller-role.yaml
- - application-controller-rolebinding.yaml
- - application-controller-sa.yaml
- - application-controller-service.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/.krmignore b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/.krmignore
deleted file mode 100644
index 0459513..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/.krmignore
+++ /dev/null
@@ -1 +0,0 @@
-upstream
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/Kptfile b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/Kptfile
deleted file mode 100644
index bf0baf9..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/Kptfile
+++ /dev/null
@@ -1,6 +0,0 @@
-apiVersion: kpt.dev/v1
-kind: Kptfile
-metadata:
- name: argo
-info:
- description: argo Kptfile in order to ignore upstream/ folder.
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/Makefile b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/Makefile
deleted file mode 100644
index c057af1..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/Makefile
+++ /dev/null
@@ -1,12 +0,0 @@
-REPO_ROOT=../../../..
-
-update:
- rm -rf upstream
- mkdir upstream
- kpt pkg get "https://github.com/argoproj/argo-workflows.git/manifests@$$(cat $(REPO_ROOT)/third_party/argo/VERSION)" upstream/
- # Remove the pre-hydrated manifests which we do not use.
- rm upstream/manifests/*.yaml
- # Remove README.md which might be confusing here.
- rm upstream/manifests/README.md
- # Include argo license file
- curl -Lo upstream/manifests/LICENSE "https://raw.githubusercontent.com/argoproj/argo-workflows/$$(cat $(REPO_ROOT)/third_party/argo/VERSION)/LICENSE"
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/README.md b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/README.md
deleted file mode 100644
index b5f8238..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/README.md
+++ /dev/null
@@ -1,35 +0,0 @@
-# Manifests for Argo workflows
-
-Kubeflow Pipelines uses [Argo Workflows](https://argoproj.github.io/argo-workflows/) as the underlying workflow execution engine.
-
-This folder contains:
-
-* `upstream/manifests` a mirror of argo workflows manifests upstream. It should never be edited here. Run `make update` to update it.
-* `installs` a folder with preconfigured argo workflows installations used in Kubeflow Pipelines distributions.
-
- Major differences from upstream argo manifests:
-
- * Argo server is not included.
- * Argo workflow controller configmap is preconfigured to integrate with KFP.
- * Images are configured to use KFP redistributed ones which comply with open source licenses.
- * A default artifact repository config is added for in-cluster minio service.
-
-## Upgrade argo
-
-Refer to [third_party/argo/README.md](../../../../third_party/argo/README.md).
-
-### Upgrade argo manifests
-
-Requirement:
-
-Use kpt version above 1.0.0-beta.6, refer to [kpt installation](https://kpt.dev/installation/) for downloading kpt.
-
-As one step of above, we need to upgrade argo manifests in this folder.
-
-1. Run:
-
- ```bash
- make update
- ```
-
- Note, argo version is pulled from [third_party/argo/VERSION](../../../../third_party/argo/VERSION). Edit the VERSION file first.
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/base/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/base/kustomization.yaml
deleted file mode 100644
index 81c3b93..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/base/kustomization.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-bases:
-- ../upstream/manifests/base/workflow-controller
-
-patchesStrategicMerge:
-- workflow-controller-deployment-patch.yaml
-- workflow-controller-configmap-patch.yaml
-
-# Allow Kustomize vars to replace fields defined in params.yaml.
-# The vars can be defined anywhere.
-configurations:
-- params.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/base/params.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/base/params.yaml
deleted file mode 100644
index 91e9f1f..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/base/params.yaml
+++ /dev/null
@@ -1,3 +0,0 @@
-varReference:
-- path: data/artifactRepository
- kind: ConfigMap
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/base/workflow-controller-configmap-patch.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/base/workflow-controller-configmap-patch.yaml
deleted file mode 100644
index 331ddf7..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/base/workflow-controller-configmap-patch.yaml
+++ /dev/null
@@ -1,41 +0,0 @@
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: workflow-controller-configmap
-data:
- # References:
- # * https://github.com/argoproj/argo-workflows/blob/v3.3.10/config/config.go
- # * https://github.com/argoproj/argo-workflows/blob/v3.3.10/docs/workflow-controller-configmap.md
- # * https://github.com/argoproj/argo-workflows/blob/v3.3.10/docs/workflow-controller-configmap.yaml
-
- # emissary executor is a more portable default, see https://github.com/kubeflow/pipelines/issues/1654.
- containerRuntimeExecutor: emissary
-
- # In artifactRepository.s3.endpoint, $(kfp-namespace) is needed, because in multi-user mode, pipelines may run in other namespaces.
- artifactRepository: |
- archiveLogs: true
- s3:
- endpoint: "minio-service.$(kfp-namespace):9000"
- bucket: "$(kfp-artifact-bucket-name)"
- # keyFormat is a format pattern to define how artifacts will be organized in a bucket.
- # It can reference workflow metadata variables such as workflow.namespace, workflow.name,
- # pod.name. Can also use strftime formating of workflow.creationTimestamp so that workflow
- # artifacts can be organized by date. If omitted, will use `{{workflow.name}}/{{pod.name}}`,
- # which has potential for have collisions, because names do not guarantee they are unique
- # over the lifetime of the cluster.
- # Refer to https://kubernetes.io/docs/concepts/overview/working-with-objects/names/.
- #
- # The following format looks like:
- # artifacts/my-workflow-abc123/2018/08/23/my-workflow-abc123-1234567890
- # Adding date into the path greatly reduces the chance of {{pod.name}} collision.
- keyFormat: "artifacts/{{workflow.name}}/{{workflow.creationTimestamp.Y}}/{{workflow.creationTimestamp.m}}/{{workflow.creationTimestamp.d}}/{{pod.name}}"
- # insecure will disable TLS. Primarily used for minio installs not configured with TLS
- insecure: true
- accessKeySecret:
- name: mlpipeline-minio-artifact
- key: accesskey
- secretKeySecret:
- name: mlpipeline-minio-artifact
- key: secretkey
- executor: |
- imagePullPolicy: IfNotPresent
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/base/workflow-controller-deployment-patch.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/base/workflow-controller-deployment-patch.yaml
deleted file mode 100644
index a39ed3a..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/base/workflow-controller-deployment-patch.yaml
+++ /dev/null
@@ -1,19 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: workflow-controller
-spec:
- template:
- spec:
- containers:
- - name: workflow-controller
- image: gcr.io/ml-pipeline/workflow-controller:v3.3.10-license-compliance
- args:
- - --configmap
- - workflow-controller-configmap
- - --executor-image
- - gcr.io/ml-pipeline/argoexec:v3.3.10-license-compliance
- resources:
- requests:
- cpu: 100m
- memory: 500Mi
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/installs/cluster/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/installs/cluster/kustomization.yaml
deleted file mode 100644
index 3bb1a46..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/installs/cluster/kustomization.yaml
+++ /dev/null
@@ -1,18 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-bases:
-# Note, we do not explicitly separate cluster-scoped resources for cluster installation,
-# because people who deploy cluster-scoped resources should be the same as who deploys
-# namespaced resources.
-- ../../upstream/manifests/base/crds
-- ../../upstream/manifests/cluster-install/workflow-controller-rbac
-- ../../base
-
-patchesJson6902:
-- target:
- group: rbac.authorization.k8s.io
- version: v1
- kind: ClusterRoleBinding
- name: argo-binding
- path: workflow-controller-clusterrolebinding-patch.json
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/installs/cluster/workflow-controller-clusterrolebinding-patch.json b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/installs/cluster/workflow-controller-clusterrolebinding-patch.json
deleted file mode 100644
index 05e9322..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/installs/cluster/workflow-controller-clusterrolebinding-patch.json
+++ /dev/null
@@ -1,7 +0,0 @@
-[
- {
- "op": "replace",
- "path": "/subjects/0/namespace",
- "value": "kubeflow"
- }
-]
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/installs/namespace/cluster-scoped/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/installs/namespace/cluster-scoped/kustomization.yaml
deleted file mode 100644
index 86733da..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/installs/namespace/cluster-scoped/kustomization.yaml
+++ /dev/null
@@ -1,5 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-bases:
-# Minimal CRDs omit schema validation, recommended for production cluster.
-- ../../../upstream/manifests/base/crds/minimal
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/installs/namespace/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/installs/namespace/kustomization.yaml
deleted file mode 100644
index 1a861c4..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/installs/namespace/kustomization.yaml
+++ /dev/null
@@ -1,19 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-# This kustomization.yaml is built mirroring ../../upstream/manifests/namespace-install/kustomization.yaml.
-# The differences:
-# * this does not include argo server.
-# * this separates cluster-scoped resources to its own folder.
-
-bases:
-- ../../base
-- ../../upstream/manifests/namespace-install/workflow-controller-rbac
-
-patchesJson6902:
-- target:
- version: v1
- group: apps
- kind: Deployment
- name: workflow-controller
- path: workflow-controller-deployment-patch.json
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/installs/namespace/workflow-controller-deployment-patch.json b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/installs/namespace/workflow-controller-deployment-patch.json
deleted file mode 100644
index b8d82b0..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/installs/namespace/workflow-controller-deployment-patch.json
+++ /dev/null
@@ -1,7 +0,0 @@
-[
- {
- "op": "add",
- "path": "/spec/template/spec/containers/0/args/-",
- "value": "--namespaced"
- }
-]
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/Kptfile b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/Kptfile
deleted file mode 100644
index b144735..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/Kptfile
+++ /dev/null
@@ -1,18 +0,0 @@
-apiVersion: kpt.dev/v1
-kind: Kptfile
-metadata:
- name: manifests
-upstream:
- type: git
- git:
- repo: https://github.com/argoproj/argo-workflows
- directory: /manifests
- ref: v3.3.10
- updateStrategy: resource-merge
-upstreamLock:
- type: git
- git:
- repo: https://github.com/argoproj/argo-workflows
- directory: /manifests
- ref: v3.3.10
- commit: b19870d737a14b21d86f6267642a63dd14e5acd5
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/LICENSE b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/LICENSE
deleted file mode 100644
index 67e99b0..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/LICENSE
+++ /dev/null
@@ -1,202 +0,0 @@
-
- Apache License
- Version 2.0, January 2004
- http://www.apache.org/licenses/
-
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
- 1. Definitions.
-
- "License" shall mean the terms and conditions for use, reproduction,
- and distribution as defined by Sections 1 through 9 of this document.
-
- "Licensor" shall mean the copyright owner or entity authorized by
- the copyright owner that is granting the License.
-
- "Legal Entity" shall mean the union of the acting entity and all
- other entities that control, are controlled by, or are under common
- control with that entity. For the purposes of this definition,
- "control" means (i) the power, direct or indirect, to cause the
- direction or management of such entity, whether by contract or
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
- outstanding shares, or (iii) beneficial ownership of such entity.
-
- "You" (or "Your") shall mean an individual or Legal Entity
- exercising permissions granted by this License.
-
- "Source" form shall mean the preferred form for making modifications,
- including but not limited to software source code, documentation
- source, and configuration files.
-
- "Object" form shall mean any form resulting from mechanical
- transformation or translation of a Source form, including but
- not limited to compiled object code, generated documentation,
- and conversions to other media types.
-
- "Work" shall mean the work of authorship, whether in Source or
- Object form, made available under the License, as indicated by a
- copyright notice that is included in or attached to the work
- (an example is provided in the Appendix below).
-
- "Derivative Works" shall mean any work, whether in Source or Object
- form, that is based on (or derived from) the Work and for which the
- editorial revisions, annotations, elaborations, or other modifications
- represent, as a whole, an original work of authorship. For the purposes
- of this License, Derivative Works shall not include works that remain
- separable from, or merely link (or bind by name) to the interfaces of,
- the Work and Derivative Works thereof.
-
- "Contribution" shall mean any work of authorship, including
- the original version of the Work and any modifications or additions
- to that Work or Derivative Works thereof, that is intentionally
- submitted to Licensor for inclusion in the Work by the copyright owner
- or by an individual or Legal Entity authorized to submit on behalf of
- the copyright owner. For the purposes of this definition, "submitted"
- means any form of electronic, verbal, or written communication sent
- to the Licensor or its representatives, including but not limited to
- communication on electronic mailing lists, source code control systems,
- and issue tracking systems that are managed by, or on behalf of, the
- Licensor for the purpose of discussing and improving the Work, but
- excluding communication that is conspicuously marked or otherwise
- designated in writing by the copyright owner as "Not a Contribution."
-
- "Contributor" shall mean Licensor and any individual or Legal Entity
- on behalf of whom a Contribution has been received by Licensor and
- subsequently incorporated within the Work.
-
- 2. Grant of Copyright License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- copyright license to reproduce, prepare Derivative Works of,
- publicly display, publicly perform, sublicense, and distribute the
- Work and such Derivative Works in Source or Object form.
-
- 3. Grant of Patent License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- (except as stated in this section) patent license to make, have made,
- use, offer to sell, sell, import, and otherwise transfer the Work,
- where such license applies only to those patent claims licensable
- by such Contributor that are necessarily infringed by their
- Contribution(s) alone or by combination of their Contribution(s)
- with the Work to which such Contribution(s) was submitted. If You
- institute patent litigation against any entity (including a
- cross-claim or counterclaim in a lawsuit) alleging that the Work
- or a Contribution incorporated within the Work constitutes direct
- or contributory patent infringement, then any patent licenses
- granted to You under this License for that Work shall terminate
- as of the date such litigation is filed.
-
- 4. Redistribution. You may reproduce and distribute copies of the
- Work or Derivative Works thereof in any medium, with or without
- modifications, and in Source or Object form, provided that You
- meet the following conditions:
-
- (a) You must give any other recipients of the Work or
- Derivative Works a copy of this License; and
-
- (b) You must cause any modified files to carry prominent notices
- stating that You changed the files; and
-
- (c) You must retain, in the Source form of any Derivative Works
- that You distribute, all copyright, patent, trademark, and
- attribution notices from the Source form of the Work,
- excluding those notices that do not pertain to any part of
- the Derivative Works; and
-
- (d) If the Work includes a "NOTICE" text file as part of its
- distribution, then any Derivative Works that You distribute must
- include a readable copy of the attribution notices contained
- within such NOTICE file, excluding those notices that do not
- pertain to any part of the Derivative Works, in at least one
- of the following places: within a NOTICE text file distributed
- as part of the Derivative Works; within the Source form or
- documentation, if provided along with the Derivative Works; or,
- within a display generated by the Derivative Works, if and
- wherever such third-party notices normally appear. The contents
- of the NOTICE file are for informational purposes only and
- do not modify the License. You may add Your own attribution
- notices within Derivative Works that You distribute, alongside
- or as an addendum to the NOTICE text from the Work, provided
- that such additional attribution notices cannot be construed
- as modifying the License.
-
- You may add Your own copyright statement to Your modifications and
- may provide additional or different license terms and conditions
- for use, reproduction, or distribution of Your modifications, or
- for any such Derivative Works as a whole, provided Your use,
- reproduction, and distribution of the Work otherwise complies with
- the conditions stated in this License.
-
- 5. Submission of Contributions. Unless You explicitly state otherwise,
- any Contribution intentionally submitted for inclusion in the Work
- by You to the Licensor shall be under the terms and conditions of
- this License, without any additional terms or conditions.
- Notwithstanding the above, nothing herein shall supersede or modify
- the terms of any separate license agreement you may have executed
- with Licensor regarding such Contributions.
-
- 6. Trademarks. This License does not grant permission to use the trade
- names, trademarks, service marks, or product names of the Licensor,
- except as required for reasonable and customary use in describing the
- origin of the Work and reproducing the content of the NOTICE file.
-
- 7. Disclaimer of Warranty. Unless required by applicable law or
- agreed to in writing, Licensor provides the Work (and each
- Contributor provides its Contributions) on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- implied, including, without limitation, any warranties or conditions
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
- PARTICULAR PURPOSE. You are solely responsible for determining the
- appropriateness of using or redistributing the Work and assume any
- risks associated with Your exercise of permissions under this License.
-
- 8. Limitation of Liability. In no event and under no legal theory,
- whether in tort (including negligence), contract, or otherwise,
- unless required by applicable law (such as deliberate and grossly
- negligent acts) or agreed to in writing, shall any Contributor be
- liable to You for damages, including any direct, indirect, special,
- incidental, or consequential damages of any character arising as a
- result of this License or out of the use or inability to use the
- Work (including but not limited to damages for loss of goodwill,
- work stoppage, computer failure or malfunction, or any and all
- other commercial damages or losses), even if such Contributor
- has been advised of the possibility of such damages.
-
- 9. Accepting Warranty or Additional Liability. While redistributing
- the Work or Derivative Works thereof, You may choose to offer,
- and charge a fee for, acceptance of support, warranty, indemnity,
- or other liability obligations and/or rights consistent with this
- License. However, in accepting such obligations, You may act only
- on Your own behalf and on Your sole responsibility, not on behalf
- of any other Contributor, and only if You agree to indemnify,
- defend, and hold each Contributor harmless for any liability
- incurred by, or claims asserted against, such Contributor by reason
- of your accepting any such warranty or additional liability.
-
- END OF TERMS AND CONDITIONS
-
- APPENDIX: How to apply the Apache License to your work.
-
- To apply the Apache License to your work, attach the following
- boilerplate notice, with the fields enclosed by brackets "[]"
- replaced with your own identifying information. (Don't include
- the brackets!) The text should be enclosed in the appropriate
- comment syntax for the file format. We also recommend that a
- file or class name and description of purpose be included on the
- same "printed page" as the copyright notice for easier
- identification within third-party archives.
-
- Copyright 2017-2018 The Argo Authors
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/argo-server/argo-server-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/argo-server/argo-server-deployment.yaml
deleted file mode 100644
index 861f98f..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/argo-server/argo-server-deployment.yaml
+++ /dev/null
@@ -1,48 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata: # kpt-merge: /argo-server
- name: argo-server
- annotations:
- internal.kpt.dev/upstream-identifier: 'apps|Deployment|default|argo-server'
-spec:
- selector:
- matchLabels:
- app: argo-server
- template:
- metadata:
- labels:
- app: argo-server
- spec:
- serviceAccountName: argo-server
- containers:
- - name: argo-server
- image: quay.io/argoproj/argocli:latest
- securityContext:
- readOnlyRootFilesystem: true
- runAsNonRoot: true
- allowPrivilegeEscalation: false
- capabilities:
- drop:
- - ALL
- args: [server]
- env: []
- ports:
- - name: web
- containerPort: 2746
- readinessProbe:
- httpGet:
- port: 2746
- scheme: HTTPS
- path: /
- initialDelaySeconds: 10
- periodSeconds: 20
- volumeMounts:
- - mountPath: /tmp
- name: tmp
- volumes:
- - name: tmp
- emptyDir: {}
- securityContext:
- runAsNonRoot: true
- nodeSelector:
- kubernetes.io/os: linux
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/argo-server/argo-server-sa.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/argo-server/argo-server-sa.yaml
deleted file mode 100644
index 478935f..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/argo-server/argo-server-sa.yaml
+++ /dev/null
@@ -1,6 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata: # kpt-merge: /argo-server
- name: argo-server
- annotations:
- internal.kpt.dev/upstream-identifier: '|ServiceAccount|default|argo-server'
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/argo-server/argo-server-service.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/argo-server/argo-server-service.yaml
deleted file mode 100644
index c4da7e4..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/argo-server/argo-server-service.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: v1
-kind: Service
-metadata: # kpt-merge: /argo-server
- name: argo-server
- annotations:
- internal.kpt.dev/upstream-identifier: '|Service|default|argo-server'
-spec:
- selector:
- app: argo-server
- ports:
- - name: web
- port: 2746
- targetPort: 2746
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/argo-server/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/argo-server/kustomization.yaml
deleted file mode 100644
index e17bc75..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/argo-server/kustomization.yaml
+++ /dev/null
@@ -1,6 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
-- argo-server-deployment.yaml
-- argo-server-sa.yaml
-- argo-server-service.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/full/README.md b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/full/README.md
deleted file mode 100644
index bca5186..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/full/README.md
+++ /dev/null
@@ -1,3 +0,0 @@
-# Full CRDs
-
-These CRDs have full schema validation. As a result, they are large and probably not suitable to be used in your cluster.
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_clusterworkflowtemplates.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_clusterworkflowtemplates.yaml
deleted file mode 100644
index e05e1ab..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_clusterworkflowtemplates.yaml
+++ /dev/null
@@ -1,15721 +0,0 @@
-# This is an auto-generated file. DO NOT EDIT
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata: # kpt-merge: /clusterworkflowtemplates.argoproj.io
- name: clusterworkflowtemplates.argoproj.io
- annotations:
- internal.kpt.dev/upstream-identifier: 'apiextensions.k8s.io|CustomResourceDefinition|default|clusterworkflowtemplates.argoproj.io'
-spec:
- group: argoproj.io
- names:
- kind: ClusterWorkflowTemplate
- listKind: ClusterWorkflowTemplateList
- plural: clusterworkflowtemplates
- shortNames:
- - clusterwftmpl
- - cwft
- singular: clusterworkflowtemplate
- scope: Cluster
- versions:
- - name: v1alpha1
- schema:
- openAPIV3Schema:
- properties:
- apiVersion:
- type: string
- kind:
- type: string
- metadata:
- type: object
- spec:
- properties:
- activeDeadlineSeconds:
- format: int64
- type: integer
- affinity:
- properties:
- nodeAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- preference:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- weight:
- format: int32
- type: integer
- required:
- - preference
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- properties:
- nodeSelectorTerms:
- items:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- type: array
- required:
- - nodeSelectorTerms
- type: object
- type: object
- podAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- podAntiAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- type: object
- archiveLogs:
- type: boolean
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- artifactRepositoryRef:
- properties:
- configMap:
- type: string
- key:
- type: string
- type: object
- automountServiceAccountToken:
- type: boolean
- dnsConfig:
- properties:
- nameservers:
- items:
- type: string
- type: array
- options:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- type: object
- type: array
- searches:
- items:
- type: string
- type: array
- type: object
- dnsPolicy:
- type: string
- entrypoint:
- type: string
- executor:
- properties:
- serviceAccountName:
- type: string
- type: object
- hooks:
- additionalProperties:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- expression:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- type: object
- type: object
- hostAliases:
- items:
- properties:
- hostnames:
- items:
- type: string
- type: array
- ip:
- type: string
- type: object
- type: array
- hostNetwork:
- type: boolean
- imagePullSecrets:
- items:
- properties:
- name:
- type: string
- type: object
- type: array
- metrics:
- properties:
- prometheus:
- items:
- properties:
- counter:
- properties:
- value:
- type: string
- required:
- - value
- type: object
- gauge:
- properties:
- realtime:
- type: boolean
- value:
- type: string
- required:
- - realtime
- - value
- type: object
- help:
- type: string
- histogram:
- properties:
- buckets:
- items:
- type: number
- type: array
- value:
- type: string
- required:
- - buckets
- - value
- type: object
- labels:
- items:
- properties:
- key:
- type: string
- value:
- type: string
- required:
- - key
- - value
- type: object
- type: array
- name:
- type: string
- when:
- type: string
- required:
- - help
- - name
- type: object
- type: array
- required:
- - prometheus
- type: object
- nodeSelector:
- additionalProperties:
- type: string
- type: object
- onExit:
- type: string
- parallelism:
- format: int64
- type: integer
- podDisruptionBudget:
- properties:
- maxUnavailable:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- minAvailable:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- type: object
- podGC:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- strategy:
- type: string
- type: object
- podMetadata:
- properties:
- annotations:
- additionalProperties:
- type: string
- type: object
- labels:
- additionalProperties:
- type: string
- type: object
- type: object
- podPriority:
- format: int32
- type: integer
- podPriorityClassName:
- type: string
- podSpecPatch:
- type: string
- priority:
- format: int32
- type: integer
- retryStrategy:
- properties:
- affinity:
- properties:
- nodeAntiAffinity:
- type: object
- type: object
- backoff:
- properties:
- duration:
- type: string
- factor:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- maxDuration:
- type: string
- type: object
- expression:
- type: string
- limit:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- retryPolicy:
- type: string
- type: object
- schedulerName:
- type: string
- securityContext:
- properties:
- fsGroup:
- format: int64
- type: integer
- fsGroupChangePolicy:
- type: string
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- supplementalGroups:
- items:
- format: int64
- type: integer
- type: array
- sysctls:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- serviceAccountName:
- type: string
- shutdown:
- type: string
- suspend:
- type: boolean
- synchronization:
- properties:
- mutex:
- properties:
- name:
- type: string
- type: object
- semaphore:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- type: object
- templateDefaults:
- properties:
- activeDeadlineSeconds:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- affinity:
- properties:
- nodeAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- preference:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- weight:
- format: int32
- type: integer
- required:
- - preference
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- properties:
- nodeSelectorTerms:
- items:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- type: array
- required:
- - nodeSelectorTerms
- type: object
- type: object
- podAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- podAntiAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- type: object
- archiveLocation:
- properties:
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- type: object
- automountServiceAccountToken:
- type: boolean
- container:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- containerSet:
- properties:
- containers:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- dependencies:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- retryStrategy:
- properties:
- duration:
- type: string
- retries:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - retries
- type: object
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- required:
- - containers
- type: object
- daemon:
- type: boolean
- dag:
- properties:
- failFast:
- type: boolean
- target:
- type: string
- tasks:
- items:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- continueOn:
- properties:
- error:
- type: boolean
- failed:
- type: boolean
- type: object
- dependencies:
- items:
- type: string
- type: array
- depends:
- type: string
- hooks:
- additionalProperties:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- expression:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- type: object
- type: object
- inline: {}
- name:
- type: string
- onExit:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- when:
- type: string
- withItems:
- items:
- type: object
- type: array
- withParam:
- type: string
- withSequence:
- properties:
- count:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- end:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- format:
- type: string
- start:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- type: object
- required:
- - name
- type: object
- type: array
- required:
- - tasks
- type: object
- data:
- properties:
- source:
- properties:
- artifactPaths:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: object
- transformation:
- items:
- properties:
- expression:
- type: string
- required:
- - expression
- type: object
- type: array
- required:
- - source
- - transformation
- type: object
- executor:
- properties:
- serviceAccountName:
- type: string
- type: object
- failFast:
- type: boolean
- hostAliases:
- items:
- properties:
- hostnames:
- items:
- type: string
- type: array
- ip:
- type: string
- type: object
- type: array
- http:
- properties:
- body:
- type: string
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- insecureSkipVerify:
- type: boolean
- method:
- type: string
- successCondition:
- type: string
- timeoutSeconds:
- format: int64
- type: integer
- url:
- type: string
- required:
- - url
- type: object
- initContainers:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- mirrorVolumeMounts:
- type: boolean
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- inputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- memoize:
- properties:
- cache:
- properties:
- configMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - configMap
- type: object
- key:
- type: string
- maxAge:
- type: string
- required:
- - cache
- - key
- - maxAge
- type: object
- metadata:
- properties:
- annotations:
- additionalProperties:
- type: string
- type: object
- labels:
- additionalProperties:
- type: string
- type: object
- type: object
- metrics:
- properties:
- prometheus:
- items:
- properties:
- counter:
- properties:
- value:
- type: string
- required:
- - value
- type: object
- gauge:
- properties:
- realtime:
- type: boolean
- value:
- type: string
- required:
- - realtime
- - value
- type: object
- help:
- type: string
- histogram:
- properties:
- buckets:
- items:
- type: number
- type: array
- value:
- type: string
- required:
- - buckets
- - value
- type: object
- labels:
- items:
- properties:
- key:
- type: string
- value:
- type: string
- required:
- - key
- - value
- type: object
- type: array
- name:
- type: string
- when:
- type: string
- required:
- - help
- - name
- type: object
- type: array
- required:
- - prometheus
- type: object
- name:
- type: string
- nodeSelector:
- additionalProperties:
- type: string
- type: object
- outputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- exitCode:
- type: string
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- result:
- type: string
- type: object
- parallelism:
- format: int64
- type: integer
- plugin:
- type: object
- podSpecPatch:
- type: string
- priority:
- format: int32
- type: integer
- priorityClassName:
- type: string
- resource:
- properties:
- action:
- type: string
- failureCondition:
- type: string
- flags:
- items:
- type: string
- type: array
- manifest:
- type: string
- mergeStrategy:
- type: string
- setOwnerReference:
- type: boolean
- successCondition:
- type: string
- required:
- - action
- type: object
- retryStrategy:
- properties:
- affinity:
- properties:
- nodeAntiAffinity:
- type: object
- type: object
- backoff:
- properties:
- duration:
- type: string
- factor:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- maxDuration:
- type: string
- type: object
- expression:
- type: string
- limit:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- retryPolicy:
- type: string
- type: object
- schedulerName:
- type: string
- script:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- source:
- type: string
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- - source
- type: object
- securityContext:
- properties:
- fsGroup:
- format: int64
- type: integer
- fsGroupChangePolicy:
- type: string
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- supplementalGroups:
- items:
- format: int64
- type: integer
- type: array
- sysctls:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- serviceAccountName:
- type: string
- sidecars:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- mirrorVolumeMounts:
- type: boolean
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- steps:
- items:
- type: array
- type: array
- suspend:
- properties:
- duration:
- type: string
- type: object
- synchronization:
- properties:
- mutex:
- properties:
- name:
- type: string
- type: object
- semaphore:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- type: object
- timeout:
- type: string
- tolerations:
- items:
- properties:
- effect:
- type: string
- key:
- type: string
- operator:
- type: string
- tolerationSeconds:
- format: int64
- type: integer
- value:
- type: string
- type: object
- type: array
- volumes:
- items:
- properties:
- awsElasticBlockStore:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- azureDisk:
- properties:
- cachingMode:
- type: string
- diskName:
- type: string
- diskURI:
- type: string
- fsType:
- type: string
- kind:
- type: string
- readOnly:
- type: boolean
- required:
- - diskName
- - diskURI
- type: object
- azureFile:
- properties:
- readOnly:
- type: boolean
- secretName:
- type: string
- shareName:
- type: string
- required:
- - secretName
- - shareName
- type: object
- cephfs:
- properties:
- monitors:
- items:
- type: string
- type: array
- path:
- type: string
- readOnly:
- type: boolean
- secretFile:
- type: string
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - monitors
- type: object
- cinder:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- configMap:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- csi:
- properties:
- driver:
- type: string
- fsType:
- type: string
- nodePublishSecretRef:
- properties:
- name:
- type: string
- type: object
- readOnly:
- type: boolean
- volumeAttributes:
- additionalProperties:
- type: string
- type: object
- required:
- - driver
- type: object
- downwardAPI:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- emptyDir:
- properties:
- medium:
- type: string
- sizeLimit:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- ephemeral:
- properties:
- volumeClaimTemplate:
- properties:
- metadata:
- type: object
- spec:
- properties:
- accessModes:
- items:
- type: string
- type: array
- dataSource:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- dataSourceRef:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- storageClassName:
- type: string
- volumeMode:
- type: string
- volumeName:
- type: string
- type: object
- required:
- - spec
- type: object
- type: object
- fc:
- properties:
- fsType:
- type: string
- lun:
- format: int32
- type: integer
- readOnly:
- type: boolean
- targetWWNs:
- items:
- type: string
- type: array
- wwids:
- items:
- type: string
- type: array
- type: object
- flexVolume:
- properties:
- driver:
- type: string
- fsType:
- type: string
- options:
- additionalProperties:
- type: string
- type: object
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- required:
- - driver
- type: object
- flocker:
- properties:
- datasetName:
- type: string
- datasetUUID:
- type: string
- type: object
- gcePersistentDisk:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- pdName:
- type: string
- readOnly:
- type: boolean
- required:
- - pdName
- type: object
- gitRepo:
- properties:
- directory:
- type: string
- repository:
- type: string
- revision:
- type: string
- required:
- - repository
- type: object
- glusterfs:
- properties:
- endpoints:
- type: string
- path:
- type: string
- readOnly:
- type: boolean
- required:
- - endpoints
- - path
- type: object
- hostPath:
- properties:
- path:
- type: string
- type:
- type: string
- required:
- - path
- type: object
- iscsi:
- properties:
- chapAuthDiscovery:
- type: boolean
- chapAuthSession:
- type: boolean
- fsType:
- type: string
- initiatorName:
- type: string
- iqn:
- type: string
- iscsiInterface:
- type: string
- lun:
- format: int32
- type: integer
- portals:
- items:
- type: string
- type: array
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- targetPortal:
- type: string
- required:
- - iqn
- - lun
- - targetPortal
- type: object
- name:
- type: string
- nfs:
- properties:
- path:
- type: string
- readOnly:
- type: boolean
- server:
- type: string
- required:
- - path
- - server
- type: object
- persistentVolumeClaim:
- properties:
- claimName:
- type: string
- readOnly:
- type: boolean
- required:
- - claimName
- type: object
- photonPersistentDisk:
- properties:
- fsType:
- type: string
- pdID:
- type: string
- required:
- - pdID
- type: object
- portworxVolume:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- projected:
- properties:
- defaultMode:
- format: int32
- type: integer
- sources:
- items:
- properties:
- configMap:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- downwardAPI:
- properties:
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- secret:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- serviceAccountToken:
- properties:
- audience:
- type: string
- expirationSeconds:
- format: int64
- type: integer
- path:
- type: string
- required:
- - path
- type: object
- type: object
- type: array
- type: object
- quobyte:
- properties:
- group:
- type: string
- readOnly:
- type: boolean
- registry:
- type: string
- tenant:
- type: string
- user:
- type: string
- volume:
- type: string
- required:
- - registry
- - volume
- type: object
- rbd:
- properties:
- fsType:
- type: string
- image:
- type: string
- keyring:
- type: string
- monitors:
- items:
- type: string
- type: array
- pool:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - image
- - monitors
- type: object
- scaleIO:
- properties:
- fsType:
- type: string
- gateway:
- type: string
- protectionDomain:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- sslEnabled:
- type: boolean
- storageMode:
- type: string
- storagePool:
- type: string
- system:
- type: string
- volumeName:
- type: string
- required:
- - gateway
- - secretRef
- - system
- type: object
- secret:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- optional:
- type: boolean
- secretName:
- type: string
- type: object
- storageos:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeName:
- type: string
- volumeNamespace:
- type: string
- type: object
- vsphereVolume:
- properties:
- fsType:
- type: string
- storagePolicyID:
- type: string
- storagePolicyName:
- type: string
- volumePath:
- type: string
- required:
- - volumePath
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- templates:
- items:
- properties:
- activeDeadlineSeconds:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- affinity:
- properties:
- nodeAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- preference:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- weight:
- format: int32
- type: integer
- required:
- - preference
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- properties:
- nodeSelectorTerms:
- items:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- type: array
- required:
- - nodeSelectorTerms
- type: object
- type: object
- podAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- podAntiAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- type: object
- archiveLocation:
- properties:
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- type: object
- automountServiceAccountToken:
- type: boolean
- container:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - image
- type: object
- containerSet:
- properties:
- containers:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- dependencies:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- retryStrategy:
- properties:
- duration:
- type: string
- retries:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - retries
- type: object
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- required:
- - containers
- type: object
- daemon:
- type: boolean
- dag:
- properties:
- failFast:
- type: boolean
- target:
- type: string
- tasks:
- items:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- continueOn:
- properties:
- error:
- type: boolean
- failed:
- type: boolean
- type: object
- dependencies:
- items:
- type: string
- type: array
- depends:
- type: string
- hooks:
- additionalProperties:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- expression:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- type: object
- type: object
- inline: {}
- name:
- type: string
- onExit:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- when:
- type: string
- withItems:
- items:
- type: object
- type: array
- withParam:
- type: string
- withSequence:
- properties:
- count:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- end:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- format:
- type: string
- start:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- type: object
- required:
- - name
- type: object
- type: array
- required:
- - tasks
- type: object
- data:
- properties:
- source:
- properties:
- artifactPaths:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: object
- transformation:
- items:
- properties:
- expression:
- type: string
- required:
- - expression
- type: object
- type: array
- required:
- - source
- - transformation
- type: object
- executor:
- properties:
- serviceAccountName:
- type: string
- type: object
- failFast:
- type: boolean
- hostAliases:
- items:
- properties:
- hostnames:
- items:
- type: string
- type: array
- ip:
- type: string
- type: object
- type: array
- http:
- properties:
- body:
- type: string
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- insecureSkipVerify:
- type: boolean
- method:
- type: string
- successCondition:
- type: string
- timeoutSeconds:
- format: int64
- type: integer
- url:
- type: string
- required:
- - url
- type: object
- initContainers:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- mirrorVolumeMounts:
- type: boolean
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- inputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- memoize:
- properties:
- cache:
- properties:
- configMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - configMap
- type: object
- key:
- type: string
- maxAge:
- type: string
- required:
- - cache
- - key
- - maxAge
- type: object
- metadata:
- properties:
- annotations:
- additionalProperties:
- type: string
- type: object
- labels:
- additionalProperties:
- type: string
- type: object
- type: object
- metrics:
- properties:
- prometheus:
- items:
- properties:
- counter:
- properties:
- value:
- type: string
- required:
- - value
- type: object
- gauge:
- properties:
- realtime:
- type: boolean
- value:
- type: string
- required:
- - realtime
- - value
- type: object
- help:
- type: string
- histogram:
- properties:
- buckets:
- items:
- type: number
- type: array
- value:
- type: string
- required:
- - buckets
- - value
- type: object
- labels:
- items:
- properties:
- key:
- type: string
- value:
- type: string
- required:
- - key
- - value
- type: object
- type: array
- name:
- type: string
- when:
- type: string
- required:
- - help
- - name
- type: object
- type: array
- required:
- - prometheus
- type: object
- name:
- type: string
- nodeSelector:
- additionalProperties:
- type: string
- type: object
- outputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- exitCode:
- type: string
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- result:
- type: string
- type: object
- parallelism:
- format: int64
- type: integer
- plugin:
- type: object
- podSpecPatch:
- type: string
- priority:
- format: int32
- type: integer
- priorityClassName:
- type: string
- resource:
- properties:
- action:
- type: string
- failureCondition:
- type: string
- flags:
- items:
- type: string
- type: array
- manifest:
- type: string
- mergeStrategy:
- type: string
- setOwnerReference:
- type: boolean
- successCondition:
- type: string
- required:
- - action
- type: object
- retryStrategy:
- properties:
- affinity:
- properties:
- nodeAntiAffinity:
- type: object
- type: object
- backoff:
- properties:
- duration:
- type: string
- factor:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- maxDuration:
- type: string
- type: object
- expression:
- type: string
- limit:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- retryPolicy:
- type: string
- type: object
- schedulerName:
- type: string
- script:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- source:
- type: string
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - image
- - source
- type: object
- securityContext:
- properties:
- fsGroup:
- format: int64
- type: integer
- fsGroupChangePolicy:
- type: string
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- supplementalGroups:
- items:
- format: int64
- type: integer
- type: array
- sysctls:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- serviceAccountName:
- type: string
- sidecars:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- mirrorVolumeMounts:
- type: boolean
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- steps:
- items:
- type: array
- type: array
- suspend:
- properties:
- duration:
- type: string
- type: object
- synchronization:
- properties:
- mutex:
- properties:
- name:
- type: string
- type: object
- semaphore:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- type: object
- timeout:
- type: string
- tolerations:
- items:
- properties:
- effect:
- type: string
- key:
- type: string
- operator:
- type: string
- tolerationSeconds:
- format: int64
- type: integer
- value:
- type: string
- type: object
- type: array
- volumes:
- items:
- properties:
- awsElasticBlockStore:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- azureDisk:
- properties:
- cachingMode:
- type: string
- diskName:
- type: string
- diskURI:
- type: string
- fsType:
- type: string
- kind:
- type: string
- readOnly:
- type: boolean
- required:
- - diskName
- - diskURI
- type: object
- azureFile:
- properties:
- readOnly:
- type: boolean
- secretName:
- type: string
- shareName:
- type: string
- required:
- - secretName
- - shareName
- type: object
- cephfs:
- properties:
- monitors:
- items:
- type: string
- type: array
- path:
- type: string
- readOnly:
- type: boolean
- secretFile:
- type: string
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - monitors
- type: object
- cinder:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- configMap:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- csi:
- properties:
- driver:
- type: string
- fsType:
- type: string
- nodePublishSecretRef:
- properties:
- name:
- type: string
- type: object
- readOnly:
- type: boolean
- volumeAttributes:
- additionalProperties:
- type: string
- type: object
- required:
- - driver
- type: object
- downwardAPI:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- emptyDir:
- properties:
- medium:
- type: string
- sizeLimit:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- ephemeral:
- properties:
- volumeClaimTemplate:
- properties:
- metadata:
- type: object
- spec:
- properties:
- accessModes:
- items:
- type: string
- type: array
- dataSource:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- dataSourceRef:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- storageClassName:
- type: string
- volumeMode:
- type: string
- volumeName:
- type: string
- type: object
- required:
- - spec
- type: object
- type: object
- fc:
- properties:
- fsType:
- type: string
- lun:
- format: int32
- type: integer
- readOnly:
- type: boolean
- targetWWNs:
- items:
- type: string
- type: array
- wwids:
- items:
- type: string
- type: array
- type: object
- flexVolume:
- properties:
- driver:
- type: string
- fsType:
- type: string
- options:
- additionalProperties:
- type: string
- type: object
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- required:
- - driver
- type: object
- flocker:
- properties:
- datasetName:
- type: string
- datasetUUID:
- type: string
- type: object
- gcePersistentDisk:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- pdName:
- type: string
- readOnly:
- type: boolean
- required:
- - pdName
- type: object
- gitRepo:
- properties:
- directory:
- type: string
- repository:
- type: string
- revision:
- type: string
- required:
- - repository
- type: object
- glusterfs:
- properties:
- endpoints:
- type: string
- path:
- type: string
- readOnly:
- type: boolean
- required:
- - endpoints
- - path
- type: object
- hostPath:
- properties:
- path:
- type: string
- type:
- type: string
- required:
- - path
- type: object
- iscsi:
- properties:
- chapAuthDiscovery:
- type: boolean
- chapAuthSession:
- type: boolean
- fsType:
- type: string
- initiatorName:
- type: string
- iqn:
- type: string
- iscsiInterface:
- type: string
- lun:
- format: int32
- type: integer
- portals:
- items:
- type: string
- type: array
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- targetPortal:
- type: string
- required:
- - iqn
- - lun
- - targetPortal
- type: object
- name:
- type: string
- nfs:
- properties:
- path:
- type: string
- readOnly:
- type: boolean
- server:
- type: string
- required:
- - path
- - server
- type: object
- persistentVolumeClaim:
- properties:
- claimName:
- type: string
- readOnly:
- type: boolean
- required:
- - claimName
- type: object
- photonPersistentDisk:
- properties:
- fsType:
- type: string
- pdID:
- type: string
- required:
- - pdID
- type: object
- portworxVolume:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- projected:
- properties:
- defaultMode:
- format: int32
- type: integer
- sources:
- items:
- properties:
- configMap:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- downwardAPI:
- properties:
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- secret:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- serviceAccountToken:
- properties:
- audience:
- type: string
- expirationSeconds:
- format: int64
- type: integer
- path:
- type: string
- required:
- - path
- type: object
- type: object
- type: array
- type: object
- quobyte:
- properties:
- group:
- type: string
- readOnly:
- type: boolean
- registry:
- type: string
- tenant:
- type: string
- user:
- type: string
- volume:
- type: string
- required:
- - registry
- - volume
- type: object
- rbd:
- properties:
- fsType:
- type: string
- image:
- type: string
- keyring:
- type: string
- monitors:
- items:
- type: string
- type: array
- pool:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - image
- - monitors
- type: object
- scaleIO:
- properties:
- fsType:
- type: string
- gateway:
- type: string
- protectionDomain:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- sslEnabled:
- type: boolean
- storageMode:
- type: string
- storagePool:
- type: string
- system:
- type: string
- volumeName:
- type: string
- required:
- - gateway
- - secretRef
- - system
- type: object
- secret:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- optional:
- type: boolean
- secretName:
- type: string
- type: object
- storageos:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeName:
- type: string
- volumeNamespace:
- type: string
- type: object
- vsphereVolume:
- properties:
- fsType:
- type: string
- storagePolicyID:
- type: string
- storagePolicyName:
- type: string
- volumePath:
- type: string
- required:
- - volumePath
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- type: array
- tolerations:
- items:
- properties:
- effect:
- type: string
- key:
- type: string
- operator:
- type: string
- tolerationSeconds:
- format: int64
- type: integer
- value:
- type: string
- type: object
- type: array
- ttlStrategy:
- properties:
- secondsAfterCompletion:
- format: int32
- type: integer
- secondsAfterFailure:
- format: int32
- type: integer
- secondsAfterSuccess:
- format: int32
- type: integer
- type: object
- volumeClaimGC:
- properties:
- strategy:
- type: string
- type: object
- volumeClaimTemplates:
- items:
- properties:
- apiVersion:
- type: string
- kind:
- type: string
- metadata:
- type: object
- spec:
- properties:
- accessModes:
- items:
- type: string
- type: array
- dataSource:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- dataSourceRef:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- storageClassName:
- type: string
- volumeMode:
- type: string
- volumeName:
- type: string
- type: object
- status:
- properties:
- accessModes:
- items:
- type: string
- type: array
- allocatedResources:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- capacity:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- conditions:
- items:
- properties:
- lastProbeTime:
- format: date-time
- type: string
- lastTransitionTime:
- format: date-time
- type: string
- message:
- type: string
- reason:
- type: string
- status:
- type: string
- type:
- type: string
- required:
- - status
- - type
- type: object
- type: array
- phase:
- type: string
- resizeStatus:
- type: string
- type: object
- type: object
- type: array
- volumes:
- items:
- properties:
- awsElasticBlockStore:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- azureDisk:
- properties:
- cachingMode:
- type: string
- diskName:
- type: string
- diskURI:
- type: string
- fsType:
- type: string
- kind:
- type: string
- readOnly:
- type: boolean
- required:
- - diskName
- - diskURI
- type: object
- azureFile:
- properties:
- readOnly:
- type: boolean
- secretName:
- type: string
- shareName:
- type: string
- required:
- - secretName
- - shareName
- type: object
- cephfs:
- properties:
- monitors:
- items:
- type: string
- type: array
- path:
- type: string
- readOnly:
- type: boolean
- secretFile:
- type: string
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - monitors
- type: object
- cinder:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- configMap:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- csi:
- properties:
- driver:
- type: string
- fsType:
- type: string
- nodePublishSecretRef:
- properties:
- name:
- type: string
- type: object
- readOnly:
- type: boolean
- volumeAttributes:
- additionalProperties:
- type: string
- type: object
- required:
- - driver
- type: object
- downwardAPI:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- emptyDir:
- properties:
- medium:
- type: string
- sizeLimit:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- ephemeral:
- properties:
- volumeClaimTemplate:
- properties:
- metadata:
- type: object
- spec:
- properties:
- accessModes:
- items:
- type: string
- type: array
- dataSource:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- dataSourceRef:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- storageClassName:
- type: string
- volumeMode:
- type: string
- volumeName:
- type: string
- type: object
- required:
- - spec
- type: object
- type: object
- fc:
- properties:
- fsType:
- type: string
- lun:
- format: int32
- type: integer
- readOnly:
- type: boolean
- targetWWNs:
- items:
- type: string
- type: array
- wwids:
- items:
- type: string
- type: array
- type: object
- flexVolume:
- properties:
- driver:
- type: string
- fsType:
- type: string
- options:
- additionalProperties:
- type: string
- type: object
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- required:
- - driver
- type: object
- flocker:
- properties:
- datasetName:
- type: string
- datasetUUID:
- type: string
- type: object
- gcePersistentDisk:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- pdName:
- type: string
- readOnly:
- type: boolean
- required:
- - pdName
- type: object
- gitRepo:
- properties:
- directory:
- type: string
- repository:
- type: string
- revision:
- type: string
- required:
- - repository
- type: object
- glusterfs:
- properties:
- endpoints:
- type: string
- path:
- type: string
- readOnly:
- type: boolean
- required:
- - endpoints
- - path
- type: object
- hostPath:
- properties:
- path:
- type: string
- type:
- type: string
- required:
- - path
- type: object
- iscsi:
- properties:
- chapAuthDiscovery:
- type: boolean
- chapAuthSession:
- type: boolean
- fsType:
- type: string
- initiatorName:
- type: string
- iqn:
- type: string
- iscsiInterface:
- type: string
- lun:
- format: int32
- type: integer
- portals:
- items:
- type: string
- type: array
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- targetPortal:
- type: string
- required:
- - iqn
- - lun
- - targetPortal
- type: object
- name:
- type: string
- nfs:
- properties:
- path:
- type: string
- readOnly:
- type: boolean
- server:
- type: string
- required:
- - path
- - server
- type: object
- persistentVolumeClaim:
- properties:
- claimName:
- type: string
- readOnly:
- type: boolean
- required:
- - claimName
- type: object
- photonPersistentDisk:
- properties:
- fsType:
- type: string
- pdID:
- type: string
- required:
- - pdID
- type: object
- portworxVolume:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- projected:
- properties:
- defaultMode:
- format: int32
- type: integer
- sources:
- items:
- properties:
- configMap:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- downwardAPI:
- properties:
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- secret:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- serviceAccountToken:
- properties:
- audience:
- type: string
- expirationSeconds:
- format: int64
- type: integer
- path:
- type: string
- required:
- - path
- type: object
- type: object
- type: array
- type: object
- quobyte:
- properties:
- group:
- type: string
- readOnly:
- type: boolean
- registry:
- type: string
- tenant:
- type: string
- user:
- type: string
- volume:
- type: string
- required:
- - registry
- - volume
- type: object
- rbd:
- properties:
- fsType:
- type: string
- image:
- type: string
- keyring:
- type: string
- monitors:
- items:
- type: string
- type: array
- pool:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - image
- - monitors
- type: object
- scaleIO:
- properties:
- fsType:
- type: string
- gateway:
- type: string
- protectionDomain:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- sslEnabled:
- type: boolean
- storageMode:
- type: string
- storagePool:
- type: string
- system:
- type: string
- volumeName:
- type: string
- required:
- - gateway
- - secretRef
- - system
- type: object
- secret:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- optional:
- type: boolean
- secretName:
- type: string
- type: object
- storageos:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeName:
- type: string
- volumeNamespace:
- type: string
- type: object
- vsphereVolume:
- properties:
- fsType:
- type: string
- storagePolicyID:
- type: string
- storagePolicyName:
- type: string
- volumePath:
- type: string
- required:
- - volumePath
- type: object
- required:
- - name
- type: object
- type: array
- workflowMetadata:
- properties:
- annotations:
- additionalProperties:
- type: string
- type: object
- labels:
- additionalProperties:
- type: string
- type: object
- labelsFrom:
- additionalProperties:
- properties:
- expression:
- type: string
- required:
- - expression
- type: object
- type: object
- type: object
- workflowTemplateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- type: object
- type: object
- required:
- - metadata
- - spec
- type: object
- served: true
- storage: true
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_cronworkflows.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_cronworkflows.yaml
deleted file mode 100644
index 090081f..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_cronworkflows.yaml
+++ /dev/null
@@ -1,15786 +0,0 @@
-# This is an auto-generated file. DO NOT EDIT
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata: # kpt-merge: /cronworkflows.argoproj.io
- name: cronworkflows.argoproj.io
- annotations:
- internal.kpt.dev/upstream-identifier: 'apiextensions.k8s.io|CustomResourceDefinition|default|cronworkflows.argoproj.io'
-spec:
- group: argoproj.io
- names:
- kind: CronWorkflow
- listKind: CronWorkflowList
- plural: cronworkflows
- shortNames:
- - cwf
- - cronwf
- singular: cronworkflow
- scope: Namespaced
- versions:
- - name: v1alpha1
- schema:
- openAPIV3Schema:
- properties:
- apiVersion:
- type: string
- kind:
- type: string
- metadata:
- type: object
- spec:
- properties:
- concurrencyPolicy:
- type: string
- failedJobsHistoryLimit:
- format: int32
- type: integer
- schedule:
- type: string
- startingDeadlineSeconds:
- format: int64
- type: integer
- successfulJobsHistoryLimit:
- format: int32
- type: integer
- suspend:
- type: boolean
- timezone:
- type: string
- workflowMetadata:
- type: object
- workflowSpec:
- properties:
- activeDeadlineSeconds:
- format: int64
- type: integer
- affinity:
- properties:
- nodeAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- preference:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- weight:
- format: int32
- type: integer
- required:
- - preference
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- properties:
- nodeSelectorTerms:
- items:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- type: array
- required:
- - nodeSelectorTerms
- type: object
- type: object
- podAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- podAntiAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- type: object
- archiveLogs:
- type: boolean
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- artifactRepositoryRef:
- properties:
- configMap:
- type: string
- key:
- type: string
- type: object
- automountServiceAccountToken:
- type: boolean
- dnsConfig:
- properties:
- nameservers:
- items:
- type: string
- type: array
- options:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- type: object
- type: array
- searches:
- items:
- type: string
- type: array
- type: object
- dnsPolicy:
- type: string
- entrypoint:
- type: string
- executor:
- properties:
- serviceAccountName:
- type: string
- type: object
- hooks:
- additionalProperties:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- expression:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- type: object
- type: object
- hostAliases:
- items:
- properties:
- hostnames:
- items:
- type: string
- type: array
- ip:
- type: string
- type: object
- type: array
- hostNetwork:
- type: boolean
- imagePullSecrets:
- items:
- properties:
- name:
- type: string
- type: object
- type: array
- metrics:
- properties:
- prometheus:
- items:
- properties:
- counter:
- properties:
- value:
- type: string
- required:
- - value
- type: object
- gauge:
- properties:
- realtime:
- type: boolean
- value:
- type: string
- required:
- - realtime
- - value
- type: object
- help:
- type: string
- histogram:
- properties:
- buckets:
- items:
- type: number
- type: array
- value:
- type: string
- required:
- - buckets
- - value
- type: object
- labels:
- items:
- properties:
- key:
- type: string
- value:
- type: string
- required:
- - key
- - value
- type: object
- type: array
- name:
- type: string
- when:
- type: string
- required:
- - help
- - name
- type: object
- type: array
- required:
- - prometheus
- type: object
- nodeSelector:
- additionalProperties:
- type: string
- type: object
- onExit:
- type: string
- parallelism:
- format: int64
- type: integer
- podDisruptionBudget:
- properties:
- maxUnavailable:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- minAvailable:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- type: object
- podGC:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- strategy:
- type: string
- type: object
- podMetadata:
- properties:
- annotations:
- additionalProperties:
- type: string
- type: object
- labels:
- additionalProperties:
- type: string
- type: object
- type: object
- podPriority:
- format: int32
- type: integer
- podPriorityClassName:
- type: string
- podSpecPatch:
- type: string
- priority:
- format: int32
- type: integer
- retryStrategy:
- properties:
- affinity:
- properties:
- nodeAntiAffinity:
- type: object
- type: object
- backoff:
- properties:
- duration:
- type: string
- factor:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- maxDuration:
- type: string
- type: object
- expression:
- type: string
- limit:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- retryPolicy:
- type: string
- type: object
- schedulerName:
- type: string
- securityContext:
- properties:
- fsGroup:
- format: int64
- type: integer
- fsGroupChangePolicy:
- type: string
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- supplementalGroups:
- items:
- format: int64
- type: integer
- type: array
- sysctls:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- serviceAccountName:
- type: string
- shutdown:
- type: string
- suspend:
- type: boolean
- synchronization:
- properties:
- mutex:
- properties:
- name:
- type: string
- type: object
- semaphore:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- type: object
- templateDefaults:
- properties:
- activeDeadlineSeconds:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- affinity:
- properties:
- nodeAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- preference:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- weight:
- format: int32
- type: integer
- required:
- - preference
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- properties:
- nodeSelectorTerms:
- items:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- type: array
- required:
- - nodeSelectorTerms
- type: object
- type: object
- podAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- podAntiAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- type: object
- archiveLocation:
- properties:
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- type: object
- automountServiceAccountToken:
- type: boolean
- container:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- containerSet:
- properties:
- containers:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- dependencies:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- retryStrategy:
- properties:
- duration:
- type: string
- retries:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - retries
- type: object
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- required:
- - containers
- type: object
- daemon:
- type: boolean
- dag:
- properties:
- failFast:
- type: boolean
- target:
- type: string
- tasks:
- items:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- continueOn:
- properties:
- error:
- type: boolean
- failed:
- type: boolean
- type: object
- dependencies:
- items:
- type: string
- type: array
- depends:
- type: string
- hooks:
- additionalProperties:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- expression:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- type: object
- type: object
- inline: {}
- name:
- type: string
- onExit:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- when:
- type: string
- withItems:
- items:
- type: object
- type: array
- withParam:
- type: string
- withSequence:
- properties:
- count:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- end:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- format:
- type: string
- start:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- type: object
- required:
- - name
- type: object
- type: array
- required:
- - tasks
- type: object
- data:
- properties:
- source:
- properties:
- artifactPaths:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: object
- transformation:
- items:
- properties:
- expression:
- type: string
- required:
- - expression
- type: object
- type: array
- required:
- - source
- - transformation
- type: object
- executor:
- properties:
- serviceAccountName:
- type: string
- type: object
- failFast:
- type: boolean
- hostAliases:
- items:
- properties:
- hostnames:
- items:
- type: string
- type: array
- ip:
- type: string
- type: object
- type: array
- http:
- properties:
- body:
- type: string
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- insecureSkipVerify:
- type: boolean
- method:
- type: string
- successCondition:
- type: string
- timeoutSeconds:
- format: int64
- type: integer
- url:
- type: string
- required:
- - url
- type: object
- initContainers:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- mirrorVolumeMounts:
- type: boolean
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- inputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- memoize:
- properties:
- cache:
- properties:
- configMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - configMap
- type: object
- key:
- type: string
- maxAge:
- type: string
- required:
- - cache
- - key
- - maxAge
- type: object
- metadata:
- properties:
- annotations:
- additionalProperties:
- type: string
- type: object
- labels:
- additionalProperties:
- type: string
- type: object
- type: object
- metrics:
- properties:
- prometheus:
- items:
- properties:
- counter:
- properties:
- value:
- type: string
- required:
- - value
- type: object
- gauge:
- properties:
- realtime:
- type: boolean
- value:
- type: string
- required:
- - realtime
- - value
- type: object
- help:
- type: string
- histogram:
- properties:
- buckets:
- items:
- type: number
- type: array
- value:
- type: string
- required:
- - buckets
- - value
- type: object
- labels:
- items:
- properties:
- key:
- type: string
- value:
- type: string
- required:
- - key
- - value
- type: object
- type: array
- name:
- type: string
- when:
- type: string
- required:
- - help
- - name
- type: object
- type: array
- required:
- - prometheus
- type: object
- name:
- type: string
- nodeSelector:
- additionalProperties:
- type: string
- type: object
- outputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- exitCode:
- type: string
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- result:
- type: string
- type: object
- parallelism:
- format: int64
- type: integer
- plugin:
- type: object
- podSpecPatch:
- type: string
- priority:
- format: int32
- type: integer
- priorityClassName:
- type: string
- resource:
- properties:
- action:
- type: string
- failureCondition:
- type: string
- flags:
- items:
- type: string
- type: array
- manifest:
- type: string
- mergeStrategy:
- type: string
- setOwnerReference:
- type: boolean
- successCondition:
- type: string
- required:
- - action
- type: object
- retryStrategy:
- properties:
- affinity:
- properties:
- nodeAntiAffinity:
- type: object
- type: object
- backoff:
- properties:
- duration:
- type: string
- factor:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- maxDuration:
- type: string
- type: object
- expression:
- type: string
- limit:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- retryPolicy:
- type: string
- type: object
- schedulerName:
- type: string
- script:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- source:
- type: string
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- - source
- type: object
- securityContext:
- properties:
- fsGroup:
- format: int64
- type: integer
- fsGroupChangePolicy:
- type: string
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- supplementalGroups:
- items:
- format: int64
- type: integer
- type: array
- sysctls:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- serviceAccountName:
- type: string
- sidecars:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- mirrorVolumeMounts:
- type: boolean
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- steps:
- items:
- type: array
- type: array
- suspend:
- properties:
- duration:
- type: string
- type: object
- synchronization:
- properties:
- mutex:
- properties:
- name:
- type: string
- type: object
- semaphore:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- type: object
- timeout:
- type: string
- tolerations:
- items:
- properties:
- effect:
- type: string
- key:
- type: string
- operator:
- type: string
- tolerationSeconds:
- format: int64
- type: integer
- value:
- type: string
- type: object
- type: array
- volumes:
- items:
- properties:
- awsElasticBlockStore:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- azureDisk:
- properties:
- cachingMode:
- type: string
- diskName:
- type: string
- diskURI:
- type: string
- fsType:
- type: string
- kind:
- type: string
- readOnly:
- type: boolean
- required:
- - diskName
- - diskURI
- type: object
- azureFile:
- properties:
- readOnly:
- type: boolean
- secretName:
- type: string
- shareName:
- type: string
- required:
- - secretName
- - shareName
- type: object
- cephfs:
- properties:
- monitors:
- items:
- type: string
- type: array
- path:
- type: string
- readOnly:
- type: boolean
- secretFile:
- type: string
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - monitors
- type: object
- cinder:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- configMap:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- csi:
- properties:
- driver:
- type: string
- fsType:
- type: string
- nodePublishSecretRef:
- properties:
- name:
- type: string
- type: object
- readOnly:
- type: boolean
- volumeAttributes:
- additionalProperties:
- type: string
- type: object
- required:
- - driver
- type: object
- downwardAPI:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- emptyDir:
- properties:
- medium:
- type: string
- sizeLimit:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- ephemeral:
- properties:
- volumeClaimTemplate:
- properties:
- metadata:
- type: object
- spec:
- properties:
- accessModes:
- items:
- type: string
- type: array
- dataSource:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- dataSourceRef:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- storageClassName:
- type: string
- volumeMode:
- type: string
- volumeName:
- type: string
- type: object
- required:
- - spec
- type: object
- type: object
- fc:
- properties:
- fsType:
- type: string
- lun:
- format: int32
- type: integer
- readOnly:
- type: boolean
- targetWWNs:
- items:
- type: string
- type: array
- wwids:
- items:
- type: string
- type: array
- type: object
- flexVolume:
- properties:
- driver:
- type: string
- fsType:
- type: string
- options:
- additionalProperties:
- type: string
- type: object
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- required:
- - driver
- type: object
- flocker:
- properties:
- datasetName:
- type: string
- datasetUUID:
- type: string
- type: object
- gcePersistentDisk:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- pdName:
- type: string
- readOnly:
- type: boolean
- required:
- - pdName
- type: object
- gitRepo:
- properties:
- directory:
- type: string
- repository:
- type: string
- revision:
- type: string
- required:
- - repository
- type: object
- glusterfs:
- properties:
- endpoints:
- type: string
- path:
- type: string
- readOnly:
- type: boolean
- required:
- - endpoints
- - path
- type: object
- hostPath:
- properties:
- path:
- type: string
- type:
- type: string
- required:
- - path
- type: object
- iscsi:
- properties:
- chapAuthDiscovery:
- type: boolean
- chapAuthSession:
- type: boolean
- fsType:
- type: string
- initiatorName:
- type: string
- iqn:
- type: string
- iscsiInterface:
- type: string
- lun:
- format: int32
- type: integer
- portals:
- items:
- type: string
- type: array
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- targetPortal:
- type: string
- required:
- - iqn
- - lun
- - targetPortal
- type: object
- name:
- type: string
- nfs:
- properties:
- path:
- type: string
- readOnly:
- type: boolean
- server:
- type: string
- required:
- - path
- - server
- type: object
- persistentVolumeClaim:
- properties:
- claimName:
- type: string
- readOnly:
- type: boolean
- required:
- - claimName
- type: object
- photonPersistentDisk:
- properties:
- fsType:
- type: string
- pdID:
- type: string
- required:
- - pdID
- type: object
- portworxVolume:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- projected:
- properties:
- defaultMode:
- format: int32
- type: integer
- sources:
- items:
- properties:
- configMap:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- downwardAPI:
- properties:
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- secret:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- serviceAccountToken:
- properties:
- audience:
- type: string
- expirationSeconds:
- format: int64
- type: integer
- path:
- type: string
- required:
- - path
- type: object
- type: object
- type: array
- type: object
- quobyte:
- properties:
- group:
- type: string
- readOnly:
- type: boolean
- registry:
- type: string
- tenant:
- type: string
- user:
- type: string
- volume:
- type: string
- required:
- - registry
- - volume
- type: object
- rbd:
- properties:
- fsType:
- type: string
- image:
- type: string
- keyring:
- type: string
- monitors:
- items:
- type: string
- type: array
- pool:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - image
- - monitors
- type: object
- scaleIO:
- properties:
- fsType:
- type: string
- gateway:
- type: string
- protectionDomain:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- sslEnabled:
- type: boolean
- storageMode:
- type: string
- storagePool:
- type: string
- system:
- type: string
- volumeName:
- type: string
- required:
- - gateway
- - secretRef
- - system
- type: object
- secret:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- optional:
- type: boolean
- secretName:
- type: string
- type: object
- storageos:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeName:
- type: string
- volumeNamespace:
- type: string
- type: object
- vsphereVolume:
- properties:
- fsType:
- type: string
- storagePolicyID:
- type: string
- storagePolicyName:
- type: string
- volumePath:
- type: string
- required:
- - volumePath
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- templates:
- items:
- properties:
- activeDeadlineSeconds:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- affinity:
- properties:
- nodeAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- preference:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- weight:
- format: int32
- type: integer
- required:
- - preference
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- properties:
- nodeSelectorTerms:
- items:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- type: array
- required:
- - nodeSelectorTerms
- type: object
- type: object
- podAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- podAntiAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- type: object
- archiveLocation:
- properties:
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- type: object
- automountServiceAccountToken:
- type: boolean
- container:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - image
- type: object
- containerSet:
- properties:
- containers:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- dependencies:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- retryStrategy:
- properties:
- duration:
- type: string
- retries:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - retries
- type: object
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- required:
- - containers
- type: object
- daemon:
- type: boolean
- dag:
- properties:
- failFast:
- type: boolean
- target:
- type: string
- tasks:
- items:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- continueOn:
- properties:
- error:
- type: boolean
- failed:
- type: boolean
- type: object
- dependencies:
- items:
- type: string
- type: array
- depends:
- type: string
- hooks:
- additionalProperties:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- expression:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- type: object
- type: object
- inline: {}
- name:
- type: string
- onExit:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- when:
- type: string
- withItems:
- items:
- type: object
- type: array
- withParam:
- type: string
- withSequence:
- properties:
- count:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- end:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- format:
- type: string
- start:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- type: object
- required:
- - name
- type: object
- type: array
- required:
- - tasks
- type: object
- data:
- properties:
- source:
- properties:
- artifactPaths:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: object
- transformation:
- items:
- properties:
- expression:
- type: string
- required:
- - expression
- type: object
- type: array
- required:
- - source
- - transformation
- type: object
- executor:
- properties:
- serviceAccountName:
- type: string
- type: object
- failFast:
- type: boolean
- hostAliases:
- items:
- properties:
- hostnames:
- items:
- type: string
- type: array
- ip:
- type: string
- type: object
- type: array
- http:
- properties:
- body:
- type: string
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- insecureSkipVerify:
- type: boolean
- method:
- type: string
- successCondition:
- type: string
- timeoutSeconds:
- format: int64
- type: integer
- url:
- type: string
- required:
- - url
- type: object
- initContainers:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- mirrorVolumeMounts:
- type: boolean
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- inputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- memoize:
- properties:
- cache:
- properties:
- configMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - configMap
- type: object
- key:
- type: string
- maxAge:
- type: string
- required:
- - cache
- - key
- - maxAge
- type: object
- metadata:
- properties:
- annotations:
- additionalProperties:
- type: string
- type: object
- labels:
- additionalProperties:
- type: string
- type: object
- type: object
- metrics:
- properties:
- prometheus:
- items:
- properties:
- counter:
- properties:
- value:
- type: string
- required:
- - value
- type: object
- gauge:
- properties:
- realtime:
- type: boolean
- value:
- type: string
- required:
- - realtime
- - value
- type: object
- help:
- type: string
- histogram:
- properties:
- buckets:
- items:
- type: number
- type: array
- value:
- type: string
- required:
- - buckets
- - value
- type: object
- labels:
- items:
- properties:
- key:
- type: string
- value:
- type: string
- required:
- - key
- - value
- type: object
- type: array
- name:
- type: string
- when:
- type: string
- required:
- - help
- - name
- type: object
- type: array
- required:
- - prometheus
- type: object
- name:
- type: string
- nodeSelector:
- additionalProperties:
- type: string
- type: object
- outputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- exitCode:
- type: string
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- result:
- type: string
- type: object
- parallelism:
- format: int64
- type: integer
- plugin:
- type: object
- podSpecPatch:
- type: string
- priority:
- format: int32
- type: integer
- priorityClassName:
- type: string
- resource:
- properties:
- action:
- type: string
- failureCondition:
- type: string
- flags:
- items:
- type: string
- type: array
- manifest:
- type: string
- mergeStrategy:
- type: string
- setOwnerReference:
- type: boolean
- successCondition:
- type: string
- required:
- - action
- type: object
- retryStrategy:
- properties:
- affinity:
- properties:
- nodeAntiAffinity:
- type: object
- type: object
- backoff:
- properties:
- duration:
- type: string
- factor:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- maxDuration:
- type: string
- type: object
- expression:
- type: string
- limit:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- retryPolicy:
- type: string
- type: object
- schedulerName:
- type: string
- script:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- source:
- type: string
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - image
- - source
- type: object
- securityContext:
- properties:
- fsGroup:
- format: int64
- type: integer
- fsGroupChangePolicy:
- type: string
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- supplementalGroups:
- items:
- format: int64
- type: integer
- type: array
- sysctls:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- serviceAccountName:
- type: string
- sidecars:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- mirrorVolumeMounts:
- type: boolean
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- steps:
- items:
- type: array
- type: array
- suspend:
- properties:
- duration:
- type: string
- type: object
- synchronization:
- properties:
- mutex:
- properties:
- name:
- type: string
- type: object
- semaphore:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- type: object
- timeout:
- type: string
- tolerations:
- items:
- properties:
- effect:
- type: string
- key:
- type: string
- operator:
- type: string
- tolerationSeconds:
- format: int64
- type: integer
- value:
- type: string
- type: object
- type: array
- volumes:
- items:
- properties:
- awsElasticBlockStore:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- azureDisk:
- properties:
- cachingMode:
- type: string
- diskName:
- type: string
- diskURI:
- type: string
- fsType:
- type: string
- kind:
- type: string
- readOnly:
- type: boolean
- required:
- - diskName
- - diskURI
- type: object
- azureFile:
- properties:
- readOnly:
- type: boolean
- secretName:
- type: string
- shareName:
- type: string
- required:
- - secretName
- - shareName
- type: object
- cephfs:
- properties:
- monitors:
- items:
- type: string
- type: array
- path:
- type: string
- readOnly:
- type: boolean
- secretFile:
- type: string
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - monitors
- type: object
- cinder:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- configMap:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- csi:
- properties:
- driver:
- type: string
- fsType:
- type: string
- nodePublishSecretRef:
- properties:
- name:
- type: string
- type: object
- readOnly:
- type: boolean
- volumeAttributes:
- additionalProperties:
- type: string
- type: object
- required:
- - driver
- type: object
- downwardAPI:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- emptyDir:
- properties:
- medium:
- type: string
- sizeLimit:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- ephemeral:
- properties:
- volumeClaimTemplate:
- properties:
- metadata:
- type: object
- spec:
- properties:
- accessModes:
- items:
- type: string
- type: array
- dataSource:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- dataSourceRef:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- storageClassName:
- type: string
- volumeMode:
- type: string
- volumeName:
- type: string
- type: object
- required:
- - spec
- type: object
- type: object
- fc:
- properties:
- fsType:
- type: string
- lun:
- format: int32
- type: integer
- readOnly:
- type: boolean
- targetWWNs:
- items:
- type: string
- type: array
- wwids:
- items:
- type: string
- type: array
- type: object
- flexVolume:
- properties:
- driver:
- type: string
- fsType:
- type: string
- options:
- additionalProperties:
- type: string
- type: object
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- required:
- - driver
- type: object
- flocker:
- properties:
- datasetName:
- type: string
- datasetUUID:
- type: string
- type: object
- gcePersistentDisk:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- pdName:
- type: string
- readOnly:
- type: boolean
- required:
- - pdName
- type: object
- gitRepo:
- properties:
- directory:
- type: string
- repository:
- type: string
- revision:
- type: string
- required:
- - repository
- type: object
- glusterfs:
- properties:
- endpoints:
- type: string
- path:
- type: string
- readOnly:
- type: boolean
- required:
- - endpoints
- - path
- type: object
- hostPath:
- properties:
- path:
- type: string
- type:
- type: string
- required:
- - path
- type: object
- iscsi:
- properties:
- chapAuthDiscovery:
- type: boolean
- chapAuthSession:
- type: boolean
- fsType:
- type: string
- initiatorName:
- type: string
- iqn:
- type: string
- iscsiInterface:
- type: string
- lun:
- format: int32
- type: integer
- portals:
- items:
- type: string
- type: array
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- targetPortal:
- type: string
- required:
- - iqn
- - lun
- - targetPortal
- type: object
- name:
- type: string
- nfs:
- properties:
- path:
- type: string
- readOnly:
- type: boolean
- server:
- type: string
- required:
- - path
- - server
- type: object
- persistentVolumeClaim:
- properties:
- claimName:
- type: string
- readOnly:
- type: boolean
- required:
- - claimName
- type: object
- photonPersistentDisk:
- properties:
- fsType:
- type: string
- pdID:
- type: string
- required:
- - pdID
- type: object
- portworxVolume:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- projected:
- properties:
- defaultMode:
- format: int32
- type: integer
- sources:
- items:
- properties:
- configMap:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- downwardAPI:
- properties:
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- secret:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- serviceAccountToken:
- properties:
- audience:
- type: string
- expirationSeconds:
- format: int64
- type: integer
- path:
- type: string
- required:
- - path
- type: object
- type: object
- type: array
- type: object
- quobyte:
- properties:
- group:
- type: string
- readOnly:
- type: boolean
- registry:
- type: string
- tenant:
- type: string
- user:
- type: string
- volume:
- type: string
- required:
- - registry
- - volume
- type: object
- rbd:
- properties:
- fsType:
- type: string
- image:
- type: string
- keyring:
- type: string
- monitors:
- items:
- type: string
- type: array
- pool:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - image
- - monitors
- type: object
- scaleIO:
- properties:
- fsType:
- type: string
- gateway:
- type: string
- protectionDomain:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- sslEnabled:
- type: boolean
- storageMode:
- type: string
- storagePool:
- type: string
- system:
- type: string
- volumeName:
- type: string
- required:
- - gateway
- - secretRef
- - system
- type: object
- secret:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- optional:
- type: boolean
- secretName:
- type: string
- type: object
- storageos:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeName:
- type: string
- volumeNamespace:
- type: string
- type: object
- vsphereVolume:
- properties:
- fsType:
- type: string
- storagePolicyID:
- type: string
- storagePolicyName:
- type: string
- volumePath:
- type: string
- required:
- - volumePath
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- type: array
- tolerations:
- items:
- properties:
- effect:
- type: string
- key:
- type: string
- operator:
- type: string
- tolerationSeconds:
- format: int64
- type: integer
- value:
- type: string
- type: object
- type: array
- ttlStrategy:
- properties:
- secondsAfterCompletion:
- format: int32
- type: integer
- secondsAfterFailure:
- format: int32
- type: integer
- secondsAfterSuccess:
- format: int32
- type: integer
- type: object
- volumeClaimGC:
- properties:
- strategy:
- type: string
- type: object
- volumeClaimTemplates:
- items:
- properties:
- apiVersion:
- type: string
- kind:
- type: string
- metadata:
- type: object
- spec:
- properties:
- accessModes:
- items:
- type: string
- type: array
- dataSource:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- dataSourceRef:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- storageClassName:
- type: string
- volumeMode:
- type: string
- volumeName:
- type: string
- type: object
- status:
- properties:
- accessModes:
- items:
- type: string
- type: array
- allocatedResources:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- capacity:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- conditions:
- items:
- properties:
- lastProbeTime:
- format: date-time
- type: string
- lastTransitionTime:
- format: date-time
- type: string
- message:
- type: string
- reason:
- type: string
- status:
- type: string
- type:
- type: string
- required:
- - status
- - type
- type: object
- type: array
- phase:
- type: string
- resizeStatus:
- type: string
- type: object
- type: object
- type: array
- volumes:
- items:
- properties:
- awsElasticBlockStore:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- azureDisk:
- properties:
- cachingMode:
- type: string
- diskName:
- type: string
- diskURI:
- type: string
- fsType:
- type: string
- kind:
- type: string
- readOnly:
- type: boolean
- required:
- - diskName
- - diskURI
- type: object
- azureFile:
- properties:
- readOnly:
- type: boolean
- secretName:
- type: string
- shareName:
- type: string
- required:
- - secretName
- - shareName
- type: object
- cephfs:
- properties:
- monitors:
- items:
- type: string
- type: array
- path:
- type: string
- readOnly:
- type: boolean
- secretFile:
- type: string
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - monitors
- type: object
- cinder:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- configMap:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- csi:
- properties:
- driver:
- type: string
- fsType:
- type: string
- nodePublishSecretRef:
- properties:
- name:
- type: string
- type: object
- readOnly:
- type: boolean
- volumeAttributes:
- additionalProperties:
- type: string
- type: object
- required:
- - driver
- type: object
- downwardAPI:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- emptyDir:
- properties:
- medium:
- type: string
- sizeLimit:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- ephemeral:
- properties:
- volumeClaimTemplate:
- properties:
- metadata:
- type: object
- spec:
- properties:
- accessModes:
- items:
- type: string
- type: array
- dataSource:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- dataSourceRef:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- storageClassName:
- type: string
- volumeMode:
- type: string
- volumeName:
- type: string
- type: object
- required:
- - spec
- type: object
- type: object
- fc:
- properties:
- fsType:
- type: string
- lun:
- format: int32
- type: integer
- readOnly:
- type: boolean
- targetWWNs:
- items:
- type: string
- type: array
- wwids:
- items:
- type: string
- type: array
- type: object
- flexVolume:
- properties:
- driver:
- type: string
- fsType:
- type: string
- options:
- additionalProperties:
- type: string
- type: object
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- required:
- - driver
- type: object
- flocker:
- properties:
- datasetName:
- type: string
- datasetUUID:
- type: string
- type: object
- gcePersistentDisk:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- pdName:
- type: string
- readOnly:
- type: boolean
- required:
- - pdName
- type: object
- gitRepo:
- properties:
- directory:
- type: string
- repository:
- type: string
- revision:
- type: string
- required:
- - repository
- type: object
- glusterfs:
- properties:
- endpoints:
- type: string
- path:
- type: string
- readOnly:
- type: boolean
- required:
- - endpoints
- - path
- type: object
- hostPath:
- properties:
- path:
- type: string
- type:
- type: string
- required:
- - path
- type: object
- iscsi:
- properties:
- chapAuthDiscovery:
- type: boolean
- chapAuthSession:
- type: boolean
- fsType:
- type: string
- initiatorName:
- type: string
- iqn:
- type: string
- iscsiInterface:
- type: string
- lun:
- format: int32
- type: integer
- portals:
- items:
- type: string
- type: array
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- targetPortal:
- type: string
- required:
- - iqn
- - lun
- - targetPortal
- type: object
- name:
- type: string
- nfs:
- properties:
- path:
- type: string
- readOnly:
- type: boolean
- server:
- type: string
- required:
- - path
- - server
- type: object
- persistentVolumeClaim:
- properties:
- claimName:
- type: string
- readOnly:
- type: boolean
- required:
- - claimName
- type: object
- photonPersistentDisk:
- properties:
- fsType:
- type: string
- pdID:
- type: string
- required:
- - pdID
- type: object
- portworxVolume:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- projected:
- properties:
- defaultMode:
- format: int32
- type: integer
- sources:
- items:
- properties:
- configMap:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- downwardAPI:
- properties:
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- secret:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- serviceAccountToken:
- properties:
- audience:
- type: string
- expirationSeconds:
- format: int64
- type: integer
- path:
- type: string
- required:
- - path
- type: object
- type: object
- type: array
- type: object
- quobyte:
- properties:
- group:
- type: string
- readOnly:
- type: boolean
- registry:
- type: string
- tenant:
- type: string
- user:
- type: string
- volume:
- type: string
- required:
- - registry
- - volume
- type: object
- rbd:
- properties:
- fsType:
- type: string
- image:
- type: string
- keyring:
- type: string
- monitors:
- items:
- type: string
- type: array
- pool:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - image
- - monitors
- type: object
- scaleIO:
- properties:
- fsType:
- type: string
- gateway:
- type: string
- protectionDomain:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- sslEnabled:
- type: boolean
- storageMode:
- type: string
- storagePool:
- type: string
- system:
- type: string
- volumeName:
- type: string
- required:
- - gateway
- - secretRef
- - system
- type: object
- secret:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- optional:
- type: boolean
- secretName:
- type: string
- type: object
- storageos:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeName:
- type: string
- volumeNamespace:
- type: string
- type: object
- vsphereVolume:
- properties:
- fsType:
- type: string
- storagePolicyID:
- type: string
- storagePolicyName:
- type: string
- volumePath:
- type: string
- required:
- - volumePath
- type: object
- required:
- - name
- type: object
- type: array
- workflowMetadata:
- properties:
- annotations:
- additionalProperties:
- type: string
- type: object
- labels:
- additionalProperties:
- type: string
- type: object
- labelsFrom:
- additionalProperties:
- properties:
- expression:
- type: string
- required:
- - expression
- type: object
- type: object
- type: object
- workflowTemplateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- type: object
- type: object
- required:
- - schedule
- - workflowSpec
- type: object
- status:
- properties:
- active:
- items:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- kind:
- type: string
- name:
- type: string
- namespace:
- type: string
- resourceVersion:
- type: string
- uid:
- type: string
- type: object
- type: array
- conditions:
- items:
- properties:
- message:
- type: string
- status:
- type: string
- type:
- type: string
- type: object
- type: array
- lastScheduledTime:
- format: date-time
- type: string
- required:
- - active
- - conditions
- - lastScheduledTime
- type: object
- required:
- - metadata
- - spec
- type: object
- served: true
- storage: true
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workfloweventbindings.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workfloweventbindings.yaml
deleted file mode 100644
index 2af2732..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workfloweventbindings.yaml
+++ /dev/null
@@ -1,447 +0,0 @@
-# This is an auto-generated file. DO NOT EDIT
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata: # kpt-merge: /workfloweventbindings.argoproj.io
- name: workfloweventbindings.argoproj.io
- annotations:
- internal.kpt.dev/upstream-identifier: 'apiextensions.k8s.io|CustomResourceDefinition|default|workfloweventbindings.argoproj.io'
-spec:
- group: argoproj.io
- names:
- kind: WorkflowEventBinding
- listKind: WorkflowEventBindingList
- plural: workfloweventbindings
- shortNames:
- - wfeb
- singular: workfloweventbinding
- scope: Namespaced
- versions:
- - name: v1alpha1
- schema:
- openAPIV3Schema:
- properties:
- apiVersion:
- type: string
- kind:
- type: string
- metadata:
- type: object
- spec:
- properties:
- event:
- properties:
- selector:
- type: string
- required:
- - selector
- type: object
- submit:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- metadata:
- type: object
- workflowTemplateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- type: object
- required:
- - workflowTemplateRef
- type: object
- required:
- - event
- type: object
- required:
- - metadata
- - spec
- type: object
- served: true
- storage: true
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workflows.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workflows.yaml
deleted file mode 100644
index 737c824..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workflows.yaml
+++ /dev/null
@@ -1,40322 +0,0 @@
-# This is an auto-generated file. DO NOT EDIT
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata: # kpt-merge: /workflows.argoproj.io
- name: workflows.argoproj.io
- annotations:
- internal.kpt.dev/upstream-identifier: 'apiextensions.k8s.io|CustomResourceDefinition|default|workflows.argoproj.io'
-spec:
- group: argoproj.io
- names:
- kind: Workflow
- listKind: WorkflowList
- plural: workflows
- shortNames:
- - wf
- singular: workflow
- scope: Namespaced
- versions:
- - additionalPrinterColumns:
- - description: Status of the workflow
- jsonPath: .status.phase
- name: Status
- type: string
- - description: When the workflow was started
- format: date-time
- jsonPath: .status.startedAt
- name: Age
- type: date
- name: v1alpha1
- schema:
- openAPIV3Schema:
- properties:
- apiVersion:
- type: string
- kind:
- type: string
- metadata:
- type: object
- spec:
- properties:
- activeDeadlineSeconds:
- format: int64
- type: integer
- affinity:
- properties:
- nodeAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- preference:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- weight:
- format: int32
- type: integer
- required:
- - preference
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- properties:
- nodeSelectorTerms:
- items:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- type: array
- required:
- - nodeSelectorTerms
- type: object
- type: object
- podAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- podAntiAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- type: object
- archiveLogs:
- type: boolean
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- artifactRepositoryRef:
- properties:
- configMap:
- type: string
- key:
- type: string
- type: object
- automountServiceAccountToken:
- type: boolean
- dnsConfig:
- properties:
- nameservers:
- items:
- type: string
- type: array
- options:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- type: object
- type: array
- searches:
- items:
- type: string
- type: array
- type: object
- dnsPolicy:
- type: string
- entrypoint:
- type: string
- executor:
- properties:
- serviceAccountName:
- type: string
- type: object
- hooks:
- additionalProperties:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- expression:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- type: object
- type: object
- hostAliases:
- items:
- properties:
- hostnames:
- items:
- type: string
- type: array
- ip:
- type: string
- type: object
- type: array
- hostNetwork:
- type: boolean
- imagePullSecrets:
- items:
- properties:
- name:
- type: string
- type: object
- type: array
- metrics:
- properties:
- prometheus:
- items:
- properties:
- counter:
- properties:
- value:
- type: string
- required:
- - value
- type: object
- gauge:
- properties:
- realtime:
- type: boolean
- value:
- type: string
- required:
- - realtime
- - value
- type: object
- help:
- type: string
- histogram:
- properties:
- buckets:
- items:
- type: number
- type: array
- value:
- type: string
- required:
- - buckets
- - value
- type: object
- labels:
- items:
- properties:
- key:
- type: string
- value:
- type: string
- required:
- - key
- - value
- type: object
- type: array
- name:
- type: string
- when:
- type: string
- required:
- - help
- - name
- type: object
- type: array
- required:
- - prometheus
- type: object
- nodeSelector:
- additionalProperties:
- type: string
- type: object
- onExit:
- type: string
- parallelism:
- format: int64
- type: integer
- podDisruptionBudget:
- properties:
- maxUnavailable:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- minAvailable:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- type: object
- podGC:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- strategy:
- type: string
- type: object
- podMetadata:
- properties:
- annotations:
- additionalProperties:
- type: string
- type: object
- labels:
- additionalProperties:
- type: string
- type: object
- type: object
- podPriority:
- format: int32
- type: integer
- podPriorityClassName:
- type: string
- podSpecPatch:
- type: string
- priority:
- format: int32
- type: integer
- retryStrategy:
- properties:
- affinity:
- properties:
- nodeAntiAffinity:
- type: object
- type: object
- backoff:
- properties:
- duration:
- type: string
- factor:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- maxDuration:
- type: string
- type: object
- expression:
- type: string
- limit:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- retryPolicy:
- type: string
- type: object
- schedulerName:
- type: string
- securityContext:
- properties:
- fsGroup:
- format: int64
- type: integer
- fsGroupChangePolicy:
- type: string
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- supplementalGroups:
- items:
- format: int64
- type: integer
- type: array
- sysctls:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- serviceAccountName:
- type: string
- shutdown:
- type: string
- suspend:
- type: boolean
- synchronization:
- properties:
- mutex:
- properties:
- name:
- type: string
- type: object
- semaphore:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- type: object
- templateDefaults:
- properties:
- activeDeadlineSeconds:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- affinity:
- properties:
- nodeAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- preference:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- weight:
- format: int32
- type: integer
- required:
- - preference
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- properties:
- nodeSelectorTerms:
- items:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- type: array
- required:
- - nodeSelectorTerms
- type: object
- type: object
- podAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- podAntiAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- type: object
- archiveLocation:
- properties:
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- type: object
- automountServiceAccountToken:
- type: boolean
- container:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- containerSet:
- properties:
- containers:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- dependencies:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- retryStrategy:
- properties:
- duration:
- type: string
- retries:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - retries
- type: object
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- required:
- - containers
- type: object
- daemon:
- type: boolean
- dag:
- properties:
- failFast:
- type: boolean
- target:
- type: string
- tasks:
- items:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- continueOn:
- properties:
- error:
- type: boolean
- failed:
- type: boolean
- type: object
- dependencies:
- items:
- type: string
- type: array
- depends:
- type: string
- hooks:
- additionalProperties:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- expression:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- type: object
- type: object
- inline: {}
- name:
- type: string
- onExit:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- when:
- type: string
- withItems:
- items:
- type: object
- type: array
- withParam:
- type: string
- withSequence:
- properties:
- count:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- end:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- format:
- type: string
- start:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- type: object
- required:
- - name
- type: object
- type: array
- required:
- - tasks
- type: object
- data:
- properties:
- source:
- properties:
- artifactPaths:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: object
- transformation:
- items:
- properties:
- expression:
- type: string
- required:
- - expression
- type: object
- type: array
- required:
- - source
- - transformation
- type: object
- executor:
- properties:
- serviceAccountName:
- type: string
- type: object
- failFast:
- type: boolean
- hostAliases:
- items:
- properties:
- hostnames:
- items:
- type: string
- type: array
- ip:
- type: string
- type: object
- type: array
- http:
- properties:
- body:
- type: string
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- insecureSkipVerify:
- type: boolean
- method:
- type: string
- successCondition:
- type: string
- timeoutSeconds:
- format: int64
- type: integer
- url:
- type: string
- required:
- - url
- type: object
- initContainers:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- mirrorVolumeMounts:
- type: boolean
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- inputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- memoize:
- properties:
- cache:
- properties:
- configMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - configMap
- type: object
- key:
- type: string
- maxAge:
- type: string
- required:
- - cache
- - key
- - maxAge
- type: object
- metadata:
- properties:
- annotations:
- additionalProperties:
- type: string
- type: object
- labels:
- additionalProperties:
- type: string
- type: object
- type: object
- metrics:
- properties:
- prometheus:
- items:
- properties:
- counter:
- properties:
- value:
- type: string
- required:
- - value
- type: object
- gauge:
- properties:
- realtime:
- type: boolean
- value:
- type: string
- required:
- - realtime
- - value
- type: object
- help:
- type: string
- histogram:
- properties:
- buckets:
- items:
- type: number
- type: array
- value:
- type: string
- required:
- - buckets
- - value
- type: object
- labels:
- items:
- properties:
- key:
- type: string
- value:
- type: string
- required:
- - key
- - value
- type: object
- type: array
- name:
- type: string
- when:
- type: string
- required:
- - help
- - name
- type: object
- type: array
- required:
- - prometheus
- type: object
- name:
- type: string
- nodeSelector:
- additionalProperties:
- type: string
- type: object
- outputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- exitCode:
- type: string
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- result:
- type: string
- type: object
- parallelism:
- format: int64
- type: integer
- plugin:
- type: object
- podSpecPatch:
- type: string
- priority:
- format: int32
- type: integer
- priorityClassName:
- type: string
- resource:
- properties:
- action:
- type: string
- failureCondition:
- type: string
- flags:
- items:
- type: string
- type: array
- manifest:
- type: string
- mergeStrategy:
- type: string
- setOwnerReference:
- type: boolean
- successCondition:
- type: string
- required:
- - action
- type: object
- retryStrategy:
- properties:
- affinity:
- properties:
- nodeAntiAffinity:
- type: object
- type: object
- backoff:
- properties:
- duration:
- type: string
- factor:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- maxDuration:
- type: string
- type: object
- expression:
- type: string
- limit:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- retryPolicy:
- type: string
- type: object
- schedulerName:
- type: string
- script:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- source:
- type: string
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- - source
- type: object
- securityContext:
- properties:
- fsGroup:
- format: int64
- type: integer
- fsGroupChangePolicy:
- type: string
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- supplementalGroups:
- items:
- format: int64
- type: integer
- type: array
- sysctls:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- serviceAccountName:
- type: string
- sidecars:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- mirrorVolumeMounts:
- type: boolean
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- steps:
- items:
- type: array
- type: array
- suspend:
- properties:
- duration:
- type: string
- type: object
- synchronization:
- properties:
- mutex:
- properties:
- name:
- type: string
- type: object
- semaphore:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- type: object
- timeout:
- type: string
- tolerations:
- items:
- properties:
- effect:
- type: string
- key:
- type: string
- operator:
- type: string
- tolerationSeconds:
- format: int64
- type: integer
- value:
- type: string
- type: object
- type: array
- volumes:
- items:
- properties:
- awsElasticBlockStore:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- azureDisk:
- properties:
- cachingMode:
- type: string
- diskName:
- type: string
- diskURI:
- type: string
- fsType:
- type: string
- kind:
- type: string
- readOnly:
- type: boolean
- required:
- - diskName
- - diskURI
- type: object
- azureFile:
- properties:
- readOnly:
- type: boolean
- secretName:
- type: string
- shareName:
- type: string
- required:
- - secretName
- - shareName
- type: object
- cephfs:
- properties:
- monitors:
- items:
- type: string
- type: array
- path:
- type: string
- readOnly:
- type: boolean
- secretFile:
- type: string
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - monitors
- type: object
- cinder:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- configMap:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- csi:
- properties:
- driver:
- type: string
- fsType:
- type: string
- nodePublishSecretRef:
- properties:
- name:
- type: string
- type: object
- readOnly:
- type: boolean
- volumeAttributes:
- additionalProperties:
- type: string
- type: object
- required:
- - driver
- type: object
- downwardAPI:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- emptyDir:
- properties:
- medium:
- type: string
- sizeLimit:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- ephemeral:
- properties:
- volumeClaimTemplate:
- properties:
- metadata:
- type: object
- spec:
- properties:
- accessModes:
- items:
- type: string
- type: array
- dataSource:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- dataSourceRef:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- storageClassName:
- type: string
- volumeMode:
- type: string
- volumeName:
- type: string
- type: object
- required:
- - spec
- type: object
- type: object
- fc:
- properties:
- fsType:
- type: string
- lun:
- format: int32
- type: integer
- readOnly:
- type: boolean
- targetWWNs:
- items:
- type: string
- type: array
- wwids:
- items:
- type: string
- type: array
- type: object
- flexVolume:
- properties:
- driver:
- type: string
- fsType:
- type: string
- options:
- additionalProperties:
- type: string
- type: object
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- required:
- - driver
- type: object
- flocker:
- properties:
- datasetName:
- type: string
- datasetUUID:
- type: string
- type: object
- gcePersistentDisk:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- pdName:
- type: string
- readOnly:
- type: boolean
- required:
- - pdName
- type: object
- gitRepo:
- properties:
- directory:
- type: string
- repository:
- type: string
- revision:
- type: string
- required:
- - repository
- type: object
- glusterfs:
- properties:
- endpoints:
- type: string
- path:
- type: string
- readOnly:
- type: boolean
- required:
- - endpoints
- - path
- type: object
- hostPath:
- properties:
- path:
- type: string
- type:
- type: string
- required:
- - path
- type: object
- iscsi:
- properties:
- chapAuthDiscovery:
- type: boolean
- chapAuthSession:
- type: boolean
- fsType:
- type: string
- initiatorName:
- type: string
- iqn:
- type: string
- iscsiInterface:
- type: string
- lun:
- format: int32
- type: integer
- portals:
- items:
- type: string
- type: array
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- targetPortal:
- type: string
- required:
- - iqn
- - lun
- - targetPortal
- type: object
- name:
- type: string
- nfs:
- properties:
- path:
- type: string
- readOnly:
- type: boolean
- server:
- type: string
- required:
- - path
- - server
- type: object
- persistentVolumeClaim:
- properties:
- claimName:
- type: string
- readOnly:
- type: boolean
- required:
- - claimName
- type: object
- photonPersistentDisk:
- properties:
- fsType:
- type: string
- pdID:
- type: string
- required:
- - pdID
- type: object
- portworxVolume:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- projected:
- properties:
- defaultMode:
- format: int32
- type: integer
- sources:
- items:
- properties:
- configMap:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- downwardAPI:
- properties:
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- secret:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- serviceAccountToken:
- properties:
- audience:
- type: string
- expirationSeconds:
- format: int64
- type: integer
- path:
- type: string
- required:
- - path
- type: object
- type: object
- type: array
- type: object
- quobyte:
- properties:
- group:
- type: string
- readOnly:
- type: boolean
- registry:
- type: string
- tenant:
- type: string
- user:
- type: string
- volume:
- type: string
- required:
- - registry
- - volume
- type: object
- rbd:
- properties:
- fsType:
- type: string
- image:
- type: string
- keyring:
- type: string
- monitors:
- items:
- type: string
- type: array
- pool:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - image
- - monitors
- type: object
- scaleIO:
- properties:
- fsType:
- type: string
- gateway:
- type: string
- protectionDomain:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- sslEnabled:
- type: boolean
- storageMode:
- type: string
- storagePool:
- type: string
- system:
- type: string
- volumeName:
- type: string
- required:
- - gateway
- - secretRef
- - system
- type: object
- secret:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- optional:
- type: boolean
- secretName:
- type: string
- type: object
- storageos:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeName:
- type: string
- volumeNamespace:
- type: string
- type: object
- vsphereVolume:
- properties:
- fsType:
- type: string
- storagePolicyID:
- type: string
- storagePolicyName:
- type: string
- volumePath:
- type: string
- required:
- - volumePath
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- templates:
- items:
- properties:
- activeDeadlineSeconds:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- affinity:
- properties:
- nodeAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- preference:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- weight:
- format: int32
- type: integer
- required:
- - preference
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- properties:
- nodeSelectorTerms:
- items:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- type: array
- required:
- - nodeSelectorTerms
- type: object
- type: object
- podAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- podAntiAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- type: object
- archiveLocation:
- properties:
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- type: object
- automountServiceAccountToken:
- type: boolean
- container:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - image
- type: object
- containerSet:
- properties:
- containers:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- dependencies:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- retryStrategy:
- properties:
- duration:
- type: string
- retries:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - retries
- type: object
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- required:
- - containers
- type: object
- daemon:
- type: boolean
- dag:
- properties:
- failFast:
- type: boolean
- target:
- type: string
- tasks:
- items:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- continueOn:
- properties:
- error:
- type: boolean
- failed:
- type: boolean
- type: object
- dependencies:
- items:
- type: string
- type: array
- depends:
- type: string
- hooks:
- additionalProperties:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- expression:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- type: object
- type: object
- inline: {}
- name:
- type: string
- onExit:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- when:
- type: string
- withItems:
- items:
- type: object
- type: array
- withParam:
- type: string
- withSequence:
- properties:
- count:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- end:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- format:
- type: string
- start:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- type: object
- required:
- - name
- type: object
- type: array
- required:
- - tasks
- type: object
- data:
- properties:
- source:
- properties:
- artifactPaths:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: object
- transformation:
- items:
- properties:
- expression:
- type: string
- required:
- - expression
- type: object
- type: array
- required:
- - source
- - transformation
- type: object
- executor:
- properties:
- serviceAccountName:
- type: string
- type: object
- failFast:
- type: boolean
- hostAliases:
- items:
- properties:
- hostnames:
- items:
- type: string
- type: array
- ip:
- type: string
- type: object
- type: array
- http:
- properties:
- body:
- type: string
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- insecureSkipVerify:
- type: boolean
- method:
- type: string
- successCondition:
- type: string
- timeoutSeconds:
- format: int64
- type: integer
- url:
- type: string
- required:
- - url
- type: object
- initContainers:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- mirrorVolumeMounts:
- type: boolean
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- inputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- memoize:
- properties:
- cache:
- properties:
- configMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - configMap
- type: object
- key:
- type: string
- maxAge:
- type: string
- required:
- - cache
- - key
- - maxAge
- type: object
- metadata:
- properties:
- annotations:
- additionalProperties:
- type: string
- type: object
- labels:
- additionalProperties:
- type: string
- type: object
- type: object
- metrics:
- properties:
- prometheus:
- items:
- properties:
- counter:
- properties:
- value:
- type: string
- required:
- - value
- type: object
- gauge:
- properties:
- realtime:
- type: boolean
- value:
- type: string
- required:
- - realtime
- - value
- type: object
- help:
- type: string
- histogram:
- properties:
- buckets:
- items:
- type: number
- type: array
- value:
- type: string
- required:
- - buckets
- - value
- type: object
- labels:
- items:
- properties:
- key:
- type: string
- value:
- type: string
- required:
- - key
- - value
- type: object
- type: array
- name:
- type: string
- when:
- type: string
- required:
- - help
- - name
- type: object
- type: array
- required:
- - prometheus
- type: object
- name:
- type: string
- nodeSelector:
- additionalProperties:
- type: string
- type: object
- outputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- exitCode:
- type: string
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- result:
- type: string
- type: object
- parallelism:
- format: int64
- type: integer
- plugin:
- type: object
- podSpecPatch:
- type: string
- priority:
- format: int32
- type: integer
- priorityClassName:
- type: string
- resource:
- properties:
- action:
- type: string
- failureCondition:
- type: string
- flags:
- items:
- type: string
- type: array
- manifest:
- type: string
- mergeStrategy:
- type: string
- setOwnerReference:
- type: boolean
- successCondition:
- type: string
- required:
- - action
- type: object
- retryStrategy:
- properties:
- affinity:
- properties:
- nodeAntiAffinity:
- type: object
- type: object
- backoff:
- properties:
- duration:
- type: string
- factor:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- maxDuration:
- type: string
- type: object
- expression:
- type: string
- limit:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- retryPolicy:
- type: string
- type: object
- schedulerName:
- type: string
- script:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- source:
- type: string
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - image
- - source
- type: object
- securityContext:
- properties:
- fsGroup:
- format: int64
- type: integer
- fsGroupChangePolicy:
- type: string
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- supplementalGroups:
- items:
- format: int64
- type: integer
- type: array
- sysctls:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- serviceAccountName:
- type: string
- sidecars:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- mirrorVolumeMounts:
- type: boolean
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- steps:
- items:
- type: array
- type: array
- suspend:
- properties:
- duration:
- type: string
- type: object
- synchronization:
- properties:
- mutex:
- properties:
- name:
- type: string
- type: object
- semaphore:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- type: object
- timeout:
- type: string
- tolerations:
- items:
- properties:
- effect:
- type: string
- key:
- type: string
- operator:
- type: string
- tolerationSeconds:
- format: int64
- type: integer
- value:
- type: string
- type: object
- type: array
- volumes:
- items:
- properties:
- awsElasticBlockStore:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- azureDisk:
- properties:
- cachingMode:
- type: string
- diskName:
- type: string
- diskURI:
- type: string
- fsType:
- type: string
- kind:
- type: string
- readOnly:
- type: boolean
- required:
- - diskName
- - diskURI
- type: object
- azureFile:
- properties:
- readOnly:
- type: boolean
- secretName:
- type: string
- shareName:
- type: string
- required:
- - secretName
- - shareName
- type: object
- cephfs:
- properties:
- monitors:
- items:
- type: string
- type: array
- path:
- type: string
- readOnly:
- type: boolean
- secretFile:
- type: string
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - monitors
- type: object
- cinder:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- configMap:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- csi:
- properties:
- driver:
- type: string
- fsType:
- type: string
- nodePublishSecretRef:
- properties:
- name:
- type: string
- type: object
- readOnly:
- type: boolean
- volumeAttributes:
- additionalProperties:
- type: string
- type: object
- required:
- - driver
- type: object
- downwardAPI:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- emptyDir:
- properties:
- medium:
- type: string
- sizeLimit:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- ephemeral:
- properties:
- volumeClaimTemplate:
- properties:
- metadata:
- type: object
- spec:
- properties:
- accessModes:
- items:
- type: string
- type: array
- dataSource:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- dataSourceRef:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- storageClassName:
- type: string
- volumeMode:
- type: string
- volumeName:
- type: string
- type: object
- required:
- - spec
- type: object
- type: object
- fc:
- properties:
- fsType:
- type: string
- lun:
- format: int32
- type: integer
- readOnly:
- type: boolean
- targetWWNs:
- items:
- type: string
- type: array
- wwids:
- items:
- type: string
- type: array
- type: object
- flexVolume:
- properties:
- driver:
- type: string
- fsType:
- type: string
- options:
- additionalProperties:
- type: string
- type: object
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- required:
- - driver
- type: object
- flocker:
- properties:
- datasetName:
- type: string
- datasetUUID:
- type: string
- type: object
- gcePersistentDisk:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- pdName:
- type: string
- readOnly:
- type: boolean
- required:
- - pdName
- type: object
- gitRepo:
- properties:
- directory:
- type: string
- repository:
- type: string
- revision:
- type: string
- required:
- - repository
- type: object
- glusterfs:
- properties:
- endpoints:
- type: string
- path:
- type: string
- readOnly:
- type: boolean
- required:
- - endpoints
- - path
- type: object
- hostPath:
- properties:
- path:
- type: string
- type:
- type: string
- required:
- - path
- type: object
- iscsi:
- properties:
- chapAuthDiscovery:
- type: boolean
- chapAuthSession:
- type: boolean
- fsType:
- type: string
- initiatorName:
- type: string
- iqn:
- type: string
- iscsiInterface:
- type: string
- lun:
- format: int32
- type: integer
- portals:
- items:
- type: string
- type: array
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- targetPortal:
- type: string
- required:
- - iqn
- - lun
- - targetPortal
- type: object
- name:
- type: string
- nfs:
- properties:
- path:
- type: string
- readOnly:
- type: boolean
- server:
- type: string
- required:
- - path
- - server
- type: object
- persistentVolumeClaim:
- properties:
- claimName:
- type: string
- readOnly:
- type: boolean
- required:
- - claimName
- type: object
- photonPersistentDisk:
- properties:
- fsType:
- type: string
- pdID:
- type: string
- required:
- - pdID
- type: object
- portworxVolume:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- projected:
- properties:
- defaultMode:
- format: int32
- type: integer
- sources:
- items:
- properties:
- configMap:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- downwardAPI:
- properties:
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- secret:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- serviceAccountToken:
- properties:
- audience:
- type: string
- expirationSeconds:
- format: int64
- type: integer
- path:
- type: string
- required:
- - path
- type: object
- type: object
- type: array
- type: object
- quobyte:
- properties:
- group:
- type: string
- readOnly:
- type: boolean
- registry:
- type: string
- tenant:
- type: string
- user:
- type: string
- volume:
- type: string
- required:
- - registry
- - volume
- type: object
- rbd:
- properties:
- fsType:
- type: string
- image:
- type: string
- keyring:
- type: string
- monitors:
- items:
- type: string
- type: array
- pool:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - image
- - monitors
- type: object
- scaleIO:
- properties:
- fsType:
- type: string
- gateway:
- type: string
- protectionDomain:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- sslEnabled:
- type: boolean
- storageMode:
- type: string
- storagePool:
- type: string
- system:
- type: string
- volumeName:
- type: string
- required:
- - gateway
- - secretRef
- - system
- type: object
- secret:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- optional:
- type: boolean
- secretName:
- type: string
- type: object
- storageos:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeName:
- type: string
- volumeNamespace:
- type: string
- type: object
- vsphereVolume:
- properties:
- fsType:
- type: string
- storagePolicyID:
- type: string
- storagePolicyName:
- type: string
- volumePath:
- type: string
- required:
- - volumePath
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- type: array
- tolerations:
- items:
- properties:
- effect:
- type: string
- key:
- type: string
- operator:
- type: string
- tolerationSeconds:
- format: int64
- type: integer
- value:
- type: string
- type: object
- type: array
- ttlStrategy:
- properties:
- secondsAfterCompletion:
- format: int32
- type: integer
- secondsAfterFailure:
- format: int32
- type: integer
- secondsAfterSuccess:
- format: int32
- type: integer
- type: object
- volumeClaimGC:
- properties:
- strategy:
- type: string
- type: object
- volumeClaimTemplates:
- items:
- properties:
- apiVersion:
- type: string
- kind:
- type: string
- metadata:
- type: object
- spec:
- properties:
- accessModes:
- items:
- type: string
- type: array
- dataSource:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- dataSourceRef:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- storageClassName:
- type: string
- volumeMode:
- type: string
- volumeName:
- type: string
- type: object
- status:
- properties:
- accessModes:
- items:
- type: string
- type: array
- allocatedResources:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- capacity:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- conditions:
- items:
- properties:
- lastProbeTime:
- format: date-time
- type: string
- lastTransitionTime:
- format: date-time
- type: string
- message:
- type: string
- reason:
- type: string
- status:
- type: string
- type:
- type: string
- required:
- - status
- - type
- type: object
- type: array
- phase:
- type: string
- resizeStatus:
- type: string
- type: object
- type: object
- type: array
- volumes:
- items:
- properties:
- awsElasticBlockStore:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- azureDisk:
- properties:
- cachingMode:
- type: string
- diskName:
- type: string
- diskURI:
- type: string
- fsType:
- type: string
- kind:
- type: string
- readOnly:
- type: boolean
- required:
- - diskName
- - diskURI
- type: object
- azureFile:
- properties:
- readOnly:
- type: boolean
- secretName:
- type: string
- shareName:
- type: string
- required:
- - secretName
- - shareName
- type: object
- cephfs:
- properties:
- monitors:
- items:
- type: string
- type: array
- path:
- type: string
- readOnly:
- type: boolean
- secretFile:
- type: string
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - monitors
- type: object
- cinder:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- configMap:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- csi:
- properties:
- driver:
- type: string
- fsType:
- type: string
- nodePublishSecretRef:
- properties:
- name:
- type: string
- type: object
- readOnly:
- type: boolean
- volumeAttributes:
- additionalProperties:
- type: string
- type: object
- required:
- - driver
- type: object
- downwardAPI:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- emptyDir:
- properties:
- medium:
- type: string
- sizeLimit:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- ephemeral:
- properties:
- volumeClaimTemplate:
- properties:
- metadata:
- type: object
- spec:
- properties:
- accessModes:
- items:
- type: string
- type: array
- dataSource:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- dataSourceRef:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- storageClassName:
- type: string
- volumeMode:
- type: string
- volumeName:
- type: string
- type: object
- required:
- - spec
- type: object
- type: object
- fc:
- properties:
- fsType:
- type: string
- lun:
- format: int32
- type: integer
- readOnly:
- type: boolean
- targetWWNs:
- items:
- type: string
- type: array
- wwids:
- items:
- type: string
- type: array
- type: object
- flexVolume:
- properties:
- driver:
- type: string
- fsType:
- type: string
- options:
- additionalProperties:
- type: string
- type: object
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- required:
- - driver
- type: object
- flocker:
- properties:
- datasetName:
- type: string
- datasetUUID:
- type: string
- type: object
- gcePersistentDisk:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- pdName:
- type: string
- readOnly:
- type: boolean
- required:
- - pdName
- type: object
- gitRepo:
- properties:
- directory:
- type: string
- repository:
- type: string
- revision:
- type: string
- required:
- - repository
- type: object
- glusterfs:
- properties:
- endpoints:
- type: string
- path:
- type: string
- readOnly:
- type: boolean
- required:
- - endpoints
- - path
- type: object
- hostPath:
- properties:
- path:
- type: string
- type:
- type: string
- required:
- - path
- type: object
- iscsi:
- properties:
- chapAuthDiscovery:
- type: boolean
- chapAuthSession:
- type: boolean
- fsType:
- type: string
- initiatorName:
- type: string
- iqn:
- type: string
- iscsiInterface:
- type: string
- lun:
- format: int32
- type: integer
- portals:
- items:
- type: string
- type: array
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- targetPortal:
- type: string
- required:
- - iqn
- - lun
- - targetPortal
- type: object
- name:
- type: string
- nfs:
- properties:
- path:
- type: string
- readOnly:
- type: boolean
- server:
- type: string
- required:
- - path
- - server
- type: object
- persistentVolumeClaim:
- properties:
- claimName:
- type: string
- readOnly:
- type: boolean
- required:
- - claimName
- type: object
- photonPersistentDisk:
- properties:
- fsType:
- type: string
- pdID:
- type: string
- required:
- - pdID
- type: object
- portworxVolume:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- projected:
- properties:
- defaultMode:
- format: int32
- type: integer
- sources:
- items:
- properties:
- configMap:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- downwardAPI:
- properties:
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- secret:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- serviceAccountToken:
- properties:
- audience:
- type: string
- expirationSeconds:
- format: int64
- type: integer
- path:
- type: string
- required:
- - path
- type: object
- type: object
- type: array
- type: object
- quobyte:
- properties:
- group:
- type: string
- readOnly:
- type: boolean
- registry:
- type: string
- tenant:
- type: string
- user:
- type: string
- volume:
- type: string
- required:
- - registry
- - volume
- type: object
- rbd:
- properties:
- fsType:
- type: string
- image:
- type: string
- keyring:
- type: string
- monitors:
- items:
- type: string
- type: array
- pool:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - image
- - monitors
- type: object
- scaleIO:
- properties:
- fsType:
- type: string
- gateway:
- type: string
- protectionDomain:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- sslEnabled:
- type: boolean
- storageMode:
- type: string
- storagePool:
- type: string
- system:
- type: string
- volumeName:
- type: string
- required:
- - gateway
- - secretRef
- - system
- type: object
- secret:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- optional:
- type: boolean
- secretName:
- type: string
- type: object
- storageos:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeName:
- type: string
- volumeNamespace:
- type: string
- type: object
- vsphereVolume:
- properties:
- fsType:
- type: string
- storagePolicyID:
- type: string
- storagePolicyName:
- type: string
- volumePath:
- type: string
- required:
- - volumePath
- type: object
- required:
- - name
- type: object
- type: array
- workflowMetadata:
- properties:
- annotations:
- additionalProperties:
- type: string
- type: object
- labels:
- additionalProperties:
- type: string
- type: object
- labelsFrom:
- additionalProperties:
- properties:
- expression:
- type: string
- required:
- - expression
- type: object
- type: object
- type: object
- workflowTemplateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- type: object
- type: object
- status:
- properties:
- artifactRepositoryRef:
- properties:
- artifactRepository:
- properties:
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repoURL:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- gcs:
- properties:
- bucket:
- type: string
- keyFormat:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- pathFormat:
- type: string
- type: object
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- keyFormat:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- type: object
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- keyFormat:
- type: string
- keyPrefix:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- type: object
- configMap:
- type: string
- default:
- type: boolean
- key:
- type: string
- namespace:
- type: string
- type: object
- compressedNodes:
- type: string
- conditions:
- items:
- properties:
- message:
- type: string
- status:
- type: string
- type:
- type: string
- type: object
- type: array
- estimatedDuration:
- type: integer
- finishedAt:
- format: date-time
- type: string
- message:
- type: string
- nodes:
- additionalProperties:
- properties:
- boundaryID:
- type: string
- children:
- items:
- type: string
- type: array
- daemoned:
- type: boolean
- displayName:
- type: string
- estimatedDuration:
- type: integer
- finishedAt:
- format: date-time
- type: string
- hostNodeName:
- type: string
- id:
- type: string
- inputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- memoizationStatus:
- properties:
- cacheName:
- type: string
- hit:
- type: boolean
- key:
- type: string
- required:
- - cacheName
- - hit
- - key
- type: object
- message:
- type: string
- name:
- type: string
- outboundNodes:
- items:
- type: string
- type: array
- outputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- exitCode:
- type: string
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- result:
- type: string
- type: object
- phase:
- type: string
- podIP:
- type: string
- progress:
- type: string
- resourcesDuration:
- additionalProperties:
- format: int64
- type: integer
- type: object
- startedAt:
- format: date-time
- type: string
- synchronizationStatus:
- properties:
- waiting:
- type: string
- type: object
- templateName:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- templateScope:
- type: string
- type:
- type: string
- required:
- - id
- - name
- - type
- type: object
- type: object
- offloadNodeStatusVersion:
- type: string
- outputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- exitCode:
- type: string
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- result:
- type: string
- type: object
- persistentVolumeClaims:
- items:
- properties:
- awsElasticBlockStore:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- azureDisk:
- properties:
- cachingMode:
- type: string
- diskName:
- type: string
- diskURI:
- type: string
- fsType:
- type: string
- kind:
- type: string
- readOnly:
- type: boolean
- required:
- - diskName
- - diskURI
- type: object
- azureFile:
- properties:
- readOnly:
- type: boolean
- secretName:
- type: string
- shareName:
- type: string
- required:
- - secretName
- - shareName
- type: object
- cephfs:
- properties:
- monitors:
- items:
- type: string
- type: array
- path:
- type: string
- readOnly:
- type: boolean
- secretFile:
- type: string
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - monitors
- type: object
- cinder:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- configMap:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- csi:
- properties:
- driver:
- type: string
- fsType:
- type: string
- nodePublishSecretRef:
- properties:
- name:
- type: string
- type: object
- readOnly:
- type: boolean
- volumeAttributes:
- additionalProperties:
- type: string
- type: object
- required:
- - driver
- type: object
- downwardAPI:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- emptyDir:
- properties:
- medium:
- type: string
- sizeLimit:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- ephemeral:
- properties:
- volumeClaimTemplate:
- properties:
- metadata:
- type: object
- spec:
- properties:
- accessModes:
- items:
- type: string
- type: array
- dataSource:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- dataSourceRef:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- storageClassName:
- type: string
- volumeMode:
- type: string
- volumeName:
- type: string
- type: object
- required:
- - spec
- type: object
- type: object
- fc:
- properties:
- fsType:
- type: string
- lun:
- format: int32
- type: integer
- readOnly:
- type: boolean
- targetWWNs:
- items:
- type: string
- type: array
- wwids:
- items:
- type: string
- type: array
- type: object
- flexVolume:
- properties:
- driver:
- type: string
- fsType:
- type: string
- options:
- additionalProperties:
- type: string
- type: object
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- required:
- - driver
- type: object
- flocker:
- properties:
- datasetName:
- type: string
- datasetUUID:
- type: string
- type: object
- gcePersistentDisk:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- pdName:
- type: string
- readOnly:
- type: boolean
- required:
- - pdName
- type: object
- gitRepo:
- properties:
- directory:
- type: string
- repository:
- type: string
- revision:
- type: string
- required:
- - repository
- type: object
- glusterfs:
- properties:
- endpoints:
- type: string
- path:
- type: string
- readOnly:
- type: boolean
- required:
- - endpoints
- - path
- type: object
- hostPath:
- properties:
- path:
- type: string
- type:
- type: string
- required:
- - path
- type: object
- iscsi:
- properties:
- chapAuthDiscovery:
- type: boolean
- chapAuthSession:
- type: boolean
- fsType:
- type: string
- initiatorName:
- type: string
- iqn:
- type: string
- iscsiInterface:
- type: string
- lun:
- format: int32
- type: integer
- portals:
- items:
- type: string
- type: array
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- targetPortal:
- type: string
- required:
- - iqn
- - lun
- - targetPortal
- type: object
- name:
- type: string
- nfs:
- properties:
- path:
- type: string
- readOnly:
- type: boolean
- server:
- type: string
- required:
- - path
- - server
- type: object
- persistentVolumeClaim:
- properties:
- claimName:
- type: string
- readOnly:
- type: boolean
- required:
- - claimName
- type: object
- photonPersistentDisk:
- properties:
- fsType:
- type: string
- pdID:
- type: string
- required:
- - pdID
- type: object
- portworxVolume:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- projected:
- properties:
- defaultMode:
- format: int32
- type: integer
- sources:
- items:
- properties:
- configMap:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- downwardAPI:
- properties:
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- secret:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- serviceAccountToken:
- properties:
- audience:
- type: string
- expirationSeconds:
- format: int64
- type: integer
- path:
- type: string
- required:
- - path
- type: object
- type: object
- type: array
- type: object
- quobyte:
- properties:
- group:
- type: string
- readOnly:
- type: boolean
- registry:
- type: string
- tenant:
- type: string
- user:
- type: string
- volume:
- type: string
- required:
- - registry
- - volume
- type: object
- rbd:
- properties:
- fsType:
- type: string
- image:
- type: string
- keyring:
- type: string
- monitors:
- items:
- type: string
- type: array
- pool:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - image
- - monitors
- type: object
- scaleIO:
- properties:
- fsType:
- type: string
- gateway:
- type: string
- protectionDomain:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- sslEnabled:
- type: boolean
- storageMode:
- type: string
- storagePool:
- type: string
- system:
- type: string
- volumeName:
- type: string
- required:
- - gateway
- - secretRef
- - system
- type: object
- secret:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- optional:
- type: boolean
- secretName:
- type: string
- type: object
- storageos:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeName:
- type: string
- volumeNamespace:
- type: string
- type: object
- vsphereVolume:
- properties:
- fsType:
- type: string
- storagePolicyID:
- type: string
- storagePolicyName:
- type: string
- volumePath:
- type: string
- required:
- - volumePath
- type: object
- required:
- - name
- type: object
- type: array
- phase:
- type: string
- progress:
- type: string
- resourcesDuration:
- additionalProperties:
- format: int64
- type: integer
- type: object
- startedAt:
- format: date-time
- type: string
- storedTemplates:
- additionalProperties:
- properties:
- activeDeadlineSeconds:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- affinity:
- properties:
- nodeAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- preference:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- weight:
- format: int32
- type: integer
- required:
- - preference
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- properties:
- nodeSelectorTerms:
- items:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- type: array
- required:
- - nodeSelectorTerms
- type: object
- type: object
- podAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- podAntiAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- type: object
- archiveLocation:
- properties:
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- type: object
- automountServiceAccountToken:
- type: boolean
- container:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- containerSet:
- properties:
- containers:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- dependencies:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- retryStrategy:
- properties:
- duration:
- type: string
- retries:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - retries
- type: object
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- required:
- - containers
- type: object
- daemon:
- type: boolean
- dag:
- properties:
- failFast:
- type: boolean
- target:
- type: string
- tasks:
- items:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- continueOn:
- properties:
- error:
- type: boolean
- failed:
- type: boolean
- type: object
- dependencies:
- items:
- type: string
- type: array
- depends:
- type: string
- hooks:
- additionalProperties:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- expression:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- type: object
- type: object
- inline: {}
- name:
- type: string
- onExit:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- when:
- type: string
- withItems:
- items:
- type: object
- type: array
- withParam:
- type: string
- withSequence:
- properties:
- count:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- end:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- format:
- type: string
- start:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- type: object
- required:
- - name
- type: object
- type: array
- required:
- - tasks
- type: object
- data:
- properties:
- source:
- properties:
- artifactPaths:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: object
- transformation:
- items:
- properties:
- expression:
- type: string
- required:
- - expression
- type: object
- type: array
- required:
- - source
- - transformation
- type: object
- executor:
- properties:
- serviceAccountName:
- type: string
- type: object
- failFast:
- type: boolean
- hostAliases:
- items:
- properties:
- hostnames:
- items:
- type: string
- type: array
- ip:
- type: string
- type: object
- type: array
- http:
- properties:
- body:
- type: string
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- insecureSkipVerify:
- type: boolean
- method:
- type: string
- successCondition:
- type: string
- timeoutSeconds:
- format: int64
- type: integer
- url:
- type: string
- required:
- - url
- type: object
- initContainers:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- mirrorVolumeMounts:
- type: boolean
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- inputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- memoize:
- properties:
- cache:
- properties:
- configMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - configMap
- type: object
- key:
- type: string
- maxAge:
- type: string
- required:
- - cache
- - key
- - maxAge
- type: object
- metadata:
- properties:
- annotations:
- additionalProperties:
- type: string
- type: object
- labels:
- additionalProperties:
- type: string
- type: object
- type: object
- metrics:
- properties:
- prometheus:
- items:
- properties:
- counter:
- properties:
- value:
- type: string
- required:
- - value
- type: object
- gauge:
- properties:
- realtime:
- type: boolean
- value:
- type: string
- required:
- - realtime
- - value
- type: object
- help:
- type: string
- histogram:
- properties:
- buckets:
- items:
- type: number
- type: array
- value:
- type: string
- required:
- - buckets
- - value
- type: object
- labels:
- items:
- properties:
- key:
- type: string
- value:
- type: string
- required:
- - key
- - value
- type: object
- type: array
- name:
- type: string
- when:
- type: string
- required:
- - help
- - name
- type: object
- type: array
- required:
- - prometheus
- type: object
- name:
- type: string
- nodeSelector:
- additionalProperties:
- type: string
- type: object
- outputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- exitCode:
- type: string
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- result:
- type: string
- type: object
- parallelism:
- format: int64
- type: integer
- plugin:
- type: object
- podSpecPatch:
- type: string
- priority:
- format: int32
- type: integer
- priorityClassName:
- type: string
- resource:
- properties:
- action:
- type: string
- failureCondition:
- type: string
- flags:
- items:
- type: string
- type: array
- manifest:
- type: string
- mergeStrategy:
- type: string
- setOwnerReference:
- type: boolean
- successCondition:
- type: string
- required:
- - action
- type: object
- retryStrategy:
- properties:
- affinity:
- properties:
- nodeAntiAffinity:
- type: object
- type: object
- backoff:
- properties:
- duration:
- type: string
- factor:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- maxDuration:
- type: string
- type: object
- expression:
- type: string
- limit:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- retryPolicy:
- type: string
- type: object
- schedulerName:
- type: string
- script:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- source:
- type: string
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- - source
- type: object
- securityContext:
- properties:
- fsGroup:
- format: int64
- type: integer
- fsGroupChangePolicy:
- type: string
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- supplementalGroups:
- items:
- format: int64
- type: integer
- type: array
- sysctls:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- serviceAccountName:
- type: string
- sidecars:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- mirrorVolumeMounts:
- type: boolean
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- steps:
- items:
- type: array
- type: array
- suspend:
- properties:
- duration:
- type: string
- type: object
- synchronization:
- properties:
- mutex:
- properties:
- name:
- type: string
- type: object
- semaphore:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- type: object
- timeout:
- type: string
- tolerations:
- items:
- properties:
- effect:
- type: string
- key:
- type: string
- operator:
- type: string
- tolerationSeconds:
- format: int64
- type: integer
- value:
- type: string
- type: object
- type: array
- volumes:
- items:
- properties:
- awsElasticBlockStore:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- azureDisk:
- properties:
- cachingMode:
- type: string
- diskName:
- type: string
- diskURI:
- type: string
- fsType:
- type: string
- kind:
- type: string
- readOnly:
- type: boolean
- required:
- - diskName
- - diskURI
- type: object
- azureFile:
- properties:
- readOnly:
- type: boolean
- secretName:
- type: string
- shareName:
- type: string
- required:
- - secretName
- - shareName
- type: object
- cephfs:
- properties:
- monitors:
- items:
- type: string
- type: array
- path:
- type: string
- readOnly:
- type: boolean
- secretFile:
- type: string
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - monitors
- type: object
- cinder:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- configMap:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- csi:
- properties:
- driver:
- type: string
- fsType:
- type: string
- nodePublishSecretRef:
- properties:
- name:
- type: string
- type: object
- readOnly:
- type: boolean
- volumeAttributes:
- additionalProperties:
- type: string
- type: object
- required:
- - driver
- type: object
- downwardAPI:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- emptyDir:
- properties:
- medium:
- type: string
- sizeLimit:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- ephemeral:
- properties:
- volumeClaimTemplate:
- properties:
- metadata:
- type: object
- spec:
- properties:
- accessModes:
- items:
- type: string
- type: array
- dataSource:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- dataSourceRef:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- storageClassName:
- type: string
- volumeMode:
- type: string
- volumeName:
- type: string
- type: object
- required:
- - spec
- type: object
- type: object
- fc:
- properties:
- fsType:
- type: string
- lun:
- format: int32
- type: integer
- readOnly:
- type: boolean
- targetWWNs:
- items:
- type: string
- type: array
- wwids:
- items:
- type: string
- type: array
- type: object
- flexVolume:
- properties:
- driver:
- type: string
- fsType:
- type: string
- options:
- additionalProperties:
- type: string
- type: object
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- required:
- - driver
- type: object
- flocker:
- properties:
- datasetName:
- type: string
- datasetUUID:
- type: string
- type: object
- gcePersistentDisk:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- pdName:
- type: string
- readOnly:
- type: boolean
- required:
- - pdName
- type: object
- gitRepo:
- properties:
- directory:
- type: string
- repository:
- type: string
- revision:
- type: string
- required:
- - repository
- type: object
- glusterfs:
- properties:
- endpoints:
- type: string
- path:
- type: string
- readOnly:
- type: boolean
- required:
- - endpoints
- - path
- type: object
- hostPath:
- properties:
- path:
- type: string
- type:
- type: string
- required:
- - path
- type: object
- iscsi:
- properties:
- chapAuthDiscovery:
- type: boolean
- chapAuthSession:
- type: boolean
- fsType:
- type: string
- initiatorName:
- type: string
- iqn:
- type: string
- iscsiInterface:
- type: string
- lun:
- format: int32
- type: integer
- portals:
- items:
- type: string
- type: array
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- targetPortal:
- type: string
- required:
- - iqn
- - lun
- - targetPortal
- type: object
- name:
- type: string
- nfs:
- properties:
- path:
- type: string
- readOnly:
- type: boolean
- server:
- type: string
- required:
- - path
- - server
- type: object
- persistentVolumeClaim:
- properties:
- claimName:
- type: string
- readOnly:
- type: boolean
- required:
- - claimName
- type: object
- photonPersistentDisk:
- properties:
- fsType:
- type: string
- pdID:
- type: string
- required:
- - pdID
- type: object
- portworxVolume:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- projected:
- properties:
- defaultMode:
- format: int32
- type: integer
- sources:
- items:
- properties:
- configMap:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- downwardAPI:
- properties:
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- secret:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- serviceAccountToken:
- properties:
- audience:
- type: string
- expirationSeconds:
- format: int64
- type: integer
- path:
- type: string
- required:
- - path
- type: object
- type: object
- type: array
- type: object
- quobyte:
- properties:
- group:
- type: string
- readOnly:
- type: boolean
- registry:
- type: string
- tenant:
- type: string
- user:
- type: string
- volume:
- type: string
- required:
- - registry
- - volume
- type: object
- rbd:
- properties:
- fsType:
- type: string
- image:
- type: string
- keyring:
- type: string
- monitors:
- items:
- type: string
- type: array
- pool:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - image
- - monitors
- type: object
- scaleIO:
- properties:
- fsType:
- type: string
- gateway:
- type: string
- protectionDomain:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- sslEnabled:
- type: boolean
- storageMode:
- type: string
- storagePool:
- type: string
- system:
- type: string
- volumeName:
- type: string
- required:
- - gateway
- - secretRef
- - system
- type: object
- secret:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- optional:
- type: boolean
- secretName:
- type: string
- type: object
- storageos:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeName:
- type: string
- volumeNamespace:
- type: string
- type: object
- vsphereVolume:
- properties:
- fsType:
- type: string
- storagePolicyID:
- type: string
- storagePolicyName:
- type: string
- volumePath:
- type: string
- required:
- - volumePath
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- type: object
- storedWorkflowTemplateSpec:
- properties:
- activeDeadlineSeconds:
- format: int64
- type: integer
- affinity:
- properties:
- nodeAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- preference:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- weight:
- format: int32
- type: integer
- required:
- - preference
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- properties:
- nodeSelectorTerms:
- items:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- type: array
- required:
- - nodeSelectorTerms
- type: object
- type: object
- podAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- podAntiAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- type: object
- archiveLogs:
- type: boolean
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- artifactRepositoryRef:
- properties:
- configMap:
- type: string
- key:
- type: string
- type: object
- automountServiceAccountToken:
- type: boolean
- dnsConfig:
- properties:
- nameservers:
- items:
- type: string
- type: array
- options:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- type: object
- type: array
- searches:
- items:
- type: string
- type: array
- type: object
- dnsPolicy:
- type: string
- entrypoint:
- type: string
- executor:
- properties:
- serviceAccountName:
- type: string
- type: object
- hooks:
- additionalProperties:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- expression:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- type: object
- type: object
- hostAliases:
- items:
- properties:
- hostnames:
- items:
- type: string
- type: array
- ip:
- type: string
- type: object
- type: array
- hostNetwork:
- type: boolean
- imagePullSecrets:
- items:
- properties:
- name:
- type: string
- type: object
- type: array
- metrics:
- properties:
- prometheus:
- items:
- properties:
- counter:
- properties:
- value:
- type: string
- required:
- - value
- type: object
- gauge:
- properties:
- realtime:
- type: boolean
- value:
- type: string
- required:
- - realtime
- - value
- type: object
- help:
- type: string
- histogram:
- properties:
- buckets:
- items:
- type: number
- type: array
- value:
- type: string
- required:
- - buckets
- - value
- type: object
- labels:
- items:
- properties:
- key:
- type: string
- value:
- type: string
- required:
- - key
- - value
- type: object
- type: array
- name:
- type: string
- when:
- type: string
- required:
- - help
- - name
- type: object
- type: array
- required:
- - prometheus
- type: object
- nodeSelector:
- additionalProperties:
- type: string
- type: object
- onExit:
- type: string
- parallelism:
- format: int64
- type: integer
- podDisruptionBudget:
- properties:
- maxUnavailable:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- minAvailable:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- type: object
- podGC:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- strategy:
- type: string
- type: object
- podMetadata:
- properties:
- annotations:
- additionalProperties:
- type: string
- type: object
- labels:
- additionalProperties:
- type: string
- type: object
- type: object
- podPriority:
- format: int32
- type: integer
- podPriorityClassName:
- type: string
- podSpecPatch:
- type: string
- priority:
- format: int32
- type: integer
- retryStrategy:
- properties:
- affinity:
- properties:
- nodeAntiAffinity:
- type: object
- type: object
- backoff:
- properties:
- duration:
- type: string
- factor:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- maxDuration:
- type: string
- type: object
- expression:
- type: string
- limit:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- retryPolicy:
- type: string
- type: object
- schedulerName:
- type: string
- securityContext:
- properties:
- fsGroup:
- format: int64
- type: integer
- fsGroupChangePolicy:
- type: string
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- supplementalGroups:
- items:
- format: int64
- type: integer
- type: array
- sysctls:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- serviceAccountName:
- type: string
- shutdown:
- type: string
- suspend:
- type: boolean
- synchronization:
- properties:
- mutex:
- properties:
- name:
- type: string
- type: object
- semaphore:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- type: object
- templateDefaults:
- properties:
- activeDeadlineSeconds:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- affinity:
- properties:
- nodeAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- preference:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- weight:
- format: int32
- type: integer
- required:
- - preference
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- properties:
- nodeSelectorTerms:
- items:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- type: array
- required:
- - nodeSelectorTerms
- type: object
- type: object
- podAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- podAntiAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- type: object
- archiveLocation:
- properties:
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- type: object
- automountServiceAccountToken:
- type: boolean
- container:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- containerSet:
- properties:
- containers:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- dependencies:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- retryStrategy:
- properties:
- duration:
- type: string
- retries:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - retries
- type: object
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- required:
- - containers
- type: object
- daemon:
- type: boolean
- dag:
- properties:
- failFast:
- type: boolean
- target:
- type: string
- tasks:
- items:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- continueOn:
- properties:
- error:
- type: boolean
- failed:
- type: boolean
- type: object
- dependencies:
- items:
- type: string
- type: array
- depends:
- type: string
- hooks:
- additionalProperties:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- expression:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- type: object
- type: object
- inline: {}
- name:
- type: string
- onExit:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- when:
- type: string
- withItems:
- items:
- type: object
- type: array
- withParam:
- type: string
- withSequence:
- properties:
- count:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- end:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- format:
- type: string
- start:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- type: object
- required:
- - name
- type: object
- type: array
- required:
- - tasks
- type: object
- data:
- properties:
- source:
- properties:
- artifactPaths:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: object
- transformation:
- items:
- properties:
- expression:
- type: string
- required:
- - expression
- type: object
- type: array
- required:
- - source
- - transformation
- type: object
- executor:
- properties:
- serviceAccountName:
- type: string
- type: object
- failFast:
- type: boolean
- hostAliases:
- items:
- properties:
- hostnames:
- items:
- type: string
- type: array
- ip:
- type: string
- type: object
- type: array
- http:
- properties:
- body:
- type: string
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- insecureSkipVerify:
- type: boolean
- method:
- type: string
- successCondition:
- type: string
- timeoutSeconds:
- format: int64
- type: integer
- url:
- type: string
- required:
- - url
- type: object
- initContainers:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- mirrorVolumeMounts:
- type: boolean
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- inputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- memoize:
- properties:
- cache:
- properties:
- configMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - configMap
- type: object
- key:
- type: string
- maxAge:
- type: string
- required:
- - cache
- - key
- - maxAge
- type: object
- metadata:
- properties:
- annotations:
- additionalProperties:
- type: string
- type: object
- labels:
- additionalProperties:
- type: string
- type: object
- type: object
- metrics:
- properties:
- prometheus:
- items:
- properties:
- counter:
- properties:
- value:
- type: string
- required:
- - value
- type: object
- gauge:
- properties:
- realtime:
- type: boolean
- value:
- type: string
- required:
- - realtime
- - value
- type: object
- help:
- type: string
- histogram:
- properties:
- buckets:
- items:
- type: number
- type: array
- value:
- type: string
- required:
- - buckets
- - value
- type: object
- labels:
- items:
- properties:
- key:
- type: string
- value:
- type: string
- required:
- - key
- - value
- type: object
- type: array
- name:
- type: string
- when:
- type: string
- required:
- - help
- - name
- type: object
- type: array
- required:
- - prometheus
- type: object
- name:
- type: string
- nodeSelector:
- additionalProperties:
- type: string
- type: object
- outputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- exitCode:
- type: string
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- result:
- type: string
- type: object
- parallelism:
- format: int64
- type: integer
- plugin:
- type: object
- podSpecPatch:
- type: string
- priority:
- format: int32
- type: integer
- priorityClassName:
- type: string
- resource:
- properties:
- action:
- type: string
- failureCondition:
- type: string
- flags:
- items:
- type: string
- type: array
- manifest:
- type: string
- mergeStrategy:
- type: string
- setOwnerReference:
- type: boolean
- successCondition:
- type: string
- required:
- - action
- type: object
- retryStrategy:
- properties:
- affinity:
- properties:
- nodeAntiAffinity:
- type: object
- type: object
- backoff:
- properties:
- duration:
- type: string
- factor:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- maxDuration:
- type: string
- type: object
- expression:
- type: string
- limit:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- retryPolicy:
- type: string
- type: object
- schedulerName:
- type: string
- script:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- source:
- type: string
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- - source
- type: object
- securityContext:
- properties:
- fsGroup:
- format: int64
- type: integer
- fsGroupChangePolicy:
- type: string
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- supplementalGroups:
- items:
- format: int64
- type: integer
- type: array
- sysctls:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- serviceAccountName:
- type: string
- sidecars:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- mirrorVolumeMounts:
- type: boolean
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- steps:
- items:
- type: array
- type: array
- suspend:
- properties:
- duration:
- type: string
- type: object
- synchronization:
- properties:
- mutex:
- properties:
- name:
- type: string
- type: object
- semaphore:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- type: object
- timeout:
- type: string
- tolerations:
- items:
- properties:
- effect:
- type: string
- key:
- type: string
- operator:
- type: string
- tolerationSeconds:
- format: int64
- type: integer
- value:
- type: string
- type: object
- type: array
- volumes:
- items:
- properties:
- awsElasticBlockStore:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- azureDisk:
- properties:
- cachingMode:
- type: string
- diskName:
- type: string
- diskURI:
- type: string
- fsType:
- type: string
- kind:
- type: string
- readOnly:
- type: boolean
- required:
- - diskName
- - diskURI
- type: object
- azureFile:
- properties:
- readOnly:
- type: boolean
- secretName:
- type: string
- shareName:
- type: string
- required:
- - secretName
- - shareName
- type: object
- cephfs:
- properties:
- monitors:
- items:
- type: string
- type: array
- path:
- type: string
- readOnly:
- type: boolean
- secretFile:
- type: string
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - monitors
- type: object
- cinder:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- configMap:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- csi:
- properties:
- driver:
- type: string
- fsType:
- type: string
- nodePublishSecretRef:
- properties:
- name:
- type: string
- type: object
- readOnly:
- type: boolean
- volumeAttributes:
- additionalProperties:
- type: string
- type: object
- required:
- - driver
- type: object
- downwardAPI:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- emptyDir:
- properties:
- medium:
- type: string
- sizeLimit:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- ephemeral:
- properties:
- volumeClaimTemplate:
- properties:
- metadata:
- type: object
- spec:
- properties:
- accessModes:
- items:
- type: string
- type: array
- dataSource:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- dataSourceRef:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- storageClassName:
- type: string
- volumeMode:
- type: string
- volumeName:
- type: string
- type: object
- required:
- - spec
- type: object
- type: object
- fc:
- properties:
- fsType:
- type: string
- lun:
- format: int32
- type: integer
- readOnly:
- type: boolean
- targetWWNs:
- items:
- type: string
- type: array
- wwids:
- items:
- type: string
- type: array
- type: object
- flexVolume:
- properties:
- driver:
- type: string
- fsType:
- type: string
- options:
- additionalProperties:
- type: string
- type: object
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- required:
- - driver
- type: object
- flocker:
- properties:
- datasetName:
- type: string
- datasetUUID:
- type: string
- type: object
- gcePersistentDisk:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- pdName:
- type: string
- readOnly:
- type: boolean
- required:
- - pdName
- type: object
- gitRepo:
- properties:
- directory:
- type: string
- repository:
- type: string
- revision:
- type: string
- required:
- - repository
- type: object
- glusterfs:
- properties:
- endpoints:
- type: string
- path:
- type: string
- readOnly:
- type: boolean
- required:
- - endpoints
- - path
- type: object
- hostPath:
- properties:
- path:
- type: string
- type:
- type: string
- required:
- - path
- type: object
- iscsi:
- properties:
- chapAuthDiscovery:
- type: boolean
- chapAuthSession:
- type: boolean
- fsType:
- type: string
- initiatorName:
- type: string
- iqn:
- type: string
- iscsiInterface:
- type: string
- lun:
- format: int32
- type: integer
- portals:
- items:
- type: string
- type: array
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- targetPortal:
- type: string
- required:
- - iqn
- - lun
- - targetPortal
- type: object
- name:
- type: string
- nfs:
- properties:
- path:
- type: string
- readOnly:
- type: boolean
- server:
- type: string
- required:
- - path
- - server
- type: object
- persistentVolumeClaim:
- properties:
- claimName:
- type: string
- readOnly:
- type: boolean
- required:
- - claimName
- type: object
- photonPersistentDisk:
- properties:
- fsType:
- type: string
- pdID:
- type: string
- required:
- - pdID
- type: object
- portworxVolume:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- projected:
- properties:
- defaultMode:
- format: int32
- type: integer
- sources:
- items:
- properties:
- configMap:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- downwardAPI:
- properties:
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- secret:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- serviceAccountToken:
- properties:
- audience:
- type: string
- expirationSeconds:
- format: int64
- type: integer
- path:
- type: string
- required:
- - path
- type: object
- type: object
- type: array
- type: object
- quobyte:
- properties:
- group:
- type: string
- readOnly:
- type: boolean
- registry:
- type: string
- tenant:
- type: string
- user:
- type: string
- volume:
- type: string
- required:
- - registry
- - volume
- type: object
- rbd:
- properties:
- fsType:
- type: string
- image:
- type: string
- keyring:
- type: string
- monitors:
- items:
- type: string
- type: array
- pool:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - image
- - monitors
- type: object
- scaleIO:
- properties:
- fsType:
- type: string
- gateway:
- type: string
- protectionDomain:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- sslEnabled:
- type: boolean
- storageMode:
- type: string
- storagePool:
- type: string
- system:
- type: string
- volumeName:
- type: string
- required:
- - gateway
- - secretRef
- - system
- type: object
- secret:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- optional:
- type: boolean
- secretName:
- type: string
- type: object
- storageos:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeName:
- type: string
- volumeNamespace:
- type: string
- type: object
- vsphereVolume:
- properties:
- fsType:
- type: string
- storagePolicyID:
- type: string
- storagePolicyName:
- type: string
- volumePath:
- type: string
- required:
- - volumePath
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- templates:
- items:
- properties:
- activeDeadlineSeconds:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- affinity:
- properties:
- nodeAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- preference:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- weight:
- format: int32
- type: integer
- required:
- - preference
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- properties:
- nodeSelectorTerms:
- items:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- type: array
- required:
- - nodeSelectorTerms
- type: object
- type: object
- podAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- podAntiAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- type: object
- archiveLocation:
- properties:
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- type: object
- automountServiceAccountToken:
- type: boolean
- container:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- containerSet:
- properties:
- containers:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- dependencies:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- retryStrategy:
- properties:
- duration:
- type: string
- retries:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - retries
- type: object
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- required:
- - containers
- type: object
- daemon:
- type: boolean
- dag:
- properties:
- failFast:
- type: boolean
- target:
- type: string
- tasks:
- items:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- continueOn:
- properties:
- error:
- type: boolean
- failed:
- type: boolean
- type: object
- dependencies:
- items:
- type: string
- type: array
- depends:
- type: string
- hooks:
- additionalProperties:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- expression:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- type: object
- type: object
- inline: {}
- name:
- type: string
- onExit:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- when:
- type: string
- withItems:
- items:
- type: object
- type: array
- withParam:
- type: string
- withSequence:
- properties:
- count:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- end:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- format:
- type: string
- start:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- type: object
- required:
- - name
- type: object
- type: array
- required:
- - tasks
- type: object
- data:
- properties:
- source:
- properties:
- artifactPaths:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: object
- transformation:
- items:
- properties:
- expression:
- type: string
- required:
- - expression
- type: object
- type: array
- required:
- - source
- - transformation
- type: object
- executor:
- properties:
- serviceAccountName:
- type: string
- type: object
- failFast:
- type: boolean
- hostAliases:
- items:
- properties:
- hostnames:
- items:
- type: string
- type: array
- ip:
- type: string
- type: object
- type: array
- http:
- properties:
- body:
- type: string
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- insecureSkipVerify:
- type: boolean
- method:
- type: string
- successCondition:
- type: string
- timeoutSeconds:
- format: int64
- type: integer
- url:
- type: string
- required:
- - url
- type: object
- initContainers:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- mirrorVolumeMounts:
- type: boolean
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- inputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- memoize:
- properties:
- cache:
- properties:
- configMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - configMap
- type: object
- key:
- type: string
- maxAge:
- type: string
- required:
- - cache
- - key
- - maxAge
- type: object
- metadata:
- properties:
- annotations:
- additionalProperties:
- type: string
- type: object
- labels:
- additionalProperties:
- type: string
- type: object
- type: object
- metrics:
- properties:
- prometheus:
- items:
- properties:
- counter:
- properties:
- value:
- type: string
- required:
- - value
- type: object
- gauge:
- properties:
- realtime:
- type: boolean
- value:
- type: string
- required:
- - realtime
- - value
- type: object
- help:
- type: string
- histogram:
- properties:
- buckets:
- items:
- type: number
- type: array
- value:
- type: string
- required:
- - buckets
- - value
- type: object
- labels:
- items:
- properties:
- key:
- type: string
- value:
- type: string
- required:
- - key
- - value
- type: object
- type: array
- name:
- type: string
- when:
- type: string
- required:
- - help
- - name
- type: object
- type: array
- required:
- - prometheus
- type: object
- name:
- type: string
- nodeSelector:
- additionalProperties:
- type: string
- type: object
- outputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- exitCode:
- type: string
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- result:
- type: string
- type: object
- parallelism:
- format: int64
- type: integer
- plugin:
- type: object
- podSpecPatch:
- type: string
- priority:
- format: int32
- type: integer
- priorityClassName:
- type: string
- resource:
- properties:
- action:
- type: string
- failureCondition:
- type: string
- flags:
- items:
- type: string
- type: array
- manifest:
- type: string
- mergeStrategy:
- type: string
- setOwnerReference:
- type: boolean
- successCondition:
- type: string
- required:
- - action
- type: object
- retryStrategy:
- properties:
- affinity:
- properties:
- nodeAntiAffinity:
- type: object
- type: object
- backoff:
- properties:
- duration:
- type: string
- factor:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- maxDuration:
- type: string
- type: object
- expression:
- type: string
- limit:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- retryPolicy:
- type: string
- type: object
- schedulerName:
- type: string
- script:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- source:
- type: string
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- - source
- type: object
- securityContext:
- properties:
- fsGroup:
- format: int64
- type: integer
- fsGroupChangePolicy:
- type: string
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- supplementalGroups:
- items:
- format: int64
- type: integer
- type: array
- sysctls:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- serviceAccountName:
- type: string
- sidecars:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- mirrorVolumeMounts:
- type: boolean
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- steps:
- items:
- type: array
- type: array
- suspend:
- properties:
- duration:
- type: string
- type: object
- synchronization:
- properties:
- mutex:
- properties:
- name:
- type: string
- type: object
- semaphore:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- type: object
- timeout:
- type: string
- tolerations:
- items:
- properties:
- effect:
- type: string
- key:
- type: string
- operator:
- type: string
- tolerationSeconds:
- format: int64
- type: integer
- value:
- type: string
- type: object
- type: array
- volumes:
- items:
- properties:
- awsElasticBlockStore:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- azureDisk:
- properties:
- cachingMode:
- type: string
- diskName:
- type: string
- diskURI:
- type: string
- fsType:
- type: string
- kind:
- type: string
- readOnly:
- type: boolean
- required:
- - diskName
- - diskURI
- type: object
- azureFile:
- properties:
- readOnly:
- type: boolean
- secretName:
- type: string
- shareName:
- type: string
- required:
- - secretName
- - shareName
- type: object
- cephfs:
- properties:
- monitors:
- items:
- type: string
- type: array
- path:
- type: string
- readOnly:
- type: boolean
- secretFile:
- type: string
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - monitors
- type: object
- cinder:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- configMap:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- csi:
- properties:
- driver:
- type: string
- fsType:
- type: string
- nodePublishSecretRef:
- properties:
- name:
- type: string
- type: object
- readOnly:
- type: boolean
- volumeAttributes:
- additionalProperties:
- type: string
- type: object
- required:
- - driver
- type: object
- downwardAPI:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- emptyDir:
- properties:
- medium:
- type: string
- sizeLimit:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- ephemeral:
- properties:
- volumeClaimTemplate:
- properties:
- metadata:
- type: object
- spec:
- properties:
- accessModes:
- items:
- type: string
- type: array
- dataSource:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- dataSourceRef:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- storageClassName:
- type: string
- volumeMode:
- type: string
- volumeName:
- type: string
- type: object
- required:
- - spec
- type: object
- type: object
- fc:
- properties:
- fsType:
- type: string
- lun:
- format: int32
- type: integer
- readOnly:
- type: boolean
- targetWWNs:
- items:
- type: string
- type: array
- wwids:
- items:
- type: string
- type: array
- type: object
- flexVolume:
- properties:
- driver:
- type: string
- fsType:
- type: string
- options:
- additionalProperties:
- type: string
- type: object
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- required:
- - driver
- type: object
- flocker:
- properties:
- datasetName:
- type: string
- datasetUUID:
- type: string
- type: object
- gcePersistentDisk:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- pdName:
- type: string
- readOnly:
- type: boolean
- required:
- - pdName
- type: object
- gitRepo:
- properties:
- directory:
- type: string
- repository:
- type: string
- revision:
- type: string
- required:
- - repository
- type: object
- glusterfs:
- properties:
- endpoints:
- type: string
- path:
- type: string
- readOnly:
- type: boolean
- required:
- - endpoints
- - path
- type: object
- hostPath:
- properties:
- path:
- type: string
- type:
- type: string
- required:
- - path
- type: object
- iscsi:
- properties:
- chapAuthDiscovery:
- type: boolean
- chapAuthSession:
- type: boolean
- fsType:
- type: string
- initiatorName:
- type: string
- iqn:
- type: string
- iscsiInterface:
- type: string
- lun:
- format: int32
- type: integer
- portals:
- items:
- type: string
- type: array
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- targetPortal:
- type: string
- required:
- - iqn
- - lun
- - targetPortal
- type: object
- name:
- type: string
- nfs:
- properties:
- path:
- type: string
- readOnly:
- type: boolean
- server:
- type: string
- required:
- - path
- - server
- type: object
- persistentVolumeClaim:
- properties:
- claimName:
- type: string
- readOnly:
- type: boolean
- required:
- - claimName
- type: object
- photonPersistentDisk:
- properties:
- fsType:
- type: string
- pdID:
- type: string
- required:
- - pdID
- type: object
- portworxVolume:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- projected:
- properties:
- defaultMode:
- format: int32
- type: integer
- sources:
- items:
- properties:
- configMap:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- downwardAPI:
- properties:
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- secret:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- serviceAccountToken:
- properties:
- audience:
- type: string
- expirationSeconds:
- format: int64
- type: integer
- path:
- type: string
- required:
- - path
- type: object
- type: object
- type: array
- type: object
- quobyte:
- properties:
- group:
- type: string
- readOnly:
- type: boolean
- registry:
- type: string
- tenant:
- type: string
- user:
- type: string
- volume:
- type: string
- required:
- - registry
- - volume
- type: object
- rbd:
- properties:
- fsType:
- type: string
- image:
- type: string
- keyring:
- type: string
- monitors:
- items:
- type: string
- type: array
- pool:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - image
- - monitors
- type: object
- scaleIO:
- properties:
- fsType:
- type: string
- gateway:
- type: string
- protectionDomain:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- sslEnabled:
- type: boolean
- storageMode:
- type: string
- storagePool:
- type: string
- system:
- type: string
- volumeName:
- type: string
- required:
- - gateway
- - secretRef
- - system
- type: object
- secret:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- optional:
- type: boolean
- secretName:
- type: string
- type: object
- storageos:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeName:
- type: string
- volumeNamespace:
- type: string
- type: object
- vsphereVolume:
- properties:
- fsType:
- type: string
- storagePolicyID:
- type: string
- storagePolicyName:
- type: string
- volumePath:
- type: string
- required:
- - volumePath
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- type: array
- tolerations:
- items:
- properties:
- effect:
- type: string
- key:
- type: string
- operator:
- type: string
- tolerationSeconds:
- format: int64
- type: integer
- value:
- type: string
- type: object
- type: array
- ttlStrategy:
- properties:
- secondsAfterCompletion:
- format: int32
- type: integer
- secondsAfterFailure:
- format: int32
- type: integer
- secondsAfterSuccess:
- format: int32
- type: integer
- type: object
- volumeClaimGC:
- properties:
- strategy:
- type: string
- type: object
- volumeClaimTemplates:
- items:
- properties:
- apiVersion:
- type: string
- kind:
- type: string
- metadata:
- type: object
- spec:
- properties:
- accessModes:
- items:
- type: string
- type: array
- dataSource:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- dataSourceRef:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- storageClassName:
- type: string
- volumeMode:
- type: string
- volumeName:
- type: string
- type: object
- status:
- properties:
- accessModes:
- items:
- type: string
- type: array
- allocatedResources:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- capacity:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- conditions:
- items:
- properties:
- lastProbeTime:
- format: date-time
- type: string
- lastTransitionTime:
- format: date-time
- type: string
- message:
- type: string
- reason:
- type: string
- status:
- type: string
- type:
- type: string
- required:
- - status
- - type
- type: object
- type: array
- phase:
- type: string
- resizeStatus:
- type: string
- type: object
- type: object
- type: array
- volumes:
- items:
- properties:
- awsElasticBlockStore:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- azureDisk:
- properties:
- cachingMode:
- type: string
- diskName:
- type: string
- diskURI:
- type: string
- fsType:
- type: string
- kind:
- type: string
- readOnly:
- type: boolean
- required:
- - diskName
- - diskURI
- type: object
- azureFile:
- properties:
- readOnly:
- type: boolean
- secretName:
- type: string
- shareName:
- type: string
- required:
- - secretName
- - shareName
- type: object
- cephfs:
- properties:
- monitors:
- items:
- type: string
- type: array
- path:
- type: string
- readOnly:
- type: boolean
- secretFile:
- type: string
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - monitors
- type: object
- cinder:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- configMap:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- csi:
- properties:
- driver:
- type: string
- fsType:
- type: string
- nodePublishSecretRef:
- properties:
- name:
- type: string
- type: object
- readOnly:
- type: boolean
- volumeAttributes:
- additionalProperties:
- type: string
- type: object
- required:
- - driver
- type: object
- downwardAPI:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- emptyDir:
- properties:
- medium:
- type: string
- sizeLimit:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- ephemeral:
- properties:
- volumeClaimTemplate:
- properties:
- metadata:
- type: object
- spec:
- properties:
- accessModes:
- items:
- type: string
- type: array
- dataSource:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- dataSourceRef:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- storageClassName:
- type: string
- volumeMode:
- type: string
- volumeName:
- type: string
- type: object
- required:
- - spec
- type: object
- type: object
- fc:
- properties:
- fsType:
- type: string
- lun:
- format: int32
- type: integer
- readOnly:
- type: boolean
- targetWWNs:
- items:
- type: string
- type: array
- wwids:
- items:
- type: string
- type: array
- type: object
- flexVolume:
- properties:
- driver:
- type: string
- fsType:
- type: string
- options:
- additionalProperties:
- type: string
- type: object
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- required:
- - driver
- type: object
- flocker:
- properties:
- datasetName:
- type: string
- datasetUUID:
- type: string
- type: object
- gcePersistentDisk:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- pdName:
- type: string
- readOnly:
- type: boolean
- required:
- - pdName
- type: object
- gitRepo:
- properties:
- directory:
- type: string
- repository:
- type: string
- revision:
- type: string
- required:
- - repository
- type: object
- glusterfs:
- properties:
- endpoints:
- type: string
- path:
- type: string
- readOnly:
- type: boolean
- required:
- - endpoints
- - path
- type: object
- hostPath:
- properties:
- path:
- type: string
- type:
- type: string
- required:
- - path
- type: object
- iscsi:
- properties:
- chapAuthDiscovery:
- type: boolean
- chapAuthSession:
- type: boolean
- fsType:
- type: string
- initiatorName:
- type: string
- iqn:
- type: string
- iscsiInterface:
- type: string
- lun:
- format: int32
- type: integer
- portals:
- items:
- type: string
- type: array
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- targetPortal:
- type: string
- required:
- - iqn
- - lun
- - targetPortal
- type: object
- name:
- type: string
- nfs:
- properties:
- path:
- type: string
- readOnly:
- type: boolean
- server:
- type: string
- required:
- - path
- - server
- type: object
- persistentVolumeClaim:
- properties:
- claimName:
- type: string
- readOnly:
- type: boolean
- required:
- - claimName
- type: object
- photonPersistentDisk:
- properties:
- fsType:
- type: string
- pdID:
- type: string
- required:
- - pdID
- type: object
- portworxVolume:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- projected:
- properties:
- defaultMode:
- format: int32
- type: integer
- sources:
- items:
- properties:
- configMap:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- downwardAPI:
- properties:
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- secret:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- serviceAccountToken:
- properties:
- audience:
- type: string
- expirationSeconds:
- format: int64
- type: integer
- path:
- type: string
- required:
- - path
- type: object
- type: object
- type: array
- type: object
- quobyte:
- properties:
- group:
- type: string
- readOnly:
- type: boolean
- registry:
- type: string
- tenant:
- type: string
- user:
- type: string
- volume:
- type: string
- required:
- - registry
- - volume
- type: object
- rbd:
- properties:
- fsType:
- type: string
- image:
- type: string
- keyring:
- type: string
- monitors:
- items:
- type: string
- type: array
- pool:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - image
- - monitors
- type: object
- scaleIO:
- properties:
- fsType:
- type: string
- gateway:
- type: string
- protectionDomain:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- sslEnabled:
- type: boolean
- storageMode:
- type: string
- storagePool:
- type: string
- system:
- type: string
- volumeName:
- type: string
- required:
- - gateway
- - secretRef
- - system
- type: object
- secret:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- optional:
- type: boolean
- secretName:
- type: string
- type: object
- storageos:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeName:
- type: string
- volumeNamespace:
- type: string
- type: object
- vsphereVolume:
- properties:
- fsType:
- type: string
- storagePolicyID:
- type: string
- storagePolicyName:
- type: string
- volumePath:
- type: string
- required:
- - volumePath
- type: object
- required:
- - name
- type: object
- type: array
- workflowMetadata:
- properties:
- annotations:
- additionalProperties:
- type: string
- type: object
- labels:
- additionalProperties:
- type: string
- type: object
- labelsFrom:
- additionalProperties:
- properties:
- expression:
- type: string
- required:
- - expression
- type: object
- type: object
- type: object
- workflowTemplateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- type: object
- type: object
- synchronization:
- properties:
- mutex:
- properties:
- holding:
- items:
- properties:
- holder:
- type: string
- mutex:
- type: string
- type: object
- type: array
- x-kubernetes-list-type: atomic
- waiting:
- items:
- properties:
- holder:
- type: string
- mutex:
- type: string
- type: object
- type: array
- x-kubernetes-list-type: atomic
- type: object
- semaphore:
- properties:
- holding:
- items:
- properties:
- holders:
- items:
- type: string
- type: array
- x-kubernetes-list-type: atomic
- semaphore:
- type: string
- type: object
- type: array
- waiting:
- items:
- properties:
- holders:
- items:
- type: string
- type: array
- x-kubernetes-list-type: atomic
- semaphore:
- type: string
- type: object
- type: array
- type: object
- type: object
- type: object
- required:
- - metadata
- - spec
- type: object
- served: true
- storage: true
- subresources: {}
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workflowtaskresults.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workflowtaskresults.yaml
deleted file mode 100644
index dd6d3cf..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workflowtaskresults.yaml
+++ /dev/null
@@ -1,428 +0,0 @@
-# This is an auto-generated file. DO NOT EDIT
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata: # kpt-merge: /workflowtaskresults.argoproj.io
- name: workflowtaskresults.argoproj.io
- annotations:
- internal.kpt.dev/upstream-identifier: 'apiextensions.k8s.io|CustomResourceDefinition|default|workflowtaskresults.argoproj.io'
-spec:
- group: argoproj.io
- names:
- kind: WorkflowTaskResult
- listKind: WorkflowTaskResultList
- plural: workflowtaskresults
- singular: workflowtaskresult
- scope: Namespaced
- versions:
- - name: v1alpha1
- schema:
- openAPIV3Schema:
- properties:
- apiVersion:
- type: string
- kind:
- type: string
- message:
- type: string
- metadata:
- type: object
- outputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- exitCode:
- type: string
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- result:
- type: string
- type: object
- phase:
- type: string
- progress:
- type: string
- required:
- - metadata
- type: object
- served: true
- storage: true
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workflowtasksets.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workflowtasksets.yaml
deleted file mode 100644
index b8ff16c..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workflowtasksets.yaml
+++ /dev/null
@@ -1,7104 +0,0 @@
-# This is an auto-generated file. DO NOT EDIT
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata: # kpt-merge: /workflowtasksets.argoproj.io
- name: workflowtasksets.argoproj.io
- annotations:
- internal.kpt.dev/upstream-identifier: 'apiextensions.k8s.io|CustomResourceDefinition|default|workflowtasksets.argoproj.io'
-spec:
- group: argoproj.io
- names:
- kind: WorkflowTaskSet
- listKind: WorkflowTaskSetList
- plural: workflowtasksets
- shortNames:
- - wfts
- singular: workflowtaskset
- scope: Namespaced
- versions:
- - name: v1alpha1
- schema:
- openAPIV3Schema:
- properties:
- apiVersion:
- type: string
- kind:
- type: string
- metadata:
- type: object
- spec:
- properties:
- tasks:
- additionalProperties:
- properties:
- activeDeadlineSeconds:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- affinity:
- properties:
- nodeAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- preference:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- weight:
- format: int32
- type: integer
- required:
- - preference
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- properties:
- nodeSelectorTerms:
- items:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- type: array
- required:
- - nodeSelectorTerms
- type: object
- type: object
- podAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- podAntiAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- type: object
- archiveLocation:
- properties:
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- type: object
- automountServiceAccountToken:
- type: boolean
- container:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- containerSet:
- properties:
- containers:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- dependencies:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- retryStrategy:
- properties:
- duration:
- type: string
- retries:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - retries
- type: object
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- required:
- - containers
- type: object
- daemon:
- type: boolean
- dag:
- properties:
- failFast:
- type: boolean
- target:
- type: string
- tasks:
- items:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- continueOn:
- properties:
- error:
- type: boolean
- failed:
- type: boolean
- type: object
- dependencies:
- items:
- type: string
- type: array
- depends:
- type: string
- hooks:
- additionalProperties:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- expression:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- type: object
- type: object
- inline: {}
- name:
- type: string
- onExit:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- when:
- type: string
- withItems:
- items:
- type: object
- type: array
- withParam:
- type: string
- withSequence:
- properties:
- count:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- end:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- format:
- type: string
- start:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- type: object
- required:
- - name
- type: object
- type: array
- required:
- - tasks
- type: object
- data:
- properties:
- source:
- properties:
- artifactPaths:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: object
- transformation:
- items:
- properties:
- expression:
- type: string
- required:
- - expression
- type: object
- type: array
- required:
- - source
- - transformation
- type: object
- executor:
- properties:
- serviceAccountName:
- type: string
- type: object
- failFast:
- type: boolean
- hostAliases:
- items:
- properties:
- hostnames:
- items:
- type: string
- type: array
- ip:
- type: string
- type: object
- type: array
- http:
- properties:
- body:
- type: string
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- insecureSkipVerify:
- type: boolean
- method:
- type: string
- successCondition:
- type: string
- timeoutSeconds:
- format: int64
- type: integer
- url:
- type: string
- required:
- - url
- type: object
- initContainers:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- mirrorVolumeMounts:
- type: boolean
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- inputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- memoize:
- properties:
- cache:
- properties:
- configMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - configMap
- type: object
- key:
- type: string
- maxAge:
- type: string
- required:
- - cache
- - key
- - maxAge
- type: object
- metadata:
- properties:
- annotations:
- additionalProperties:
- type: string
- type: object
- labels:
- additionalProperties:
- type: string
- type: object
- type: object
- metrics:
- properties:
- prometheus:
- items:
- properties:
- counter:
- properties:
- value:
- type: string
- required:
- - value
- type: object
- gauge:
- properties:
- realtime:
- type: boolean
- value:
- type: string
- required:
- - realtime
- - value
- type: object
- help:
- type: string
- histogram:
- properties:
- buckets:
- items:
- type: number
- type: array
- value:
- type: string
- required:
- - buckets
- - value
- type: object
- labels:
- items:
- properties:
- key:
- type: string
- value:
- type: string
- required:
- - key
- - value
- type: object
- type: array
- name:
- type: string
- when:
- type: string
- required:
- - help
- - name
- type: object
- type: array
- required:
- - prometheus
- type: object
- name:
- type: string
- nodeSelector:
- additionalProperties:
- type: string
- type: object
- outputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- exitCode:
- type: string
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- result:
- type: string
- type: object
- parallelism:
- format: int64
- type: integer
- plugin:
- type: object
- podSpecPatch:
- type: string
- priority:
- format: int32
- type: integer
- priorityClassName:
- type: string
- resource:
- properties:
- action:
- type: string
- failureCondition:
- type: string
- flags:
- items:
- type: string
- type: array
- manifest:
- type: string
- mergeStrategy:
- type: string
- setOwnerReference:
- type: boolean
- successCondition:
- type: string
- required:
- - action
- type: object
- retryStrategy:
- properties:
- affinity:
- properties:
- nodeAntiAffinity:
- type: object
- type: object
- backoff:
- properties:
- duration:
- type: string
- factor:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- maxDuration:
- type: string
- type: object
- expression:
- type: string
- limit:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- retryPolicy:
- type: string
- type: object
- schedulerName:
- type: string
- script:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- source:
- type: string
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- - source
- type: object
- securityContext:
- properties:
- fsGroup:
- format: int64
- type: integer
- fsGroupChangePolicy:
- type: string
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- supplementalGroups:
- items:
- format: int64
- type: integer
- type: array
- sysctls:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- serviceAccountName:
- type: string
- sidecars:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- mirrorVolumeMounts:
- type: boolean
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- steps:
- items:
- type: array
- type: array
- suspend:
- properties:
- duration:
- type: string
- type: object
- synchronization:
- properties:
- mutex:
- properties:
- name:
- type: string
- type: object
- semaphore:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- type: object
- timeout:
- type: string
- tolerations:
- items:
- properties:
- effect:
- type: string
- key:
- type: string
- operator:
- type: string
- tolerationSeconds:
- format: int64
- type: integer
- value:
- type: string
- type: object
- type: array
- volumes:
- items:
- properties:
- awsElasticBlockStore:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- azureDisk:
- properties:
- cachingMode:
- type: string
- diskName:
- type: string
- diskURI:
- type: string
- fsType:
- type: string
- kind:
- type: string
- readOnly:
- type: boolean
- required:
- - diskName
- - diskURI
- type: object
- azureFile:
- properties:
- readOnly:
- type: boolean
- secretName:
- type: string
- shareName:
- type: string
- required:
- - secretName
- - shareName
- type: object
- cephfs:
- properties:
- monitors:
- items:
- type: string
- type: array
- path:
- type: string
- readOnly:
- type: boolean
- secretFile:
- type: string
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - monitors
- type: object
- cinder:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- configMap:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- csi:
- properties:
- driver:
- type: string
- fsType:
- type: string
- nodePublishSecretRef:
- properties:
- name:
- type: string
- type: object
- readOnly:
- type: boolean
- volumeAttributes:
- additionalProperties:
- type: string
- type: object
- required:
- - driver
- type: object
- downwardAPI:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- emptyDir:
- properties:
- medium:
- type: string
- sizeLimit:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- ephemeral:
- properties:
- volumeClaimTemplate:
- properties:
- metadata:
- type: object
- spec:
- properties:
- accessModes:
- items:
- type: string
- type: array
- dataSource:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- dataSourceRef:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- storageClassName:
- type: string
- volumeMode:
- type: string
- volumeName:
- type: string
- type: object
- required:
- - spec
- type: object
- type: object
- fc:
- properties:
- fsType:
- type: string
- lun:
- format: int32
- type: integer
- readOnly:
- type: boolean
- targetWWNs:
- items:
- type: string
- type: array
- wwids:
- items:
- type: string
- type: array
- type: object
- flexVolume:
- properties:
- driver:
- type: string
- fsType:
- type: string
- options:
- additionalProperties:
- type: string
- type: object
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- required:
- - driver
- type: object
- flocker:
- properties:
- datasetName:
- type: string
- datasetUUID:
- type: string
- type: object
- gcePersistentDisk:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- pdName:
- type: string
- readOnly:
- type: boolean
- required:
- - pdName
- type: object
- gitRepo:
- properties:
- directory:
- type: string
- repository:
- type: string
- revision:
- type: string
- required:
- - repository
- type: object
- glusterfs:
- properties:
- endpoints:
- type: string
- path:
- type: string
- readOnly:
- type: boolean
- required:
- - endpoints
- - path
- type: object
- hostPath:
- properties:
- path:
- type: string
- type:
- type: string
- required:
- - path
- type: object
- iscsi:
- properties:
- chapAuthDiscovery:
- type: boolean
- chapAuthSession:
- type: boolean
- fsType:
- type: string
- initiatorName:
- type: string
- iqn:
- type: string
- iscsiInterface:
- type: string
- lun:
- format: int32
- type: integer
- portals:
- items:
- type: string
- type: array
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- targetPortal:
- type: string
- required:
- - iqn
- - lun
- - targetPortal
- type: object
- name:
- type: string
- nfs:
- properties:
- path:
- type: string
- readOnly:
- type: boolean
- server:
- type: string
- required:
- - path
- - server
- type: object
- persistentVolumeClaim:
- properties:
- claimName:
- type: string
- readOnly:
- type: boolean
- required:
- - claimName
- type: object
- photonPersistentDisk:
- properties:
- fsType:
- type: string
- pdID:
- type: string
- required:
- - pdID
- type: object
- portworxVolume:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- projected:
- properties:
- defaultMode:
- format: int32
- type: integer
- sources:
- items:
- properties:
- configMap:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- downwardAPI:
- properties:
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- secret:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- serviceAccountToken:
- properties:
- audience:
- type: string
- expirationSeconds:
- format: int64
- type: integer
- path:
- type: string
- required:
- - path
- type: object
- type: object
- type: array
- type: object
- quobyte:
- properties:
- group:
- type: string
- readOnly:
- type: boolean
- registry:
- type: string
- tenant:
- type: string
- user:
- type: string
- volume:
- type: string
- required:
- - registry
- - volume
- type: object
- rbd:
- properties:
- fsType:
- type: string
- image:
- type: string
- keyring:
- type: string
- monitors:
- items:
- type: string
- type: array
- pool:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - image
- - monitors
- type: object
- scaleIO:
- properties:
- fsType:
- type: string
- gateway:
- type: string
- protectionDomain:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- sslEnabled:
- type: boolean
- storageMode:
- type: string
- storagePool:
- type: string
- system:
- type: string
- volumeName:
- type: string
- required:
- - gateway
- - secretRef
- - system
- type: object
- secret:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- optional:
- type: boolean
- secretName:
- type: string
- type: object
- storageos:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeName:
- type: string
- volumeNamespace:
- type: string
- type: object
- vsphereVolume:
- properties:
- fsType:
- type: string
- storagePolicyID:
- type: string
- storagePolicyName:
- type: string
- volumePath:
- type: string
- required:
- - volumePath
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- type: object
- type: object
- status:
- properties:
- nodes:
- additionalProperties:
- properties:
- message:
- type: string
- outputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- exitCode:
- type: string
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- result:
- type: string
- type: object
- phase:
- type: string
- progress:
- type: string
- type: object
- type: object
- type: object
- required:
- - metadata
- - spec
- type: object
- served: true
- storage: true
- subresources:
- status: {}
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workflowtemplates.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workflowtemplates.yaml
deleted file mode 100644
index 7a4bcec..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workflowtemplates.yaml
+++ /dev/null
@@ -1,15720 +0,0 @@
-# This is an auto-generated file. DO NOT EDIT
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata: # kpt-merge: /workflowtemplates.argoproj.io
- name: workflowtemplates.argoproj.io
- annotations:
- internal.kpt.dev/upstream-identifier: 'apiextensions.k8s.io|CustomResourceDefinition|default|workflowtemplates.argoproj.io'
-spec:
- group: argoproj.io
- names:
- kind: WorkflowTemplate
- listKind: WorkflowTemplateList
- plural: workflowtemplates
- shortNames:
- - wftmpl
- singular: workflowtemplate
- scope: Namespaced
- versions:
- - name: v1alpha1
- schema:
- openAPIV3Schema:
- properties:
- apiVersion:
- type: string
- kind:
- type: string
- metadata:
- type: object
- spec:
- properties:
- activeDeadlineSeconds:
- format: int64
- type: integer
- affinity:
- properties:
- nodeAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- preference:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- weight:
- format: int32
- type: integer
- required:
- - preference
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- properties:
- nodeSelectorTerms:
- items:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- type: array
- required:
- - nodeSelectorTerms
- type: object
- type: object
- podAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- podAntiAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- type: object
- archiveLogs:
- type: boolean
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- artifactRepositoryRef:
- properties:
- configMap:
- type: string
- key:
- type: string
- type: object
- automountServiceAccountToken:
- type: boolean
- dnsConfig:
- properties:
- nameservers:
- items:
- type: string
- type: array
- options:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- type: object
- type: array
- searches:
- items:
- type: string
- type: array
- type: object
- dnsPolicy:
- type: string
- entrypoint:
- type: string
- executor:
- properties:
- serviceAccountName:
- type: string
- type: object
- hooks:
- additionalProperties:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- expression:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- type: object
- type: object
- hostAliases:
- items:
- properties:
- hostnames:
- items:
- type: string
- type: array
- ip:
- type: string
- type: object
- type: array
- hostNetwork:
- type: boolean
- imagePullSecrets:
- items:
- properties:
- name:
- type: string
- type: object
- type: array
- metrics:
- properties:
- prometheus:
- items:
- properties:
- counter:
- properties:
- value:
- type: string
- required:
- - value
- type: object
- gauge:
- properties:
- realtime:
- type: boolean
- value:
- type: string
- required:
- - realtime
- - value
- type: object
- help:
- type: string
- histogram:
- properties:
- buckets:
- items:
- type: number
- type: array
- value:
- type: string
- required:
- - buckets
- - value
- type: object
- labels:
- items:
- properties:
- key:
- type: string
- value:
- type: string
- required:
- - key
- - value
- type: object
- type: array
- name:
- type: string
- when:
- type: string
- required:
- - help
- - name
- type: object
- type: array
- required:
- - prometheus
- type: object
- nodeSelector:
- additionalProperties:
- type: string
- type: object
- onExit:
- type: string
- parallelism:
- format: int64
- type: integer
- podDisruptionBudget:
- properties:
- maxUnavailable:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- minAvailable:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- type: object
- podGC:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- strategy:
- type: string
- type: object
- podMetadata:
- properties:
- annotations:
- additionalProperties:
- type: string
- type: object
- labels:
- additionalProperties:
- type: string
- type: object
- type: object
- podPriority:
- format: int32
- type: integer
- podPriorityClassName:
- type: string
- podSpecPatch:
- type: string
- priority:
- format: int32
- type: integer
- retryStrategy:
- properties:
- affinity:
- properties:
- nodeAntiAffinity:
- type: object
- type: object
- backoff:
- properties:
- duration:
- type: string
- factor:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- maxDuration:
- type: string
- type: object
- expression:
- type: string
- limit:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- retryPolicy:
- type: string
- type: object
- schedulerName:
- type: string
- securityContext:
- properties:
- fsGroup:
- format: int64
- type: integer
- fsGroupChangePolicy:
- type: string
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- supplementalGroups:
- items:
- format: int64
- type: integer
- type: array
- sysctls:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- serviceAccountName:
- type: string
- shutdown:
- type: string
- suspend:
- type: boolean
- synchronization:
- properties:
- mutex:
- properties:
- name:
- type: string
- type: object
- semaphore:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- type: object
- templateDefaults:
- properties:
- activeDeadlineSeconds:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- affinity:
- properties:
- nodeAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- preference:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- weight:
- format: int32
- type: integer
- required:
- - preference
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- properties:
- nodeSelectorTerms:
- items:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- type: array
- required:
- - nodeSelectorTerms
- type: object
- type: object
- podAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- podAntiAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- type: object
- archiveLocation:
- properties:
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- type: object
- automountServiceAccountToken:
- type: boolean
- container:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- containerSet:
- properties:
- containers:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- dependencies:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- retryStrategy:
- properties:
- duration:
- type: string
- retries:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - retries
- type: object
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- required:
- - containers
- type: object
- daemon:
- type: boolean
- dag:
- properties:
- failFast:
- type: boolean
- target:
- type: string
- tasks:
- items:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- continueOn:
- properties:
- error:
- type: boolean
- failed:
- type: boolean
- type: object
- dependencies:
- items:
- type: string
- type: array
- depends:
- type: string
- hooks:
- additionalProperties:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- expression:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- type: object
- type: object
- inline: {}
- name:
- type: string
- onExit:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- when:
- type: string
- withItems:
- items:
- type: object
- type: array
- withParam:
- type: string
- withSequence:
- properties:
- count:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- end:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- format:
- type: string
- start:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- type: object
- required:
- - name
- type: object
- type: array
- required:
- - tasks
- type: object
- data:
- properties:
- source:
- properties:
- artifactPaths:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: object
- transformation:
- items:
- properties:
- expression:
- type: string
- required:
- - expression
- type: object
- type: array
- required:
- - source
- - transformation
- type: object
- executor:
- properties:
- serviceAccountName:
- type: string
- type: object
- failFast:
- type: boolean
- hostAliases:
- items:
- properties:
- hostnames:
- items:
- type: string
- type: array
- ip:
- type: string
- type: object
- type: array
- http:
- properties:
- body:
- type: string
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- insecureSkipVerify:
- type: boolean
- method:
- type: string
- successCondition:
- type: string
- timeoutSeconds:
- format: int64
- type: integer
- url:
- type: string
- required:
- - url
- type: object
- initContainers:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- mirrorVolumeMounts:
- type: boolean
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- inputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- memoize:
- properties:
- cache:
- properties:
- configMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - configMap
- type: object
- key:
- type: string
- maxAge:
- type: string
- required:
- - cache
- - key
- - maxAge
- type: object
- metadata:
- properties:
- annotations:
- additionalProperties:
- type: string
- type: object
- labels:
- additionalProperties:
- type: string
- type: object
- type: object
- metrics:
- properties:
- prometheus:
- items:
- properties:
- counter:
- properties:
- value:
- type: string
- required:
- - value
- type: object
- gauge:
- properties:
- realtime:
- type: boolean
- value:
- type: string
- required:
- - realtime
- - value
- type: object
- help:
- type: string
- histogram:
- properties:
- buckets:
- items:
- type: number
- type: array
- value:
- type: string
- required:
- - buckets
- - value
- type: object
- labels:
- items:
- properties:
- key:
- type: string
- value:
- type: string
- required:
- - key
- - value
- type: object
- type: array
- name:
- type: string
- when:
- type: string
- required:
- - help
- - name
- type: object
- type: array
- required:
- - prometheus
- type: object
- name:
- type: string
- nodeSelector:
- additionalProperties:
- type: string
- type: object
- outputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- exitCode:
- type: string
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- result:
- type: string
- type: object
- parallelism:
- format: int64
- type: integer
- plugin:
- type: object
- podSpecPatch:
- type: string
- priority:
- format: int32
- type: integer
- priorityClassName:
- type: string
- resource:
- properties:
- action:
- type: string
- failureCondition:
- type: string
- flags:
- items:
- type: string
- type: array
- manifest:
- type: string
- mergeStrategy:
- type: string
- setOwnerReference:
- type: boolean
- successCondition:
- type: string
- required:
- - action
- type: object
- retryStrategy:
- properties:
- affinity:
- properties:
- nodeAntiAffinity:
- type: object
- type: object
- backoff:
- properties:
- duration:
- type: string
- factor:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- maxDuration:
- type: string
- type: object
- expression:
- type: string
- limit:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- retryPolicy:
- type: string
- type: object
- schedulerName:
- type: string
- script:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- source:
- type: string
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- - source
- type: object
- securityContext:
- properties:
- fsGroup:
- format: int64
- type: integer
- fsGroupChangePolicy:
- type: string
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- supplementalGroups:
- items:
- format: int64
- type: integer
- type: array
- sysctls:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- serviceAccountName:
- type: string
- sidecars:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- mirrorVolumeMounts:
- type: boolean
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- steps:
- items:
- type: array
- type: array
- suspend:
- properties:
- duration:
- type: string
- type: object
- synchronization:
- properties:
- mutex:
- properties:
- name:
- type: string
- type: object
- semaphore:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- type: object
- timeout:
- type: string
- tolerations:
- items:
- properties:
- effect:
- type: string
- key:
- type: string
- operator:
- type: string
- tolerationSeconds:
- format: int64
- type: integer
- value:
- type: string
- type: object
- type: array
- volumes:
- items:
- properties:
- awsElasticBlockStore:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- azureDisk:
- properties:
- cachingMode:
- type: string
- diskName:
- type: string
- diskURI:
- type: string
- fsType:
- type: string
- kind:
- type: string
- readOnly:
- type: boolean
- required:
- - diskName
- - diskURI
- type: object
- azureFile:
- properties:
- readOnly:
- type: boolean
- secretName:
- type: string
- shareName:
- type: string
- required:
- - secretName
- - shareName
- type: object
- cephfs:
- properties:
- monitors:
- items:
- type: string
- type: array
- path:
- type: string
- readOnly:
- type: boolean
- secretFile:
- type: string
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - monitors
- type: object
- cinder:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- configMap:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- csi:
- properties:
- driver:
- type: string
- fsType:
- type: string
- nodePublishSecretRef:
- properties:
- name:
- type: string
- type: object
- readOnly:
- type: boolean
- volumeAttributes:
- additionalProperties:
- type: string
- type: object
- required:
- - driver
- type: object
- downwardAPI:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- emptyDir:
- properties:
- medium:
- type: string
- sizeLimit:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- ephemeral:
- properties:
- volumeClaimTemplate:
- properties:
- metadata:
- type: object
- spec:
- properties:
- accessModes:
- items:
- type: string
- type: array
- dataSource:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- dataSourceRef:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- storageClassName:
- type: string
- volumeMode:
- type: string
- volumeName:
- type: string
- type: object
- required:
- - spec
- type: object
- type: object
- fc:
- properties:
- fsType:
- type: string
- lun:
- format: int32
- type: integer
- readOnly:
- type: boolean
- targetWWNs:
- items:
- type: string
- type: array
- wwids:
- items:
- type: string
- type: array
- type: object
- flexVolume:
- properties:
- driver:
- type: string
- fsType:
- type: string
- options:
- additionalProperties:
- type: string
- type: object
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- required:
- - driver
- type: object
- flocker:
- properties:
- datasetName:
- type: string
- datasetUUID:
- type: string
- type: object
- gcePersistentDisk:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- pdName:
- type: string
- readOnly:
- type: boolean
- required:
- - pdName
- type: object
- gitRepo:
- properties:
- directory:
- type: string
- repository:
- type: string
- revision:
- type: string
- required:
- - repository
- type: object
- glusterfs:
- properties:
- endpoints:
- type: string
- path:
- type: string
- readOnly:
- type: boolean
- required:
- - endpoints
- - path
- type: object
- hostPath:
- properties:
- path:
- type: string
- type:
- type: string
- required:
- - path
- type: object
- iscsi:
- properties:
- chapAuthDiscovery:
- type: boolean
- chapAuthSession:
- type: boolean
- fsType:
- type: string
- initiatorName:
- type: string
- iqn:
- type: string
- iscsiInterface:
- type: string
- lun:
- format: int32
- type: integer
- portals:
- items:
- type: string
- type: array
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- targetPortal:
- type: string
- required:
- - iqn
- - lun
- - targetPortal
- type: object
- name:
- type: string
- nfs:
- properties:
- path:
- type: string
- readOnly:
- type: boolean
- server:
- type: string
- required:
- - path
- - server
- type: object
- persistentVolumeClaim:
- properties:
- claimName:
- type: string
- readOnly:
- type: boolean
- required:
- - claimName
- type: object
- photonPersistentDisk:
- properties:
- fsType:
- type: string
- pdID:
- type: string
- required:
- - pdID
- type: object
- portworxVolume:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- projected:
- properties:
- defaultMode:
- format: int32
- type: integer
- sources:
- items:
- properties:
- configMap:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- downwardAPI:
- properties:
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- secret:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- serviceAccountToken:
- properties:
- audience:
- type: string
- expirationSeconds:
- format: int64
- type: integer
- path:
- type: string
- required:
- - path
- type: object
- type: object
- type: array
- type: object
- quobyte:
- properties:
- group:
- type: string
- readOnly:
- type: boolean
- registry:
- type: string
- tenant:
- type: string
- user:
- type: string
- volume:
- type: string
- required:
- - registry
- - volume
- type: object
- rbd:
- properties:
- fsType:
- type: string
- image:
- type: string
- keyring:
- type: string
- monitors:
- items:
- type: string
- type: array
- pool:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - image
- - monitors
- type: object
- scaleIO:
- properties:
- fsType:
- type: string
- gateway:
- type: string
- protectionDomain:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- sslEnabled:
- type: boolean
- storageMode:
- type: string
- storagePool:
- type: string
- system:
- type: string
- volumeName:
- type: string
- required:
- - gateway
- - secretRef
- - system
- type: object
- secret:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- optional:
- type: boolean
- secretName:
- type: string
- type: object
- storageos:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeName:
- type: string
- volumeNamespace:
- type: string
- type: object
- vsphereVolume:
- properties:
- fsType:
- type: string
- storagePolicyID:
- type: string
- storagePolicyName:
- type: string
- volumePath:
- type: string
- required:
- - volumePath
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- templates:
- items:
- properties:
- activeDeadlineSeconds:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- affinity:
- properties:
- nodeAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- preference:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- weight:
- format: int32
- type: integer
- required:
- - preference
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- properties:
- nodeSelectorTerms:
- items:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- type: array
- required:
- - nodeSelectorTerms
- type: object
- type: object
- podAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- podAntiAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- type: object
- archiveLocation:
- properties:
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- type: object
- automountServiceAccountToken:
- type: boolean
- container:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - image
- type: object
- containerSet:
- properties:
- containers:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- dependencies:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- retryStrategy:
- properties:
- duration:
- type: string
- retries:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - retries
- type: object
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- required:
- - containers
- type: object
- daemon:
- type: boolean
- dag:
- properties:
- failFast:
- type: boolean
- target:
- type: string
- tasks:
- items:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- continueOn:
- properties:
- error:
- type: boolean
- failed:
- type: boolean
- type: object
- dependencies:
- items:
- type: string
- type: array
- depends:
- type: string
- hooks:
- additionalProperties:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- expression:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- type: object
- type: object
- inline: {}
- name:
- type: string
- onExit:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- when:
- type: string
- withItems:
- items:
- type: object
- type: array
- withParam:
- type: string
- withSequence:
- properties:
- count:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- end:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- format:
- type: string
- start:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- type: object
- required:
- - name
- type: object
- type: array
- required:
- - tasks
- type: object
- data:
- properties:
- source:
- properties:
- artifactPaths:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: object
- transformation:
- items:
- properties:
- expression:
- type: string
- required:
- - expression
- type: object
- type: array
- required:
- - source
- - transformation
- type: object
- executor:
- properties:
- serviceAccountName:
- type: string
- type: object
- failFast:
- type: boolean
- hostAliases:
- items:
- properties:
- hostnames:
- items:
- type: string
- type: array
- ip:
- type: string
- type: object
- type: array
- http:
- properties:
- body:
- type: string
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- insecureSkipVerify:
- type: boolean
- method:
- type: string
- successCondition:
- type: string
- timeoutSeconds:
- format: int64
- type: integer
- url:
- type: string
- required:
- - url
- type: object
- initContainers:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- mirrorVolumeMounts:
- type: boolean
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- inputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- memoize:
- properties:
- cache:
- properties:
- configMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - configMap
- type: object
- key:
- type: string
- maxAge:
- type: string
- required:
- - cache
- - key
- - maxAge
- type: object
- metadata:
- properties:
- annotations:
- additionalProperties:
- type: string
- type: object
- labels:
- additionalProperties:
- type: string
- type: object
- type: object
- metrics:
- properties:
- prometheus:
- items:
- properties:
- counter:
- properties:
- value:
- type: string
- required:
- - value
- type: object
- gauge:
- properties:
- realtime:
- type: boolean
- value:
- type: string
- required:
- - realtime
- - value
- type: object
- help:
- type: string
- histogram:
- properties:
- buckets:
- items:
- type: number
- type: array
- value:
- type: string
- required:
- - buckets
- - value
- type: object
- labels:
- items:
- properties:
- key:
- type: string
- value:
- type: string
- required:
- - key
- - value
- type: object
- type: array
- name:
- type: string
- when:
- type: string
- required:
- - help
- - name
- type: object
- type: array
- required:
- - prometheus
- type: object
- name:
- type: string
- nodeSelector:
- additionalProperties:
- type: string
- type: object
- outputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- exitCode:
- type: string
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- result:
- type: string
- type: object
- parallelism:
- format: int64
- type: integer
- plugin:
- type: object
- podSpecPatch:
- type: string
- priority:
- format: int32
- type: integer
- priorityClassName:
- type: string
- resource:
- properties:
- action:
- type: string
- failureCondition:
- type: string
- flags:
- items:
- type: string
- type: array
- manifest:
- type: string
- mergeStrategy:
- type: string
- setOwnerReference:
- type: boolean
- successCondition:
- type: string
- required:
- - action
- type: object
- retryStrategy:
- properties:
- affinity:
- properties:
- nodeAntiAffinity:
- type: object
- type: object
- backoff:
- properties:
- duration:
- type: string
- factor:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- maxDuration:
- type: string
- type: object
- expression:
- type: string
- limit:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- retryPolicy:
- type: string
- type: object
- schedulerName:
- type: string
- script:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- source:
- type: string
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - image
- - source
- type: object
- securityContext:
- properties:
- fsGroup:
- format: int64
- type: integer
- fsGroupChangePolicy:
- type: string
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- supplementalGroups:
- items:
- format: int64
- type: integer
- type: array
- sysctls:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- serviceAccountName:
- type: string
- sidecars:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- mirrorVolumeMounts:
- type: boolean
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- steps:
- items:
- type: array
- type: array
- suspend:
- properties:
- duration:
- type: string
- type: object
- synchronization:
- properties:
- mutex:
- properties:
- name:
- type: string
- type: object
- semaphore:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- type: object
- timeout:
- type: string
- tolerations:
- items:
- properties:
- effect:
- type: string
- key:
- type: string
- operator:
- type: string
- tolerationSeconds:
- format: int64
- type: integer
- value:
- type: string
- type: object
- type: array
- volumes:
- items:
- properties:
- awsElasticBlockStore:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- azureDisk:
- properties:
- cachingMode:
- type: string
- diskName:
- type: string
- diskURI:
- type: string
- fsType:
- type: string
- kind:
- type: string
- readOnly:
- type: boolean
- required:
- - diskName
- - diskURI
- type: object
- azureFile:
- properties:
- readOnly:
- type: boolean
- secretName:
- type: string
- shareName:
- type: string
- required:
- - secretName
- - shareName
- type: object
- cephfs:
- properties:
- monitors:
- items:
- type: string
- type: array
- path:
- type: string
- readOnly:
- type: boolean
- secretFile:
- type: string
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - monitors
- type: object
- cinder:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- configMap:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- csi:
- properties:
- driver:
- type: string
- fsType:
- type: string
- nodePublishSecretRef:
- properties:
- name:
- type: string
- type: object
- readOnly:
- type: boolean
- volumeAttributes:
- additionalProperties:
- type: string
- type: object
- required:
- - driver
- type: object
- downwardAPI:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- emptyDir:
- properties:
- medium:
- type: string
- sizeLimit:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- ephemeral:
- properties:
- volumeClaimTemplate:
- properties:
- metadata:
- type: object
- spec:
- properties:
- accessModes:
- items:
- type: string
- type: array
- dataSource:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- dataSourceRef:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- storageClassName:
- type: string
- volumeMode:
- type: string
- volumeName:
- type: string
- type: object
- required:
- - spec
- type: object
- type: object
- fc:
- properties:
- fsType:
- type: string
- lun:
- format: int32
- type: integer
- readOnly:
- type: boolean
- targetWWNs:
- items:
- type: string
- type: array
- wwids:
- items:
- type: string
- type: array
- type: object
- flexVolume:
- properties:
- driver:
- type: string
- fsType:
- type: string
- options:
- additionalProperties:
- type: string
- type: object
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- required:
- - driver
- type: object
- flocker:
- properties:
- datasetName:
- type: string
- datasetUUID:
- type: string
- type: object
- gcePersistentDisk:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- pdName:
- type: string
- readOnly:
- type: boolean
- required:
- - pdName
- type: object
- gitRepo:
- properties:
- directory:
- type: string
- repository:
- type: string
- revision:
- type: string
- required:
- - repository
- type: object
- glusterfs:
- properties:
- endpoints:
- type: string
- path:
- type: string
- readOnly:
- type: boolean
- required:
- - endpoints
- - path
- type: object
- hostPath:
- properties:
- path:
- type: string
- type:
- type: string
- required:
- - path
- type: object
- iscsi:
- properties:
- chapAuthDiscovery:
- type: boolean
- chapAuthSession:
- type: boolean
- fsType:
- type: string
- initiatorName:
- type: string
- iqn:
- type: string
- iscsiInterface:
- type: string
- lun:
- format: int32
- type: integer
- portals:
- items:
- type: string
- type: array
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- targetPortal:
- type: string
- required:
- - iqn
- - lun
- - targetPortal
- type: object
- name:
- type: string
- nfs:
- properties:
- path:
- type: string
- readOnly:
- type: boolean
- server:
- type: string
- required:
- - path
- - server
- type: object
- persistentVolumeClaim:
- properties:
- claimName:
- type: string
- readOnly:
- type: boolean
- required:
- - claimName
- type: object
- photonPersistentDisk:
- properties:
- fsType:
- type: string
- pdID:
- type: string
- required:
- - pdID
- type: object
- portworxVolume:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- projected:
- properties:
- defaultMode:
- format: int32
- type: integer
- sources:
- items:
- properties:
- configMap:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- downwardAPI:
- properties:
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- secret:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- serviceAccountToken:
- properties:
- audience:
- type: string
- expirationSeconds:
- format: int64
- type: integer
- path:
- type: string
- required:
- - path
- type: object
- type: object
- type: array
- type: object
- quobyte:
- properties:
- group:
- type: string
- readOnly:
- type: boolean
- registry:
- type: string
- tenant:
- type: string
- user:
- type: string
- volume:
- type: string
- required:
- - registry
- - volume
- type: object
- rbd:
- properties:
- fsType:
- type: string
- image:
- type: string
- keyring:
- type: string
- monitors:
- items:
- type: string
- type: array
- pool:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - image
- - monitors
- type: object
- scaleIO:
- properties:
- fsType:
- type: string
- gateway:
- type: string
- protectionDomain:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- sslEnabled:
- type: boolean
- storageMode:
- type: string
- storagePool:
- type: string
- system:
- type: string
- volumeName:
- type: string
- required:
- - gateway
- - secretRef
- - system
- type: object
- secret:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- optional:
- type: boolean
- secretName:
- type: string
- type: object
- storageos:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeName:
- type: string
- volumeNamespace:
- type: string
- type: object
- vsphereVolume:
- properties:
- fsType:
- type: string
- storagePolicyID:
- type: string
- storagePolicyName:
- type: string
- volumePath:
- type: string
- required:
- - volumePath
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- type: array
- tolerations:
- items:
- properties:
- effect:
- type: string
- key:
- type: string
- operator:
- type: string
- tolerationSeconds:
- format: int64
- type: integer
- value:
- type: string
- type: object
- type: array
- ttlStrategy:
- properties:
- secondsAfterCompletion:
- format: int32
- type: integer
- secondsAfterFailure:
- format: int32
- type: integer
- secondsAfterSuccess:
- format: int32
- type: integer
- type: object
- volumeClaimGC:
- properties:
- strategy:
- type: string
- type: object
- volumeClaimTemplates:
- items:
- properties:
- apiVersion:
- type: string
- kind:
- type: string
- metadata:
- type: object
- spec:
- properties:
- accessModes:
- items:
- type: string
- type: array
- dataSource:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- dataSourceRef:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- storageClassName:
- type: string
- volumeMode:
- type: string
- volumeName:
- type: string
- type: object
- status:
- properties:
- accessModes:
- items:
- type: string
- type: array
- allocatedResources:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- capacity:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- conditions:
- items:
- properties:
- lastProbeTime:
- format: date-time
- type: string
- lastTransitionTime:
- format: date-time
- type: string
- message:
- type: string
- reason:
- type: string
- status:
- type: string
- type:
- type: string
- required:
- - status
- - type
- type: object
- type: array
- phase:
- type: string
- resizeStatus:
- type: string
- type: object
- type: object
- type: array
- volumes:
- items:
- properties:
- awsElasticBlockStore:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- azureDisk:
- properties:
- cachingMode:
- type: string
- diskName:
- type: string
- diskURI:
- type: string
- fsType:
- type: string
- kind:
- type: string
- readOnly:
- type: boolean
- required:
- - diskName
- - diskURI
- type: object
- azureFile:
- properties:
- readOnly:
- type: boolean
- secretName:
- type: string
- shareName:
- type: string
- required:
- - secretName
- - shareName
- type: object
- cephfs:
- properties:
- monitors:
- items:
- type: string
- type: array
- path:
- type: string
- readOnly:
- type: boolean
- secretFile:
- type: string
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - monitors
- type: object
- cinder:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- configMap:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- csi:
- properties:
- driver:
- type: string
- fsType:
- type: string
- nodePublishSecretRef:
- properties:
- name:
- type: string
- type: object
- readOnly:
- type: boolean
- volumeAttributes:
- additionalProperties:
- type: string
- type: object
- required:
- - driver
- type: object
- downwardAPI:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- emptyDir:
- properties:
- medium:
- type: string
- sizeLimit:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- ephemeral:
- properties:
- volumeClaimTemplate:
- properties:
- metadata:
- type: object
- spec:
- properties:
- accessModes:
- items:
- type: string
- type: array
- dataSource:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- dataSourceRef:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- storageClassName:
- type: string
- volumeMode:
- type: string
- volumeName:
- type: string
- type: object
- required:
- - spec
- type: object
- type: object
- fc:
- properties:
- fsType:
- type: string
- lun:
- format: int32
- type: integer
- readOnly:
- type: boolean
- targetWWNs:
- items:
- type: string
- type: array
- wwids:
- items:
- type: string
- type: array
- type: object
- flexVolume:
- properties:
- driver:
- type: string
- fsType:
- type: string
- options:
- additionalProperties:
- type: string
- type: object
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- required:
- - driver
- type: object
- flocker:
- properties:
- datasetName:
- type: string
- datasetUUID:
- type: string
- type: object
- gcePersistentDisk:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- pdName:
- type: string
- readOnly:
- type: boolean
- required:
- - pdName
- type: object
- gitRepo:
- properties:
- directory:
- type: string
- repository:
- type: string
- revision:
- type: string
- required:
- - repository
- type: object
- glusterfs:
- properties:
- endpoints:
- type: string
- path:
- type: string
- readOnly:
- type: boolean
- required:
- - endpoints
- - path
- type: object
- hostPath:
- properties:
- path:
- type: string
- type:
- type: string
- required:
- - path
- type: object
- iscsi:
- properties:
- chapAuthDiscovery:
- type: boolean
- chapAuthSession:
- type: boolean
- fsType:
- type: string
- initiatorName:
- type: string
- iqn:
- type: string
- iscsiInterface:
- type: string
- lun:
- format: int32
- type: integer
- portals:
- items:
- type: string
- type: array
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- targetPortal:
- type: string
- required:
- - iqn
- - lun
- - targetPortal
- type: object
- name:
- type: string
- nfs:
- properties:
- path:
- type: string
- readOnly:
- type: boolean
- server:
- type: string
- required:
- - path
- - server
- type: object
- persistentVolumeClaim:
- properties:
- claimName:
- type: string
- readOnly:
- type: boolean
- required:
- - claimName
- type: object
- photonPersistentDisk:
- properties:
- fsType:
- type: string
- pdID:
- type: string
- required:
- - pdID
- type: object
- portworxVolume:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- projected:
- properties:
- defaultMode:
- format: int32
- type: integer
- sources:
- items:
- properties:
- configMap:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- downwardAPI:
- properties:
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- secret:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- serviceAccountToken:
- properties:
- audience:
- type: string
- expirationSeconds:
- format: int64
- type: integer
- path:
- type: string
- required:
- - path
- type: object
- type: object
- type: array
- type: object
- quobyte:
- properties:
- group:
- type: string
- readOnly:
- type: boolean
- registry:
- type: string
- tenant:
- type: string
- user:
- type: string
- volume:
- type: string
- required:
- - registry
- - volume
- type: object
- rbd:
- properties:
- fsType:
- type: string
- image:
- type: string
- keyring:
- type: string
- monitors:
- items:
- type: string
- type: array
- pool:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - image
- - monitors
- type: object
- scaleIO:
- properties:
- fsType:
- type: string
- gateway:
- type: string
- protectionDomain:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- sslEnabled:
- type: boolean
- storageMode:
- type: string
- storagePool:
- type: string
- system:
- type: string
- volumeName:
- type: string
- required:
- - gateway
- - secretRef
- - system
- type: object
- secret:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- optional:
- type: boolean
- secretName:
- type: string
- type: object
- storageos:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeName:
- type: string
- volumeNamespace:
- type: string
- type: object
- vsphereVolume:
- properties:
- fsType:
- type: string
- storagePolicyID:
- type: string
- storagePolicyName:
- type: string
- volumePath:
- type: string
- required:
- - volumePath
- type: object
- required:
- - name
- type: object
- type: array
- workflowMetadata:
- properties:
- annotations:
- additionalProperties:
- type: string
- type: object
- labels:
- additionalProperties:
- type: string
- type: object
- labelsFrom:
- additionalProperties:
- properties:
- expression:
- type: string
- required:
- - expression
- type: object
- type: object
- type: object
- workflowTemplateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- type: object
- type: object
- required:
- - metadata
- - spec
- type: object
- served: true
- storage: true
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/full/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/full/kustomization.yaml
deleted file mode 100644
index 62ba490..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/full/kustomization.yaml
+++ /dev/null
@@ -1,10 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
-- argoproj.io_clusterworkflowtemplates.yaml
-- argoproj.io_cronworkflows.yaml
-- argoproj.io_workflows.yaml
-- argoproj.io_workflowtemplates.yaml
-- argoproj.io_workfloweventbindings.yaml
-- argoproj.io_workflowtasksets.yaml
-- argoproj.io_workflowtaskresults.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/minimal/README.md b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/minimal/README.md
deleted file mode 100644
index 55f48f0..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/minimal/README.md
+++ /dev/null
@@ -1,3 +0,0 @@
-# Minimal CRDs
-
-These CRDs omit schema validation.
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/minimal/argoproj.io_clusterworkflowtemplates.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/minimal/argoproj.io_clusterworkflowtemplates.yaml
deleted file mode 100644
index caddc62..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/minimal/argoproj.io_clusterworkflowtemplates.yaml
+++ /dev/null
@@ -1,38 +0,0 @@
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata: # kpt-merge: /clusterworkflowtemplates.argoproj.io
- name: clusterworkflowtemplates.argoproj.io
- annotations:
- internal.kpt.dev/upstream-identifier: 'apiextensions.k8s.io|CustomResourceDefinition|default|clusterworkflowtemplates.argoproj.io'
-spec:
- group: argoproj.io
- names:
- kind: ClusterWorkflowTemplate
- listKind: ClusterWorkflowTemplateList
- plural: clusterworkflowtemplates
- shortNames:
- - clusterwftmpl
- - cwft
- singular: clusterworkflowtemplate
- scope: Cluster
- versions:
- - name: v1alpha1
- schema:
- openAPIV3Schema:
- properties:
- apiVersion:
- type: string
- kind:
- type: string
- metadata:
- type: object
- spec:
- type: object
- x-kubernetes-map-type: atomic
- x-kubernetes-preserve-unknown-fields: true
- required:
- - metadata
- - spec
- type: object
- served: true
- storage: true
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/minimal/argoproj.io_cronworkflows.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/minimal/argoproj.io_cronworkflows.yaml
deleted file mode 100644
index 58f6a9d..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/minimal/argoproj.io_cronworkflows.yaml
+++ /dev/null
@@ -1,42 +0,0 @@
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata: # kpt-merge: /cronworkflows.argoproj.io
- name: cronworkflows.argoproj.io
- annotations:
- internal.kpt.dev/upstream-identifier: 'apiextensions.k8s.io|CustomResourceDefinition|default|cronworkflows.argoproj.io'
-spec:
- group: argoproj.io
- names:
- kind: CronWorkflow
- listKind: CronWorkflowList
- plural: cronworkflows
- shortNames:
- - cwf
- - cronwf
- singular: cronworkflow
- scope: Namespaced
- versions:
- - name: v1alpha1
- schema:
- openAPIV3Schema:
- properties:
- apiVersion:
- type: string
- kind:
- type: string
- metadata:
- type: object
- spec:
- type: object
- x-kubernetes-map-type: atomic
- x-kubernetes-preserve-unknown-fields: true
- status:
- type: object
- x-kubernetes-map-type: atomic
- x-kubernetes-preserve-unknown-fields: true
- required:
- - metadata
- - spec
- type: object
- served: true
- storage: true
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/minimal/argoproj.io_workfloweventbindings.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/minimal/argoproj.io_workfloweventbindings.yaml
deleted file mode 100644
index 2e81dda..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/minimal/argoproj.io_workfloweventbindings.yaml
+++ /dev/null
@@ -1,37 +0,0 @@
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata: # kpt-merge: /workfloweventbindings.argoproj.io
- name: workfloweventbindings.argoproj.io
- annotations:
- internal.kpt.dev/upstream-identifier: 'apiextensions.k8s.io|CustomResourceDefinition|default|workfloweventbindings.argoproj.io'
-spec:
- group: argoproj.io
- names:
- kind: WorkflowEventBinding
- listKind: WorkflowEventBindingList
- plural: workfloweventbindings
- shortNames:
- - wfeb
- singular: workfloweventbinding
- scope: Namespaced
- versions:
- - name: v1alpha1
- schema:
- openAPIV3Schema:
- properties:
- apiVersion:
- type: string
- kind:
- type: string
- metadata:
- type: object
- spec:
- type: object
- x-kubernetes-map-type: atomic
- x-kubernetes-preserve-unknown-fields: true
- required:
- - metadata
- - spec
- type: object
- served: true
- storage: true
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/minimal/argoproj.io_workflows.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/minimal/argoproj.io_workflows.yaml
deleted file mode 100644
index db3e576..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/minimal/argoproj.io_workflows.yaml
+++ /dev/null
@@ -1,52 +0,0 @@
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata: # kpt-merge: /workflows.argoproj.io
- name: workflows.argoproj.io
- annotations:
- internal.kpt.dev/upstream-identifier: 'apiextensions.k8s.io|CustomResourceDefinition|default|workflows.argoproj.io'
-spec:
- group: argoproj.io
- names:
- kind: Workflow
- listKind: WorkflowList
- plural: workflows
- shortNames:
- - wf
- singular: workflow
- scope: Namespaced
- versions:
- - additionalPrinterColumns:
- - description: Status of the workflow
- jsonPath: .status.phase
- name: Status
- type: string
- - description: When the workflow was started
- format: date-time
- jsonPath: .status.startedAt
- name: Age
- type: date
- name: v1alpha1
- schema:
- openAPIV3Schema:
- properties:
- apiVersion:
- type: string
- kind:
- type: string
- metadata:
- type: object
- spec:
- type: object
- x-kubernetes-map-type: atomic
- x-kubernetes-preserve-unknown-fields: true
- status:
- type: object
- x-kubernetes-map-type: atomic
- x-kubernetes-preserve-unknown-fields: true
- required:
- - metadata
- - spec
- type: object
- served: true
- storage: true
- subresources: {}
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/minimal/argoproj.io_workflowtaskresults.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/minimal/argoproj.io_workflowtaskresults.yaml
deleted file mode 100644
index b0bfed2..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/minimal/argoproj.io_workflowtaskresults.yaml
+++ /dev/null
@@ -1,427 +0,0 @@
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata: # kpt-merge: /workflowtaskresults.argoproj.io
- name: workflowtaskresults.argoproj.io
- annotations:
- internal.kpt.dev/upstream-identifier: 'apiextensions.k8s.io|CustomResourceDefinition|default|workflowtaskresults.argoproj.io'
-spec:
- group: argoproj.io
- names:
- kind: WorkflowTaskResult
- listKind: WorkflowTaskResultList
- plural: workflowtaskresults
- singular: workflowtaskresult
- scope: Namespaced
- versions:
- - name: v1alpha1
- schema:
- openAPIV3Schema:
- properties:
- apiVersion:
- type: string
- kind:
- type: string
- message:
- type: string
- metadata:
- type: object
- outputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- exitCode:
- type: string
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- result:
- type: string
- type: object
- phase:
- type: string
- progress:
- type: string
- required:
- - metadata
- type: object
- served: true
- storage: true
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/minimal/argoproj.io_workflowtasksets.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/minimal/argoproj.io_workflowtasksets.yaml
deleted file mode 100644
index a74a9c1..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/minimal/argoproj.io_workflowtasksets.yaml
+++ /dev/null
@@ -1,43 +0,0 @@
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata: # kpt-merge: /workflowtasksets.argoproj.io
- name: workflowtasksets.argoproj.io
- annotations:
- internal.kpt.dev/upstream-identifier: 'apiextensions.k8s.io|CustomResourceDefinition|default|workflowtasksets.argoproj.io'
-spec:
- group: argoproj.io
- names:
- kind: WorkflowTaskSet
- listKind: WorkflowTaskSetList
- plural: workflowtasksets
- shortNames:
- - wfts
- singular: workflowtaskset
- scope: Namespaced
- versions:
- - name: v1alpha1
- schema:
- openAPIV3Schema:
- properties:
- apiVersion:
- type: string
- kind:
- type: string
- metadata:
- type: object
- spec:
- type: object
- x-kubernetes-map-type: atomic
- x-kubernetes-preserve-unknown-fields: true
- status:
- type: object
- x-kubernetes-map-type: atomic
- x-kubernetes-preserve-unknown-fields: true
- required:
- - metadata
- - spec
- type: object
- served: true
- storage: true
- subresources:
- status: {}
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/minimal/argoproj.io_workflowtemplates.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/minimal/argoproj.io_workflowtemplates.yaml
deleted file mode 100644
index 81acc2c..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/minimal/argoproj.io_workflowtemplates.yaml
+++ /dev/null
@@ -1,37 +0,0 @@
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata: # kpt-merge: /workflowtemplates.argoproj.io
- name: workflowtemplates.argoproj.io
- annotations:
- internal.kpt.dev/upstream-identifier: 'apiextensions.k8s.io|CustomResourceDefinition|default|workflowtemplates.argoproj.io'
-spec:
- group: argoproj.io
- names:
- kind: WorkflowTemplate
- listKind: WorkflowTemplateList
- plural: workflowtemplates
- shortNames:
- - wftmpl
- singular: workflowtemplate
- scope: Namespaced
- versions:
- - name: v1alpha1
- schema:
- openAPIV3Schema:
- properties:
- apiVersion:
- type: string
- kind:
- type: string
- metadata:
- type: object
- spec:
- type: object
- x-kubernetes-map-type: atomic
- x-kubernetes-preserve-unknown-fields: true
- required:
- - metadata
- - spec
- type: object
- served: true
- storage: true
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/minimal/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/minimal/kustomization.yaml
deleted file mode 100644
index 62ba490..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/minimal/kustomization.yaml
+++ /dev/null
@@ -1,10 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
-- argoproj.io_clusterworkflowtemplates.yaml
-- argoproj.io_cronworkflows.yaml
-- argoproj.io_workflows.yaml
-- argoproj.io_workflowtemplates.yaml
-- argoproj.io_workfloweventbindings.yaml
-- argoproj.io_workflowtasksets.yaml
-- argoproj.io_workflowtaskresults.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/kustomization.yaml
deleted file mode 100644
index 02094eb..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/kustomization.yaml
+++ /dev/null
@@ -1,6 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
-- crds
-- workflow-controller
-- argo-server
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/workflow-controller/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/workflow-controller/kustomization.yaml
deleted file mode 100644
index 9b852af..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/workflow-controller/kustomization.yaml
+++ /dev/null
@@ -1,8 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
-- workflow-controller-configmap.yaml
-- workflow-controller-deployment.yaml
-- workflow-controller-sa.yaml
-- workflow-controller-metrics-service.yaml
-- workflow-controller-priorityclass.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/workflow-controller/workflow-controller-configmap.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/workflow-controller/workflow-controller-configmap.yaml
deleted file mode 100644
index 82a6988..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/workflow-controller/workflow-controller-configmap.yaml
+++ /dev/null
@@ -1,6 +0,0 @@
-apiVersion: v1
-kind: ConfigMap
-metadata: # kpt-merge: /workflow-controller-configmap
- name: workflow-controller-configmap
- annotations:
- internal.kpt.dev/upstream-identifier: '|ConfigMap|default|workflow-controller-configmap'
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/workflow-controller/workflow-controller-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/workflow-controller/workflow-controller-deployment.yaml
deleted file mode 100644
index 4342efe..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/workflow-controller/workflow-controller-deployment.yaml
+++ /dev/null
@@ -1,57 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata: # kpt-merge: /workflow-controller
- name: workflow-controller
- annotations:
- internal.kpt.dev/upstream-identifier: 'apps|Deployment|default|workflow-controller'
-spec:
- selector:
- matchLabels:
- app: workflow-controller
- template:
- metadata:
- labels:
- app: workflow-controller
- spec:
- priorityClassName: workflow-controller
- serviceAccountName: argo
- containers:
- - name: workflow-controller
- image: quay.io/argoproj/workflow-controller:latest
- securityContext:
- readOnlyRootFilesystem: true
- runAsNonRoot: true
- allowPrivilegeEscalation: false
- capabilities:
- drop:
- - ALL
- command:
- - workflow-controller
- args:
- - --configmap
- - workflow-controller-configmap
- - --executor-image
- - quay.io/argoproj/argoexec:latest
- env:
- - name: LEADER_ELECTION_IDENTITY
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.name
- ports:
- - name: metrics
- containerPort: 9090
- - containerPort: 6060
- livenessProbe:
- httpGet:
- port: 6060
- path: /healthz
- # Require three failures to tolerate transient errors.
- failureThreshold: 3
- initialDelaySeconds: 90
- periodSeconds: 60
- timeoutSeconds: 30
- securityContext:
- runAsNonRoot: true
- nodeSelector:
- kubernetes.io/os: linux
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/workflow-controller/workflow-controller-metrics-service.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/workflow-controller/workflow-controller-metrics-service.yaml
deleted file mode 100644
index a3bdc5a..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/workflow-controller/workflow-controller-metrics-service.yaml
+++ /dev/null
@@ -1,20 +0,0 @@
-apiVersion: v1
-kind: Service
-metadata: # kpt-merge: /workflow-controller-metrics
- name: workflow-controller-metrics
- labels:
- app: workflow-controller
- annotations:
- workflows.argoproj.io/description: |
- This service is deprecated. It will be removed in v3.4.
-
- https://github.com/argoproj/argo-workflows/issues/8441
- internal.kpt.dev/upstream-identifier: '|Service|default|workflow-controller-metrics'
-spec:
- selector:
- app: workflow-controller
- ports:
- - name: metrics
- port: 9090
- targetPort: 9090
- protocol: TCP
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/workflow-controller/workflow-controller-priorityclass.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/workflow-controller/workflow-controller-priorityclass.yaml
deleted file mode 100644
index 9d9364c..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/workflow-controller/workflow-controller-priorityclass.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-apiVersion: scheduling.k8s.io/v1
-kind: PriorityClass
-metadata: # kpt-merge: /workflow-controller
- name: workflow-controller
- annotations:
- internal.kpt.dev/upstream-identifier: 'scheduling.k8s.io|PriorityClass|default|workflow-controller'
-value: 1000000
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/workflow-controller/workflow-controller-sa.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/workflow-controller/workflow-controller-sa.yaml
deleted file mode 100644
index b4dcc68..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/workflow-controller/workflow-controller-sa.yaml
+++ /dev/null
@@ -1,6 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata: # kpt-merge: /argo
- name: argo
- annotations:
- internal.kpt.dev/upstream-identifier: '|ServiceAccount|default|argo'
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/cluster-install/argo-server-rbac/argo-server-clusterole.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/cluster-install/argo-server-rbac/argo-server-clusterole.yaml
deleted file mode 100644
index c279cc3..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/cluster-install/argo-server-rbac/argo-server-clusterole.yaml
+++ /dev/null
@@ -1,69 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata: # kpt-merge: /argo-server-cluster-role
- name: argo-server-cluster-role
- annotations:
- internal.kpt.dev/upstream-identifier: 'rbac.authorization.k8s.io|ClusterRole|default|argo-server-cluster-role'
-rules:
- - apiGroups:
- - ""
- resources:
- - configmaps
- verbs:
- - get
- - watch
- - list
- - apiGroups:
- - ""
- resources:
- - secrets
- verbs:
- - get
- - create
- - list
- - watch
- - apiGroups:
- - ""
- resources:
- - pods
- - pods/exec
- - pods/log
- verbs:
- - get
- - list
- - watch
- - delete
- - apiGroups:
- - ""
- resources:
- - events
- verbs:
- - watch
- - create
- - patch
- - apiGroups:
- - ""
- resources:
- - serviceaccounts
- verbs:
- - get
- - list
- - watch
- - apiGroups:
- - argoproj.io
- resources:
- - eventsources
- - sensors
- - workflows
- - workfloweventbindings
- - workflowtemplates
- - cronworkflows
- - clusterworkflowtemplates
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/cluster-install/argo-server-rbac/argo-server-clusterolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/cluster-install/argo-server-rbac/argo-server-clusterolebinding.yaml
deleted file mode 100644
index 8db92c8..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/cluster-install/argo-server-rbac/argo-server-clusterolebinding.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata: # kpt-merge: /argo-server-binding
- name: argo-server-binding
- annotations:
- internal.kpt.dev/upstream-identifier: 'rbac.authorization.k8s.io|ClusterRoleBinding|default|argo-server-binding'
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: argo-server-cluster-role
-subjects:
- - kind: ServiceAccount
- name: argo-server
- namespace: argo
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/cluster-install/argo-server-rbac/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/cluster-install/argo-server-rbac/kustomization.yaml
deleted file mode 100644
index 91d213a..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/cluster-install/argo-server-rbac/kustomization.yaml
+++ /dev/null
@@ -1,5 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
-- argo-server-clusterole.yaml
-- argo-server-clusterolebinding.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/cluster-install/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/cluster-install/kustomization.yaml
deleted file mode 100644
index bfdc9ec..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/cluster-install/kustomization.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
-- ../base
-- ./workflow-controller-rbac
-- ./argo-server-rbac
-namespace: argo
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/cluster-install/workflow-controller-rbac/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/cluster-install/workflow-controller-rbac/kustomization.yaml
deleted file mode 100644
index ab7574c..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/cluster-install/workflow-controller-rbac/kustomization.yaml
+++ /dev/null
@@ -1,8 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
-- workflow-aggregate-roles.yaml
-- workflow-controller-clusterrole.yaml
-- workflow-controller-clusterrolebinding.yaml
-- workflow-controller-role.yaml
-- workflow-controller-rolebinding.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/cluster-install/workflow-controller-rbac/workflow-aggregate-roles.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/cluster-install/workflow-controller-rbac/workflow-aggregate-roles.yaml
deleted file mode 100644
index d635c0b..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/cluster-install/workflow-controller-rbac/workflow-aggregate-roles.yaml
+++ /dev/null
@@ -1,92 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata: # kpt-merge: /argo-aggregate-to-view
- name: argo-aggregate-to-view
- labels:
- rbac.authorization.k8s.io/aggregate-to-view: "true"
- annotations:
- internal.kpt.dev/upstream-identifier: 'rbac.authorization.k8s.io|ClusterRole|default|argo-aggregate-to-view'
-rules:
-- apiGroups:
- - argoproj.io
- resources:
- - workflows
- - workflows/finalizers
- - workfloweventbindings
- - workfloweventbindings/finalizers
- - workflowtemplates
- - workflowtemplates/finalizers
- - cronworkflows
- - cronworkflows/finalizers
- - clusterworkflowtemplates
- - clusterworkflowtemplates/finalizers
- verbs:
- - get
- - list
- - watch
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata: # kpt-merge: /argo-aggregate-to-edit
- name: argo-aggregate-to-edit
- labels:
- rbac.authorization.k8s.io/aggregate-to-edit: "true"
- annotations:
- internal.kpt.dev/upstream-identifier: 'rbac.authorization.k8s.io|ClusterRole|default|argo-aggregate-to-edit'
-rules:
-- apiGroups:
- - argoproj.io
- resources:
- - workflows
- - workflows/finalizers
- - workfloweventbindings
- - workfloweventbindings/finalizers
- - workflowtemplates
- - workflowtemplates/finalizers
- - cronworkflows
- - cronworkflows/finalizers
- - clusterworkflowtemplates
- - clusterworkflowtemplates/finalizers
- verbs:
- - create
- - delete
- - deletecollection
- - get
- - list
- - patch
- - update
- - watch
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata: # kpt-merge: /argo-aggregate-to-admin
- name: argo-aggregate-to-admin
- labels:
- rbac.authorization.k8s.io/aggregate-to-admin: "true"
- annotations:
- internal.kpt.dev/upstream-identifier: 'rbac.authorization.k8s.io|ClusterRole|default|argo-aggregate-to-admin'
-rules:
-- apiGroups:
- - argoproj.io
- resources:
- - workflows
- - workflows/finalizers
- - workfloweventbindings
- - workfloweventbindings/finalizers
- - workflowtemplates
- - workflowtemplates/finalizers
- - cronworkflows
- - cronworkflows/finalizers
- - clusterworkflowtemplates
- - clusterworkflowtemplates/finalizers
- - workflowtasksets
- - workflowtasksets/finalizers
- verbs:
- - create
- - delete
- - deletecollection
- - get
- - list
- - patch
- - update
- - watch
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/cluster-install/workflow-controller-rbac/workflow-controller-clusterrole.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/cluster-install/workflow-controller-rbac/workflow-controller-clusterrole.yaml
deleted file mode 100644
index 57279d8..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/cluster-install/workflow-controller-rbac/workflow-controller-clusterrole.yaml
+++ /dev/null
@@ -1,106 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata: # kpt-merge: /argo-cluster-role
- name: argo-cluster-role
- annotations:
- internal.kpt.dev/upstream-identifier: 'rbac.authorization.k8s.io|ClusterRole|default|argo-cluster-role'
-rules:
-- apiGroups:
- - ""
- resources:
- - pods
- - pods/exec
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
-- apiGroups:
- - ""
- resources:
- - configmaps
- verbs:
- - get
- - watch
- - list
-- apiGroups:
- - ""
- resources:
- - persistentvolumeclaims
- - persistentvolumeclaims/finalizers
- verbs:
- - create
- - update
- - delete
- - get
-- apiGroups:
- - argoproj.io
- resources:
- - workflows
- - workflows/finalizers
- - workflowtasksets
- - workflowtasksets/finalizers
- verbs:
- - get
- - list
- - watch
- - update
- - patch
- - delete
- - create
-- apiGroups:
- - argoproj.io
- resources:
- - workflowtemplates
- - workflowtemplates/finalizers
- - clusterworkflowtemplates
- - clusterworkflowtemplates/finalizers
- verbs:
- - get
- - list
- - watch
-- apiGroups:
- - argoproj.io
- resources:
- - workflowtaskresults
- verbs:
- - list
- - watch
- - deletecollection
-- apiGroups:
- - ""
- resources:
- - serviceaccounts
- verbs:
- - get
- - list
-- apiGroups:
- - argoproj.io
- resources:
- - cronworkflows
- - cronworkflows/finalizers
- verbs:
- - get
- - list
- - watch
- - update
- - patch
- - delete
-- apiGroups:
- - ""
- resources:
- - events
- verbs:
- - create
- - patch
-- apiGroups:
- - "policy"
- resources:
- - poddisruptionbudgets
- verbs:
- - create
- - get
- - delete
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/cluster-install/workflow-controller-rbac/workflow-controller-clusterrolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/cluster-install/workflow-controller-rbac/workflow-controller-clusterrolebinding.yaml
deleted file mode 100644
index 74afb60..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/cluster-install/workflow-controller-rbac/workflow-controller-clusterrolebinding.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata: # kpt-merge: /argo-binding
- name: argo-binding
- annotations:
- internal.kpt.dev/upstream-identifier: 'rbac.authorization.k8s.io|ClusterRoleBinding|default|argo-binding'
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: argo-cluster-role
-subjects:
-- kind: ServiceAccount
- name: argo
- namespace: argo
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/cluster-install/workflow-controller-rbac/workflow-controller-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/cluster-install/workflow-controller-rbac/workflow-controller-role.yaml
deleted file mode 100755
index 116b690..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/cluster-install/workflow-controller-rbac/workflow-controller-role.yaml
+++ /dev/null
@@ -1,21 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata: # kpt-merge: /argo-role
- name: argo-role
- annotations:
- internal.kpt.dev/upstream-identifier: 'rbac.authorization.k8s.io|Role|default|argo-role'
-rules:
- - apiGroups:
- - coordination.k8s.io
- resources:
- - leases
- verbs:
- - create
- - get
- - update
- - apiGroups:
- - ""
- resources:
- - secrets
- verbs:
- - get
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/cluster-install/workflow-controller-rbac/workflow-controller-rolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/cluster-install/workflow-controller-rbac/workflow-controller-rolebinding.yaml
deleted file mode 100644
index 098511f..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/cluster-install/workflow-controller-rbac/workflow-controller-rolebinding.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata: # kpt-merge: /argo-binding
- name: argo-binding
- annotations:
- internal.kpt.dev/upstream-identifier: 'rbac.authorization.k8s.io|RoleBinding|default|argo-binding'
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: argo-role
-subjects:
- - kind: ServiceAccount
- name: argo
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/namespace-install/argo-server-rbac/argo-server-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/namespace-install/argo-server-rbac/argo-server-role.yaml
deleted file mode 100644
index ffb3f74..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/namespace-install/argo-server-rbac/argo-server-role.yaml
+++ /dev/null
@@ -1,69 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata: # kpt-merge: /argo-server-role
- name: argo-server-role
- annotations:
- internal.kpt.dev/upstream-identifier: 'rbac.authorization.k8s.io|Role|default|argo-server-role'
-rules:
- - apiGroups:
- - ""
- resources:
- - configmaps
- verbs:
- - get
- - watch
- - list
- - apiGroups:
- - ""
- resources:
- - secrets
- verbs:
- - get
- - create
- - list
- - watch
- - apiGroups:
- - ""
- resources:
- - pods
- - pods/exec
- - pods/log
- verbs:
- - get
- - list
- - watch
- - delete
- - apiGroups:
- - ""
- resources:
- - events
- verbs:
- - watch
- - create
- - patch
- - apiGroups:
- - ""
- resources:
- - serviceaccounts
- verbs:
- - get
- - list
- - watch
- - apiGroups:
- - argoproj.io
- resources:
- - eventsources
- - sensors
- - workflows
- - workfloweventbindings
- - workflowtemplates
- - cronworkflows
- - cronworkflows/finalizers
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/namespace-install/argo-server-rbac/argo-server-rolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/namespace-install/argo-server-rbac/argo-server-rolebinding.yaml
deleted file mode 100644
index 6ba7a39..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/namespace-install/argo-server-rbac/argo-server-rolebinding.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata: # kpt-merge: /argo-server-binding
- name: argo-server-binding
- annotations:
- internal.kpt.dev/upstream-identifier: 'rbac.authorization.k8s.io|RoleBinding|default|argo-server-binding'
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: argo-server-role
-subjects:
-- kind: ServiceAccount
- name: argo-server
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/namespace-install/argo-server-rbac/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/namespace-install/argo-server-rbac/kustomization.yaml
deleted file mode 100644
index c1ca948..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/namespace-install/argo-server-rbac/kustomization.yaml
+++ /dev/null
@@ -1,5 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
-- argo-server-role.yaml
-- argo-server-rolebinding.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/namespace-install/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/namespace-install/kustomization.yaml
deleted file mode 100644
index a3c7fe6..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/namespace-install/kustomization.yaml
+++ /dev/null
@@ -1,19 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
- - ../base
- - ./argo-server-rbac
- - ./workflow-controller-rbac
-patchesJson6902:
- - target:
- version: v1
- group: apps
- kind: Deployment
- name: workflow-controller
- path: ./overlays/workflow-controller-deployment.yaml
- - target:
- version: v1
- group: apps
- kind: Deployment
- name: argo-server
- path: ./overlays/argo-server-deployment.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/namespace-install/overlays/argo-server-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/namespace-install/overlays/argo-server-deployment.yaml
deleted file mode 100644
index 90fd8a5..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/namespace-install/overlays/argo-server-deployment.yaml
+++ /dev/null
@@ -1,3 +0,0 @@
-- op: add
- path: /spec/template/spec/containers/0/args/-
- value: --namespaced
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/namespace-install/overlays/workflow-controller-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/namespace-install/overlays/workflow-controller-deployment.yaml
deleted file mode 100644
index 90fd8a5..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/namespace-install/overlays/workflow-controller-deployment.yaml
+++ /dev/null
@@ -1,3 +0,0 @@
-- op: add
- path: /spec/template/spec/containers/0/args/-
- value: --namespaced
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/namespace-install/workflow-controller-rbac/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/namespace-install/workflow-controller-rbac/kustomization.yaml
deleted file mode 100644
index 1f9553f..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/namespace-install/workflow-controller-rbac/kustomization.yaml
+++ /dev/null
@@ -1,5 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
-- workflow-controller-role.yaml
-- workflow-controller-rolebinding.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/namespace-install/workflow-controller-rbac/workflow-controller-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/namespace-install/workflow-controller-rbac/workflow-controller-role.yaml
deleted file mode 100644
index 792e11b..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/namespace-install/workflow-controller-rbac/workflow-controller-role.yaml
+++ /dev/null
@@ -1,125 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata: # kpt-merge: /argo-role
- name: argo-role
- annotations:
- internal.kpt.dev/upstream-identifier: 'rbac.authorization.k8s.io|Role|default|argo-role'
-rules:
- - apiGroups:
- - coordination.k8s.io
- resources:
- - leases
- verbs:
- - create
- - get
- - update
- - apiGroups:
- - ""
- resources:
- - pods
- - pods/exec
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
- - apiGroups:
- - ""
- resources:
- - configmaps
- verbs:
- - get
- - watch
- - list
- - apiGroups:
- - ""
- resources:
- - persistentvolumeclaims
- - persistentvolumeclaims/finalizers
- verbs:
- - create
- - update
- - delete
- - get
- - apiGroups:
- - argoproj.io
- resources:
- - workflows
- - workflows/finalizers
- - workflowtasksets
- - workflowtasksets/finalizers
- verbs:
- - get
- - list
- - watch
- - update
- - patch
- - delete
- - create
- - apiGroups:
- - argoproj.io
- resources:
- - workflowtemplates
- - workflowtemplates/finalizers
- verbs:
- - get
- - list
- - watch
- - apiGroups:
- - ""
- resources:
- - serviceaccounts
- verbs:
- - get
- - list
- - apiGroups:
- - argoproj.io
- resources:
- - workflowtaskresults
- verbs:
- - list
- - watch
- - deletecollection
- - apiGroups:
- - ""
- resources:
- - serviceaccounts
- verbs:
- - get
- - list
- - apiGroups:
- - ""
- resources:
- - secrets
- verbs:
- - get
- - apiGroups:
- - argoproj.io
- resources:
- - cronworkflows
- - cronworkflows/finalizers
- verbs:
- - get
- - list
- - watch
- - update
- - patch
- - delete
- - apiGroups:
- - ""
- resources:
- - events
- verbs:
- - create
- - patch
- - apiGroups:
- - "policy"
- resources:
- - poddisruptionbudgets
- verbs:
- - create
- - get
- - delete
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/namespace-install/workflow-controller-rbac/workflow-controller-rolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/namespace-install/workflow-controller-rbac/workflow-controller-rolebinding.yaml
deleted file mode 100644
index f66a510..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/namespace-install/workflow-controller-rbac/workflow-controller-rolebinding.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata: # kpt-merge: /argo-binding
- name: argo-binding
- annotations:
- internal.kpt.dev/upstream-identifier: 'rbac.authorization.k8s.io|RoleBinding|default|argo-binding'
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: argo-role
-subjects:
-- kind: ServiceAccount
- name: argo
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/agent-default-rolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/agent-default-rolebinding.yaml
deleted file mode 100644
index 1e376fa..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/agent-default-rolebinding.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata: # kpt-merge: /agent-default
- name: agent-default
- annotations:
- internal.kpt.dev/upstream-identifier: 'rbac.authorization.k8s.io|RoleBinding|default|agent-default'
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: agent
-subjects:
- - kind: ServiceAccount
- name: default
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/agent-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/agent-role.yaml
deleted file mode 100644
index 4f4cb9e..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/agent-role.yaml
+++ /dev/null
@@ -1,25 +0,0 @@
-# https://argoproj.github.io/argo-workflows/workflow-rbac/
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata: # kpt-merge: /agent
- name: agent
- annotations:
- workflows.argoproj.io/description: |
- This is the minimum recommended permissions needed if you want to use the agent, e.g. for HTTP or plugin templates.
-
- If <= v3.2 you must replace `workflowtasksets/status` with `patch workflowtasksets`.
- internal.kpt.dev/upstream-identifier: 'rbac.authorization.k8s.io|Role|default|agent'
-rules:
- - apiGroups:
- - argoproj.io
- resources:
- - workflowtasksets
- verbs:
- - list
- - watch
- - apiGroups:
- - argoproj.io
- resources:
- - workflowtasksets/status
- verbs:
- - patch
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/argo-server-sso-secret.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/argo-server-sso-secret.yaml
deleted file mode 100644
index c4e6d5c..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/argo-server-sso-secret.yaml
+++ /dev/null
@@ -1,9 +0,0 @@
-kind: Secret
-apiVersion: v1
-metadata: # kpt-merge: /argo-server-sso
- name: argo-server-sso
- annotations:
- internal.kpt.dev/upstream-identifier: '|Secret|default|argo-server-sso'
-stringData:
- clientID: argo-server
- clientSecret: ZXhhbXBsZS1hcHAtc2VjcmV0
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/artifact-repositories-configmap.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/artifact-repositories-configmap.yaml
deleted file mode 100644
index c0e4409..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/artifact-repositories-configmap.yaml
+++ /dev/null
@@ -1,35 +0,0 @@
-apiVersion: v1
-kind: ConfigMap
-metadata: # kpt-merge: /artifact-repositories
- name: artifact-repositories
- annotations:
- # you'll want to change the default over time, e.g. when you move to new storage solution,
- # so we recommend you version them from the outset by suffixing the version
- workflows.argoproj.io/default-artifact-repository: default-v1
- internal.kpt.dev/upstream-identifier: '|ConfigMap|default|artifact-repositories'
-data:
- default-v1: |
- archiveLogs: true
- s3:
- bucket: my-bucket
- endpoint: minio:9000
- insecure: true
- accessKeySecret:
- name: my-minio-cred
- key: accesskey
- secretKeySecret:
- name: my-minio-cred
- key: secretkey
- my-key: |
- archiveLogs: true
- s3:
- bucket: my-bucket
- endpoint: minio:9000
- insecure: true
- accessKeySecret:
- name: my-minio-cred
- key: accesskey
- secretKeySecret:
- name: my-minio-cred
- key: secretkey
- empty: ""
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/cluster-workflow-template-rbac.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/cluster-workflow-template-rbac.yaml
deleted file mode 100644
index 74c5308..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/cluster-workflow-template-rbac.yaml
+++ /dev/null
@@ -1,66 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata: # kpt-merge: /argo-server-clusterworkflowtemplate-role
- name: argo-server-clusterworkflowtemplate-role
- annotations:
- internal.kpt.dev/upstream-identifier: 'rbac.authorization.k8s.io|ClusterRole|default|argo-server-clusterworkflowtemplate-role'
-rules:
- - apiGroups:
- - argoproj.io
- resources:
- - clusterworkflowtemplates
- - clusterworkflowtemplates/finalizers
- verbs:
- - create
- - delete
- - watch
- - get
- - list
- - watch
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata: # kpt-merge: /argo-clusterworkflowtemplate-role
- name: argo-clusterworkflowtemplate-role
- annotations:
- internal.kpt.dev/upstream-identifier: 'rbac.authorization.k8s.io|ClusterRole|default|argo-clusterworkflowtemplate-role'
-rules:
- - apiGroups:
- - argoproj.io
- resources:
- - clusterworkflowtemplates
- - clusterworkflowtemplates/finalizers
- verbs:
- - get
- - list
- - watch
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata: # kpt-merge: /argo-clusterworkflowtemplate-role-binding
- name: argo-clusterworkflowtemplate-role-binding
- annotations:
- internal.kpt.dev/upstream-identifier: 'rbac.authorization.k8s.io|ClusterRoleBinding|default|argo-clusterworkflowtemplate-role-binding'
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: argo-clusterworkflowtemplate-role
-subjects:
- - kind: ServiceAccount
- name: argo
- namespace: argo
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata: # kpt-merge: /argo-server-clusterworkflowtemplate-role-binding
- name: argo-server-clusterworkflowtemplate-role-binding
- annotations:
- internal.kpt.dev/upstream-identifier: 'rbac.authorization.k8s.io|ClusterRoleBinding|default|argo-server-clusterworkflowtemplate-role-binding'
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: argo-server-clusterworkflowtemplate-role
-subjects:
- - kind: ServiceAccount
- name: argo-server
- namespace: argo
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/executor-default-rolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/executor-default-rolebinding.yaml
deleted file mode 100644
index 8c06081..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/executor-default-rolebinding.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata: # kpt-merge: /executor-default
- name: executor-default
- annotations:
- internal.kpt.dev/upstream-identifier: 'rbac.authorization.k8s.io|RoleBinding|default|executor-default'
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: executor
-subjects:
- - kind: ServiceAccount
- name: default
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/executor/docker/executor-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/executor/docker/executor-role.yaml
deleted file mode 100644
index 6cdf135..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/executor/docker/executor-role.yaml
+++ /dev/null
@@ -1,18 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata: # kpt-merge: /executor
- name: executor
- annotations:
- workflows.argoproj.io/description: |
- Recommended minimum permissions for the `docker` executor.
-
- This executor is superseded by the `emmisary` executor, so we do not recommend you use it anymore.
- internal.kpt.dev/upstream-identifier: 'rbac.authorization.k8s.io|Role|default|executor'
-rules:
- - apiGroups:
- - argoproj.io
- resources:
- - workflowtaskresults
- verbs:
- - create
- - patch
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/executor/emissary/executor-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/executor/emissary/executor-role.yaml
deleted file mode 100644
index 99d1bfd..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/executor/emissary/executor-role.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata: # kpt-merge: /executor
- name: executor
- annotations:
- workflows.argoproj.io/description: |
- Recomended minimum permissions for the `emissary` executor.
- internal.kpt.dev/upstream-identifier: 'rbac.authorization.k8s.io|Role|default|executor'
-rules:
- - apiGroups:
- - argoproj.io
- resources:
- - workflowtaskresults
- verbs:
- - create
- - patch
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/executor/k8sapi/executor-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/executor/k8sapi/executor-role.yaml
deleted file mode 100644
index fa999ed..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/executor/k8sapi/executor-role.yaml
+++ /dev/null
@@ -1,37 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata: # kpt-merge: /executor
- name: executor
- annotations:
- workflows.argoproj.io/description: |
- Recommended minimum permissions for `k8siapi` executor.
-
- This executor is superseded by the `emmisary` executor, so we do not recommend you use it anymore.
- internal.kpt.dev/upstream-identifier: 'rbac.authorization.k8s.io|Role|default|executor'
-rules:
- - apiGroups:
- - argoproj.io
- resources:
- - workflowtaskresults
- verbs:
- - create
- - patch
- - apiGroups:
- - ""
- resources:
- - pods
- verbs:
- - get
- - watch
- - apiGroups:
- - ""
- resources:
- - pods/exec
- verbs:
- - create
- - apiGroups:
- - ""
- resources:
- - pods/log
- verbs:
- - get
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/executor/kubelet/executor-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/executor/kubelet/executor-role.yaml
deleted file mode 100644
index 278af07..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/executor/kubelet/executor-role.yaml
+++ /dev/null
@@ -1,18 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata: # kpt-merge: /executor
- name: executor
- annotations:
- workflows.argoproj.io/description: |
- Recommended minimum permissions for `kubelet` executor.
-
- This executor is superseded by the `emmisary` executor, so we do not recommend you use it anymore.
- internal.kpt.dev/upstream-identifier: 'rbac.authorization.k8s.io|Role|default|executor'
-rules:
- - apiGroups:
- - argoproj.io
- resources:
- - workflowtaskresults
- verbs:
- - create
- - patch
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/executor/kubelet/kubelet-executor-clusterrole.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/executor/kubelet/kubelet-executor-clusterrole.yaml
deleted file mode 100644
index 1e13b64..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/executor/kubelet/kubelet-executor-clusterrole.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata: # kpt-merge: /kubelet-executor
- name: kubelet-executor
- annotations:
- internal.kpt.dev/upstream-identifier: 'rbac.authorization.k8s.io|ClusterRole|default|kubelet-executor'
-rules:
- # This allows the kubelet executor.
- - apiGroups:
- - ""
- resources:
- - nodes/proxy
- verbs:
- - get
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/executor/kubelet/kubelet-executor-default-clusterrolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/executor/kubelet/kubelet-executor-default-clusterrolebinding.yaml
deleted file mode 100644
index fc1f17b..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/executor/kubelet/kubelet-executor-default-clusterrolebinding.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata: # kpt-merge: /kubelet-executor-default
- name: kubelet-executor-default
- annotations:
- internal.kpt.dev/upstream-identifier: 'rbac.authorization.k8s.io|ClusterRoleBinding|default|kubelet-executor-default'
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: kubelet-executor
-subjects:
- - kind: ServiceAccount
- name: default
- namespace: argo
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/executor/pns/executor-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/executor/pns/executor-role.yaml
deleted file mode 100644
index bb41915..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/executor/pns/executor-role.yaml
+++ /dev/null
@@ -1,28 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata: # kpt-merge: /executor
- name: executor
- annotations:
- workflows.argoproj.io/description: |
- Recomended minimum permissions for `pns` executor.
- internal.kpt.dev/upstream-identifier: 'rbac.authorization.k8s.io|Role|default|executor'
-rules:
- - apiGroups:
- - argoproj.io
- resources:
- - workflowtaskresults
- verbs:
- - create
- - patch
- - apiGroups:
- - ""
- resources:
- - pods
- verbs:
- - watch
- - apiGroups:
- - ""
- resources:
- - pods/log
- verbs:
- - get
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/kustomization.yaml
deleted file mode 100644
index ceef08a..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/kustomization.yaml
+++ /dev/null
@@ -1,20 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
- - ../../namespace-install
- - minio
- - webhooks
- - argo-server-sso-secret.yaml
- - executor/emissary/executor-role.yaml
- - executor-default-rolebinding.yaml
- - pod-manager-role.yaml
- - pod-manager-default-rolebinding.yaml
- - workflow-manager-role.yaml
- - workflow-manager-default-rolebinding.yaml
- - agent-role.yaml
- - agent-default-rolebinding.yaml
- - cluster-workflow-template-rbac.yaml
- - artifact-repositories-configmap.yaml
-patchesStrategicMerge:
- - overlays/workflow-controller-configmap.yaml
- - overlays/argo-server-deployment.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/memoizer-default-rolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/memoizer-default-rolebinding.yaml
deleted file mode 100644
index 7fbe2bb..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/memoizer-default-rolebinding.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata: # kpt-merge: /memoizer-default
- name: memoizer-default
- annotations:
- internal.kpt.dev/upstream-identifier: 'rbac.authorization.k8s.io|RoleBinding|default|memoizer-default'
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: memoizer
-subjects:
- - kind: ServiceAccount
- name: default
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/memoizer-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/memoizer-role.yaml
deleted file mode 100644
index 7b71bf6..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/memoizer-role.yaml
+++ /dev/null
@@ -1,17 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata: # kpt-merge: /memoizer
- name: memoizer
- annotations:
- workflows.argoproj.io/description: |
- Only needed if you are using ConfigMap-based cache for memoization.
- internal.kpt.dev/upstream-identifier: 'rbac.authorization.k8s.io|Role|default|memoizer'
-rules:
- - apiGroups:
- - ""
- resources:
- - configmaps
- verbs:
- - create
- - get
- - update
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/minio/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/minio/kustomization.yaml
deleted file mode 100644
index 1199d38..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/minio/kustomization.yaml
+++ /dev/null
@@ -1,6 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
- - minio-deploy.yaml
- - minio-service.yaml
- - my-minio-cred-secret.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/minio/minio-deploy.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/minio/minio-deploy.yaml
deleted file mode 100644
index 9d67f58..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/minio/minio-deploy.yaml
+++ /dev/null
@@ -1,47 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata: # kpt-merge: /minio
- name: minio
- labels:
- app: minio
- annotations:
- internal.kpt.dev/upstream-identifier: 'apps|Deployment|default|minio'
-spec:
- selector:
- matchLabels:
- app: minio
- template:
- metadata:
- labels:
- app: minio
- spec:
- containers:
- - name: main
- image: minio/minio
- env:
- - name: MINIO_ACCESS_KEY
- value: admin
- - name: MINIO_SECRET_KEY
- value: password
- ports:
- - containerPort: 9000
- name: api
- - containerPort: 9001
- name: dashboard
- command: [minio, server, --console-address, ":9001", /data]
- lifecycle:
- postStart:
- exec:
- command: [mkdir, -p, /data/my-bucket]
- readinessProbe:
- httpGet:
- path: /minio/health/ready
- port: 9000
- initialDelaySeconds: 5
- periodSeconds: 10
- livenessProbe:
- httpGet:
- path: /minio/health/live
- port: 9000
- initialDelaySeconds: 5
- periodSeconds: 10
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/minio/minio-service.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/minio/minio-service.yaml
deleted file mode 100644
index 37437d1..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/minio/minio-service.yaml
+++ /dev/null
@@ -1,20 +0,0 @@
-apiVersion: v1
-kind: Service
-metadata: # kpt-merge: /minio
- name: minio
- labels:
- app: minio
- annotations:
- internal.kpt.dev/upstream-identifier: '|Service|default|minio'
-spec:
- selector:
- app: minio
- ports:
- - port: 9000
- name: api
- protocol: TCP
- targetPort: 9000
- - port: 9001
- name: dashboard
- protocol: TCP
- targetPort: 9001
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/minio/my-minio-cred-secret.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/minio/my-minio-cred-secret.yaml
deleted file mode 100644
index a8b92a6..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/minio/my-minio-cred-secret.yaml
+++ /dev/null
@@ -1,12 +0,0 @@
-apiVersion: v1
-stringData:
- accesskey: admin
- secretkey: password
-kind: Secret
-metadata: # kpt-merge: /my-minio-cred
- name: my-minio-cred
- labels:
- app: minio
- annotations:
- internal.kpt.dev/upstream-identifier: '|Secret|default|my-minio-cred'
-type: Opaque
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/overlays/argo-server-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/overlays/argo-server-deployment.yaml
deleted file mode 100644
index ccc1b04..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/overlays/argo-server-deployment.yaml
+++ /dev/null
@@ -1,18 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata: # kpt-merge: /argo-server
- name: argo-server
- annotations:
- internal.kpt.dev/upstream-identifier: 'apps|Deployment|default|argo-server'
-spec:
- template:
- spec:
- containers:
- - name: argo-server
- args:
- - server
- - --namespaced
- - --auth-mode
- - server
- - --auth-mode
- - client
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/overlays/workflow-controller-configmap.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/overlays/workflow-controller-configmap.yaml
deleted file mode 100644
index 4374b02..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/overlays/workflow-controller-configmap.yaml
+++ /dev/null
@@ -1,62 +0,0 @@
-apiVersion: v1
-data:
- executor: |
- resources:
- requests:
- cpu: 10m
- memory: 64Mi
- containerRuntimeExecutors: |
- - name: emissary
- selector:
- matchLabels:
- workflows.argoproj.io/container-runtime-executor: emissary
- - name: pns
- selector:
- matchLabels:
- workflows.argoproj.io/container-runtime-executor: pns
- images: |
- argoproj/argosay:v1:
- command: [cowsay]
- argoproj/argosay:v2:
- command: [/argosay]
- docker/whalesay:latest:
- command: [cowsay]
- python:alpine3.6:
- command: [python3]
- artifactRepository: |
- s3:
- bucket: my-bucket
- endpoint: minio:9000
- insecure: true
- accessKeySecret:
- name: my-minio-cred
- key: accesskey
- secretKeySecret:
- name: my-minio-cred
- key: secretkey
- metricsConfig: |
- enabled: true
- path: /metrics
- port: 9090
- namespaceParallelism: "10"
- links: |
- - name: Workflow Link
- scope: workflow
- url: http://logging-facility?namespace=${metadata.namespace}&workflowName=${metadata.name}&startedAt=${status.startedAt}&finishedAt=${status.finishedAt}
- - name: Pod Link
- scope: pod
- url: http://logging-facility?namespace=${metadata.namespace}&podName=${metadata.name}&startedAt=${status.startedAt}&finishedAt=${status.finishedAt}
- - name: Pod Logs Link
- scope: pod-logs
- url: http://logging-facility?namespace=${metadata.namespace}&podName=${metadata.name}&startedAt=${status.startedAt}&finishedAt=${status.finishedAt}
- - name: Event Source Logs Link
- scope: event-source-logs
- url: http://logging-facility?namespace=${metadata.namespace}&podName=${metadata.name}&startedAt=${status.startedAt}&finishedAt=${status.finishedAt}
- - name: Sensor Logs Link
- scope: sensor-logs
- url: http://logging-facility?namespace=${metadata.namespace}&podName=${metadata.name}&startedAt=${status.startedAt}&finishedAt=${status.finishedAt}
-kind: ConfigMap
-metadata: # kpt-merge: /workflow-controller-configmap
- name: workflow-controller-configmap
- annotations:
- internal.kpt.dev/upstream-identifier: '|ConfigMap|default|workflow-controller-configmap'
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/pod-manager-default-rolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/pod-manager-default-rolebinding.yaml
deleted file mode 100644
index 918bfa4..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/pod-manager-default-rolebinding.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata: # kpt-merge: /pod-manager-default
- name: pod-manager-default
- annotations:
- internal.kpt.dev/upstream-identifier: 'rbac.authorization.k8s.io|RoleBinding|default|pod-manager-default'
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: pod-manager
-subjects:
- - kind: ServiceAccount
- name: default
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/pod-manager-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/pod-manager-role.yaml
deleted file mode 100644
index b360a0f..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/pod-manager-role.yaml
+++ /dev/null
@@ -1,18 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata: # kpt-merge: /pod-manager
- name: pod-manager
- annotations:
- workflows.argoproj.io/description: |
- This is an example of the permissions you would need if you wanted to use a resource template to create and manage
- other pods. The same pattern would be suitable for other resurces, e.g. a service
- internal.kpt.dev/upstream-identifier: 'rbac.authorization.k8s.io|Role|default|pod-manager'
-rules:
- - apiGroups:
- - ""
- resources:
- - pods
- verbs:
- - create
- - get
- - patch
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/prometheus/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/prometheus/kustomization.yaml
deleted file mode 100644
index 32db823..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/prometheus/kustomization.yaml
+++ /dev/null
@@ -1,6 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
- - prometheus-deployment.yaml
- - prometheus-config-cluster.yaml
- - prometheus-service.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/prometheus/prometheus-config-cluster.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/prometheus/prometheus-config-cluster.yaml
deleted file mode 100644
index 12fd006..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/prometheus/prometheus-config-cluster.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: v1
-kind: ConfigMap
-metadata: # kpt-merge: /prometheus-config
- name: prometheus-config
- annotations:
- internal.kpt.dev/upstream-identifier: '|ConfigMap|default|prometheus-config'
-data:
- prometheus.yaml: |
- global:
- scrape_interval: 15s
- scrape_configs:
- - job_name: 'argo'
- static_configs:
- - targets: ['workflow-controller-metrics:9090', 'argo-server:2746']
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/prometheus/prometheus-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/prometheus/prometheus-deployment.yaml
deleted file mode 100644
index d1ea2cf..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/prometheus/prometheus-deployment.yaml
+++ /dev/null
@@ -1,37 +0,0 @@
-# This manifests creates a minimal Prometheus server to scrape and display the metrics emitted by the workflow
-# controller. To open this server, create an external IP for the prometheus service or use kubectl port-forward,
-# then open:
-#
-# localhost:9091/graph
-#
-# Note: this assumes the workflow-controller is emitting metrics in the default port (9090). This will need to
-# be modified if the default is overriden.
-apiVersion: apps/v1
-kind: Deployment
-metadata: # kpt-merge: /prometheus
- name: prometheus
- annotations:
- internal.kpt.dev/upstream-identifier: 'apps|Deployment|default|prometheus'
-spec:
- replicas: 1
- selector:
- matchLabels:
- app: prometheus
- template:
- metadata:
- labels:
- app: prometheus
- name: prometheus
- spec:
- containers:
- - name: prometheus
- image: prom/prometheus
- args:
- - --config.file=/config/prometheus.yaml
- volumeMounts:
- - name: config
- mountPath: /config
- volumes:
- - name: config
- configMap:
- name: prometheus-config
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/prometheus/prometheus-service.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/prometheus/prometheus-service.yaml
deleted file mode 100644
index 018bdcf..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/prometheus/prometheus-service.yaml
+++ /dev/null
@@ -1,12 +0,0 @@
-apiVersion: v1
-kind: Service
-metadata: # kpt-merge: /prometheus
- name: prometheus
- annotations:
- internal.kpt.dev/upstream-identifier: '|Service|default|prometheus'
-spec:
- selector:
- app: prometheus
- ports:
- - name: metrics
- port: 9090
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/webhooks/argo-workflows-webhook-clients-secret.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/webhooks/argo-workflows-webhook-clients-secret.yaml
deleted file mode 100644
index 7de2408..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/webhooks/argo-workflows-webhook-clients-secret.yaml
+++ /dev/null
@@ -1,24 +0,0 @@
-kind: Secret
-apiVersion: v1
-metadata: # kpt-merge: /argo-workflows-webhook-clients
- name: argo-workflows-webhook-clients
- annotations:
- internal.kpt.dev/upstream-identifier: '|Secret|default|argo-workflows-webhook-clients'
-# The data keys must be the name of a service account.
-stringData:
- # https://support.atlassian.com/bitbucket-cloud/docs/manage-webhooks/
- bitbucket.org: |
- type: bitbucket
- secret: "my-uuid"
- # https://confluence.atlassian.com/bitbucketserver/managing-webhooks-in-bitbucket-server-938025878.html
- bitbucketserver: |
- type: bitbucketserver
- secret: "shh!"
- # https://developer.github.com/webhooks/securing/
- github.com: |
- type: github
- secret: "shh!"
- # https://docs.gitlab.com/ee/user/project/integrations/webhooks.html
- gitlab.com: |-
- type: gitlab
- secret: "shh!"
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/webhooks/github.com-rolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/webhooks/github.com-rolebinding.yaml
deleted file mode 100644
index 93e3d44..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/webhooks/github.com-rolebinding.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata: # kpt-merge: /github.com
- name: github.com
- annotations:
- internal.kpt.dev/upstream-identifier: 'rbac.authorization.k8s.io|RoleBinding|default|github.com'
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: submit-workflow-template
-subjects:
- - kind: ServiceAccount
- name: github.com
- namespace: argo
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/webhooks/github.com-sa.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/webhooks/github.com-sa.yaml
deleted file mode 100644
index d3d3f66..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/webhooks/github.com-sa.yaml
+++ /dev/null
@@ -1,6 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata: # kpt-merge: /github.com
- name: github.com
- annotations:
- internal.kpt.dev/upstream-identifier: '|ServiceAccount|default|github.com'
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/webhooks/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/webhooks/kustomization.yaml
deleted file mode 100644
index 162751c..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/webhooks/kustomization.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
- - submit-workflow-template-role.yaml
- - github.com-sa.yaml
- - github.com-rolebinding.yaml
- - argo-workflows-webhook-clients-secret.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/webhooks/submit-workflow-template-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/webhooks/submit-workflow-template-role.yaml
deleted file mode 100644
index 1efa8aa..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/webhooks/submit-workflow-template-role.yaml
+++ /dev/null
@@ -1,27 +0,0 @@
-# Just enough permissions to submit a workflow template.
-# You could tighten this further (but perhaps impractically) by using `resourceNames`
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata: # kpt-merge: /submit-workflow-template
- name: submit-workflow-template
- annotations:
- internal.kpt.dev/upstream-identifier: 'rbac.authorization.k8s.io|Role|default|submit-workflow-template'
-rules:
- - apiGroups:
- - argoproj.io
- resources:
- - workfloweventbindings
- verbs:
- - list
- - apiGroups:
- - argoproj.io
- resources:
- - workflowtemplates
- verbs:
- - get
- - apiGroups:
- - argoproj.io
- resources:
- - workflows
- verbs:
- - create
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/workflow-default-rolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/workflow-default-rolebinding.yaml
deleted file mode 100644
index 7d3489e..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/workflow-default-rolebinding.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata: # kpt-merge: /workflow-default-binding
- name: workflow-default-binding
- annotations:
- internal.kpt.dev/upstream-identifier: 'rbac.authorization.k8s.io|RoleBinding|default|workflow-default-binding'
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: workflow
-subjects:
- - kind: ServiceAccount
- name: default
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/workflow-manager-default-rolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/workflow-manager-default-rolebinding.yaml
deleted file mode 100644
index b7ee006..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/workflow-manager-default-rolebinding.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata: # kpt-merge: /workflow-manager-default
- name: workflow-manager-default
- annotations:
- internal.kpt.dev/upstream-identifier: 'rbac.authorization.k8s.io|RoleBinding|default|workflow-manager-default'
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: workflow-manager
-subjects:
- - kind: ServiceAccount
- name: default
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/workflow-manager-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/workflow-manager-role.yaml
deleted file mode 100644
index a912639..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/base/workflow-manager-role.yaml
+++ /dev/null
@@ -1,17 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata: # kpt-merge: /workflow-manager
- name: workflow-manager
- annotations:
- workflows.argoproj.io/description: |
- This is an example of the permissions you would need if you wanted to use a resource template to create and manage
- other workflows. The same pattern would be suitable for other resurces, e.g. a service
- internal.kpt.dev/upstream-identifier: 'rbac.authorization.k8s.io|Role|default|workflow-manager'
-rules:
- - apiGroups:
- - argoproj.io
- resources:
- - workflows
- verbs:
- - create
- - get
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/minimal/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/minimal/kustomization.yaml
deleted file mode 100644
index b376c09..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/minimal/kustomization.yaml
+++ /dev/null
@@ -1,6 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
- - ../base
-patchesStrategicMerge:
- - overlays/workflow-controller-configmap.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/minimal/overlays/workflow-controller-configmap.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/minimal/overlays/workflow-controller-configmap.yaml
deleted file mode 100644
index f3030c6..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/minimal/overlays/workflow-controller-configmap.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: v1
-data:
- retentionPolicy: |
- completed: 10
- failed: 3
- errored: 3
-kind: ConfigMap
-metadata: # kpt-merge: /workflow-controller-configmap
- name: workflow-controller-configmap
- annotations:
- internal.kpt.dev/upstream-identifier: '|ConfigMap|default|workflow-controller-configmap'
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/mysql/argo-mysql-config-secret.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/mysql/argo-mysql-config-secret.yaml
deleted file mode 100644
index 923e735..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/mysql/argo-mysql-config-secret.yaml
+++ /dev/null
@@ -1,12 +0,0 @@
-apiVersion: v1
-stringData:
- username: mysql
- password: password
-kind: Secret
-metadata: # kpt-merge: /argo-mysql-config
- name: argo-mysql-config
- labels:
- app: mysql
- annotations:
- internal.kpt.dev/upstream-identifier: '|Secret|default|argo-mysql-config'
-type: Opaque
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/mysql/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/mysql/kustomization.yaml
deleted file mode 100644
index edacf51..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/mysql/kustomization.yaml
+++ /dev/null
@@ -1,9 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
- - ../base
- - argo-mysql-config-secret.yaml
- - mysql-deployment.yaml
- - mysql-service.yaml
-patchesStrategicMerge:
- - overlays/workflow-controller-configmap.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/mysql/mysql-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/mysql/mysql-deployment.yaml
deleted file mode 100644
index cb26c26..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/mysql/mysql-deployment.yaml
+++ /dev/null
@@ -1,39 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata: # kpt-merge: /mysql
- name: mysql
- labels:
- app: mysql
- annotations:
- internal.kpt.dev/upstream-identifier: 'apps|Deployment|default|mysql'
-spec:
- selector:
- matchLabels:
- app: mysql
- template:
- metadata:
- name: mysql
- labels:
- app: mysql
- spec:
- containers:
- - name: main
- image: mysql:8
- env:
- - name: MYSQL_USER
- value: mysql
- - name: MYSQL_PASSWORD
- value: password
- - name: MYSQL_DATABASE
- value: argo
- - name: MYSQL_RANDOM_ROOT_PASSWORD
- value: "yes"
- ports:
- - containerPort: 3306
- readinessProbe:
- exec:
- command: ["mysql", "-u", "mysql", "-ppassword", "argo", "-e", "SELECT 1"]
- initialDelaySeconds: 15
- timeoutSeconds: 2
- nodeSelector:
- kubernetes.io/os: linux
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/mysql/mysql-service.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/mysql/mysql-service.yaml
deleted file mode 100644
index 4a9c3cf..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/mysql/mysql-service.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
-apiVersion: v1
-kind: Service
-metadata: # kpt-merge: /mysql
- name: mysql
- labels:
- app: mysql
- annotations:
- internal.kpt.dev/upstream-identifier: '|Service|default|mysql'
-spec:
- selector:
- app: mysql
- ports:
- - protocol: TCP
- port: 3306
- targetPort: 3306
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/mysql/overlays/workflow-controller-configmap.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/mysql/overlays/workflow-controller-configmap.yaml
deleted file mode 100644
index d8ef893..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/mysql/overlays/workflow-controller-configmap.yaml
+++ /dev/null
@@ -1,30 +0,0 @@
-apiVersion: v1
-data:
- persistence: |
- connectionPool:
- maxIdleConns: 100
- maxOpenConns: 0
- connMaxLifetime: 0s
- nodeStatusOffLoad: true
- archive: true
- archiveTTL: 7d
- mysql:
- host: mysql
- port: 3306
- database: argo
- tableName: argo_workflows
- userNameSecret:
- name: argo-mysql-config
- key: username
- passwordSecret:
- name: argo-mysql-config
- key: password
- retentionPolicy: |
- completed: 10
- failed: 3
- errored: 3
-kind: ConfigMap
-metadata: # kpt-merge: /workflow-controller-configmap
- name: workflow-controller-configmap
- annotations:
- internal.kpt.dev/upstream-identifier: '|ConfigMap|default|workflow-controller-configmap'
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/postgres/argo-postgres-config-secret.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/postgres/argo-postgres-config-secret.yaml
deleted file mode 100644
index 2678675..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/postgres/argo-postgres-config-secret.yaml
+++ /dev/null
@@ -1,12 +0,0 @@
-apiVersion: v1
-stringData:
- username: postgres
- password: password
-kind: Secret
-metadata: # kpt-merge: /argo-postgres-config
- name: argo-postgres-config
- labels:
- app: postgres
- annotations:
- internal.kpt.dev/upstream-identifier: '|Secret|default|argo-postgres-config'
-type: Opaque
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/postgres/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/postgres/kustomization.yaml
deleted file mode 100644
index a70a0cc..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/postgres/kustomization.yaml
+++ /dev/null
@@ -1,9 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
- - ../base
- - argo-postgres-config-secret.yaml
- - postgres-deployment.yaml
- - postgres-service.yaml
-patchesStrategicMerge:
- - overlays/workflow-controller-configmap.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/postgres/overlays/workflow-controller-configmap.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/postgres/overlays/workflow-controller-configmap.yaml
deleted file mode 100644
index 593f0a9..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/postgres/overlays/workflow-controller-configmap.yaml
+++ /dev/null
@@ -1,30 +0,0 @@
-apiVersion: v1
-data:
- persistence: |
- connectionPool:
- maxIdleConns: 100
- maxOpenConns: 0
- connMaxLifetime: 0s
- nodeStatusOffLoad: true
- archive: true
- archiveTTL: 7d
- postgresql:
- host: postgres
- port: 5432
- database: postgres
- tableName: argo_workflows
- userNameSecret:
- name: argo-postgres-config
- key: username
- passwordSecret:
- name: argo-postgres-config
- key: password
- retentionPolicy: |
- completed: 10
- failed: 3
- errored: 3
-kind: ConfigMap
-metadata: # kpt-merge: /workflow-controller-configmap
- name: workflow-controller-configmap
- annotations:
- internal.kpt.dev/upstream-identifier: '|ConfigMap|default|workflow-controller-configmap'
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/postgres/postgres-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/postgres/postgres-deployment.yaml
deleted file mode 100644
index ad54bc0..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/postgres/postgres-deployment.yaml
+++ /dev/null
@@ -1,33 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata: # kpt-merge: /postgres
- name: postgres
- labels:
- app: postgres
- annotations:
- internal.kpt.dev/upstream-identifier: 'apps|Deployment|default|postgres'
-spec:
- selector:
- matchLabels:
- app: postgres
- template:
- metadata:
- name: postgres
- labels:
- app: postgres
- spec:
- containers:
- - name: main
- image: postgres:12-alpine
- env:
- - name: POSTGRES_PASSWORD
- value: password
- ports:
- - containerPort: 5432
- readinessProbe:
- exec:
- command: ["psql", "-U", "postgres", "-c", "SELECT 1"]
- initialDelaySeconds: 15
- timeoutSeconds: 2
- nodeSelector:
- kubernetes.io/os: linux
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/postgres/postgres-service.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/postgres/postgres-service.yaml
deleted file mode 100644
index a7c913b..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/postgres/postgres-service.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
-apiVersion: v1
-kind: Service
-metadata: # kpt-merge: /postgres
- name: postgres
- labels:
- app: postgres
- annotations:
- internal.kpt.dev/upstream-identifier: '|Service|default|postgres'
-spec:
- selector:
- app: postgres
- ports:
- - protocol: TCP
- port: 5432
- targetPort: 5432
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/sso/dex/dev-svc.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/sso/dex/dev-svc.yaml
deleted file mode 100644
index 2b1a9c8..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/sso/dex/dev-svc.yaml
+++ /dev/null
@@ -1,12 +0,0 @@
-apiVersion: v1
-kind: Service
-metadata: # kpt-merge: /dex
- name: dex
- annotations:
- internal.kpt.dev/upstream-identifier: '|Service|default|dex'
-spec:
- ports:
- - name: http
- port: 5556
- selector:
- app: dex
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/sso/dex/dex-cm.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/sso/dex/dex-cm.yaml
deleted file mode 100644
index 767890f..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/sso/dex/dex-cm.yaml
+++ /dev/null
@@ -1,36 +0,0 @@
-apiVersion: v1
-# this contain secret data, so do not use in production
-data:
- # https://github.com/dexidp/dex/blob/master/examples/config-dev.yaml
- config.yaml: |
- issuer: http://dex:5556/dex
- storage:
- type: sqlite3
- config:
- file: ":memory:"
- web:
- http: 0.0.0.0:5556
- logger:
- level: debug
- staticClients:
- - id: argo-server
- redirectURIs:
- - http://localhost:2746/oauth2/callback
- - http://localhost:8080/oauth2/callback
- name: Argo Server
- secret: ZXhhbXBsZS1hcHAtc2VjcmV0
- connectors:
- - type: mockCallback
- id: mock
- name: Example
- enablePasswordDB: true
- staticPasswords:
- - email: admin@example.com
- hash: $2a$10$2b2cU8CPhOTaGrs1HRQuAueS7JTT5ZHsHSzYiFPm1leZck7Mc8T4W
- username: admin
- userID: 08a8684b-db88-4b73-90a9-3cd1661f5466
-kind: ConfigMap
-metadata: # kpt-merge: /dex
- name: dex
- annotations:
- internal.kpt.dev/upstream-identifier: '|ConfigMap|default|dex'
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/sso/dex/dex-deploy.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/sso/dex/dex-deploy.yaml
deleted file mode 100644
index 6b89c81..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/sso/dex/dex-deploy.yaml
+++ /dev/null
@@ -1,34 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata: # kpt-merge: /dex
- labels:
- app: dex
- name: dex
- annotations:
- internal.kpt.dev/upstream-identifier: 'apps|Deployment|default|dex'
-spec:
- selector:
- matchLabels:
- app: dex
- template:
- metadata:
- labels:
- app: dex
- spec:
- serviceAccountName: dex
- containers:
- - name: dex
- image: quay.io/dexidp/dex:v2.23.0
- args:
- - serve
- - /data/config.yaml
- ports:
- - name: http
- containerPort: 5556
- volumeMounts:
- - mountPath: /data
- name: config
- volumes:
- - name: config
- configMap:
- name: dex
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/sso/dex/dex-rb.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/sso/dex/dex-rb.yaml
deleted file mode 100644
index a30ccf2..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/sso/dex/dex-rb.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata: # kpt-merge: /dex
- name: dex
- annotations:
- internal.kpt.dev/upstream-identifier: 'rbac.authorization.k8s.io|RoleBinding|default|dex'
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: dex
-subjects:
- - kind: ServiceAccount
- name: dex
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/sso/dex/dex-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/sso/dex/dex-role.yaml
deleted file mode 100644
index 45cf878..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/sso/dex/dex-role.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata: # kpt-merge: /dex
- name: dex
- annotations:
- internal.kpt.dev/upstream-identifier: 'rbac.authorization.k8s.io|Role|default|dex'
-rules:
-- apiGroups:
- - ""
- resources:
- - secrets
- - configmaps
- verbs:
- - get
- - list
- - watch
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/sso/dex/dex-sa.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/sso/dex/dex-sa.yaml
deleted file mode 100644
index c47359e..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/sso/dex/dex-sa.yaml
+++ /dev/null
@@ -1,6 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata: # kpt-merge: /dex
- name: dex
- annotations:
- internal.kpt.dev/upstream-identifier: '|ServiceAccount|default|dex'
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/sso/dex/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/sso/dex/kustomization.yaml
deleted file mode 100644
index 8ea85c1..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/sso/dex/kustomization.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-commonLabels:
- "app.kubernetes.io/part-of": "dex"
-resources:
- - dex-cm.yaml
- - dex-role.yaml
- - dex-sa.yaml
- - dex-rb.yaml
- - dex-deploy.yaml
- - dev-svc.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/sso/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/sso/kustomization.yaml
deleted file mode 100644
index 70aafea..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/sso/kustomization.yaml
+++ /dev/null
@@ -1,8 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
- - ../base
- - dex
-patchesStrategicMerge:
- - overlays/workflow-controller-configmap.yaml
- - overlays/argo-server-sa.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/sso/overlays/argo-server-sa.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/sso/overlays/argo-server-sa.yaml
deleted file mode 100644
index 3865939..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/sso/overlays/argo-server-sa.yaml
+++ /dev/null
@@ -1,8 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata: # kpt-merge: /argo-server
- name: argo-server
- annotations:
- workflows.argoproj.io/rbac-rule: "'authors' in groups && email == 'kilgore@kilgore.trout'"
- workflows.argoproj.io/rbac-rule-precedence: "1"
- internal.kpt.dev/upstream-identifier: '|ServiceAccount|default|argo-server'
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/sso/overlays/workflow-controller-configmap.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/sso/overlays/workflow-controller-configmap.yaml
deleted file mode 100644
index bb879dc..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/quick-start/sso/overlays/workflow-controller-configmap.yaml
+++ /dev/null
@@ -1,23 +0,0 @@
-apiVersion: v1
-data:
- sso: |
- issuer: http://dex:5556/dex
- issuerAlias: http://dex:5556/dex
- clientId:
- name: argo-server-sso
- key: clientID
- clientSecret:
- name: argo-server-sso
- key: clientSecret
- redirectUrl: http://localhost:8080/oauth2/callback
- scopes:
- - groups
- - email
- - profile
- rbac:
- enabled: true
-kind: ConfigMap
-metadata: # kpt-merge: /workflow-controller-configmap
- name: workflow-controller-configmap
- annotations:
- internal.kpt.dev/upstream-identifier: '|ConfigMap|default|workflow-controller-configmap'
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/grafana/grafana-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/grafana/grafana-deployment.yaml
deleted file mode 100644
index be9b77b..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/grafana/grafana-deployment.yaml
+++ /dev/null
@@ -1,60 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: grafana
- namespace: kubeflow
- labels:
- app: grafana
-spec:
- replicas: 1
- selector:
- matchLabels:
- app: grafana
- revisionHistoryLimit: 10
- template:
- metadata:
- labels:
- app: grafana
- spec:
- containers:
- - name: grafana
- image: grafana/grafana:5.3.4
- imagePullPolicy: IfNotPresent
- ports:
- - containerPort: 3000
- name: grafana
- env:
- - name: GF_SECURITY_ADMIN_USER
- value: admin
- - name: GF_SECURITY_ADMIN_PASSWORD
- value: admin
- readinessProbe:
- failureThreshold: 10
- httpGet:
- path: /api/health
- port: 3000
- scheme: HTTP
- initialDelaySeconds: 60
- periodSeconds: 10
- successThreshold: 1
- timeoutSeconds: 30
- livenessProbe:
- failureThreshold: 3
- httpGet:
- path: /api/health
- port: 3000
- scheme: HTTP
- periodSeconds: 10
- successThreshold: 1
- timeoutSeconds: 1
- resources:
- limits:
- cpu: 100m
- memory: 256Mi
- requests:
- cpu: 100m
- memory: 256Mi
- securityContext:
- fsGroup: 472
- runAsUser: 472
-# TODO(jingzhang36): consider adding persistent volume if you would like the created dashboards to persist.
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/grafana/grafana-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/grafana/grafana-role.yaml
deleted file mode 100644
index e06c9e9..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/grafana/grafana-role.yaml
+++ /dev/null
@@ -1,19 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata:
- labels:
- app: grafana
- name: grafana
-rules:
-- apiGroups: [""]
- resources:
- - nodes
- - services
- - endpoints
- - pods
- verbs: ["get", "list", "watch"]
-- apiGroups:
- - extensions
- resources:
- - ingresses
- verbs: ["get", "list", "watch"]
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/grafana/grafana-rolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/grafana/grafana-rolebinding.yaml
deleted file mode 100644
index c9f8b62..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/grafana/grafana-rolebinding.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- labels:
- app: grafana
- name: grafana
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: grafana
-subjects:
-- kind: ServiceAccount
- name: grafana
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/grafana/grafana-sa.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/grafana/grafana-sa.yaml
deleted file mode 100644
index 1ec8b08..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/grafana/grafana-sa.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: grafana
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/grafana/grafana-service.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/grafana/grafana-service.yaml
deleted file mode 100644
index ced9c38..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/grafana/grafana-service.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: grafana
- name: grafana
-spec:
- selector:
- app: grafana
- ports:
- - name: grafanaui
- protocol: TCP
- port: 3000
- targetPort: 3000
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/grafana/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/grafana/kustomization.yaml
deleted file mode 100644
index fd1cf02..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/grafana/kustomization.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
-- grafana-deployment.yaml
-- grafana-service.yaml
-- grafana-role.yaml
-- grafana-sa.yaml
-- grafana-rolebinding.yaml
-images:
- - name: grafana/grafana
- newTag: 5.3.4
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/kfp-csi-s3/csi-s3-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/kfp-csi-s3/csi-s3-deployment.yaml
deleted file mode 100644
index 1146c46..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/kfp-csi-s3/csi-s3-deployment.yaml
+++ /dev/null
@@ -1,532 +0,0 @@
-
-# Source: dlf-chart/charts/csi-s3-chart/templates/csi-s3.yaml
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: kfp-csi-s3
- labels:
- app.kubernetes.io/name: "kubeflow"
- namespace: kubeflow
----
-# Source: dlf-chart/charts/csi-sidecars-rbac/templates/attacher-rbac.yaml
-# This YAML file contains all RBAC objects that are necessary to run external
-# CSI attacher.
-#
-# In production, each CSI driver deployment has to be customized:
-# - to avoid conflicts, use non-default namespace and different names
-# for non-namespaced entities like the ClusterRole
-# - decide whether the deployment replicates the external CSI
-# attacher, in which case leadership election must be enabled;
-# this influences the RBAC setup, see below
-
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: kfp-csi-attacher
- # replace with non-default namespace name
- namespace: kubeflow
- labels:
- app.kubernetes.io/name: "kubeflow"
----
-# Source: dlf-chart/charts/csi-sidecars-rbac/templates/provisioner-rbac.yaml
-# This YAML file contains all RBAC objects that are necessary to run external
-# CSI provisioner.
-#
-# In production, each CSI driver deployment has to be customized:
-# - to avoid conflicts, use non-default namespace and different names
-# for non-namespaced entities like the ClusterRole
-# - decide whether the deployment replicates the external CSI
-# provisioner, in which case leadership election must be enabled;
-# this influences the RBAC setup, see below
-
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: kfp-csi-provisioner
- # replace with non-default namespace name
- namespace: kubeflow
- labels:
- app.kubernetes.io/name: "kubeflow"
----
-# Source: dlf-chart/charts/csi-s3-chart/templates/storageclass.yaml
-kind: StorageClass
-apiVersion: storage.k8s.io/v1
-metadata:
- name: kfp-csi-s3
- labels:
- app.kubernetes.io/name: "kubeflow"
-provisioner: ch.ctrox.csi.s3-driver
-parameters:
- # specify which mounter to use
- # can be set to s3fs, goofys
- # OTHER OPTIONS NOT WORKING!
- mounter: goofys
-
- csi.storage.k8s.io/provisioner-secret-name: kfp-csi-secret
- csi.storage.k8s.io/provisioner-secret-namespace: kubeflow
-
- csi.storage.k8s.io/controller-publish-secret-name: kfp-csi-secret
- csi.storage.k8s.io/controller-publish-secret-namespace: kubeflow
-
- csi.storage.k8s.io/node-stage-secret-name: kfp-csi-secret
- csi.storage.k8s.io/node-stage-secret-namespace: kubeflow
-
- csi.storage.k8s.io/node-publish-secret-name: kfp-csi-secret
- csi.storage.k8s.io/node-publish-secret-namespace: kubeflow
----
-# Source: dlf-chart/charts/csi-s3-chart/templates/csi-s3.yaml
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: kfp-csi-s3
- labels:
- app.kubernetes.io/name: "kubeflow"
- namespace: kubeflow
-rules:
- - apiGroups: [""]
- resources: ["secrets"]
- verbs: ["get", "list"]
- - apiGroups: [""]
- resources: ["nodes"]
- verbs: ["get", "list", "update"]
- - apiGroups: [""]
- resources: ["namespaces"]
- verbs: ["get", "list"]
- - apiGroups: [""]
- resources: ["persistentvolumes"]
- verbs: ["get", "list", "watch", "update"]
- - apiGroups: ["storage.k8s.io"]
- resources: ["volumeattachments"]
- verbs: ["get", "list", "watch", "update","create"]
----
-# Source: dlf-chart/charts/csi-sidecars-rbac/templates/attacher-rbac.yaml
-# Attacher must be able to work with PVs, CSINodes and VolumeAttachments
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: kfp-external-attacher-runner
- labels:
- app.kubernetes.io/name: "kubeflow"
-rules:
- - apiGroups: [""]
- resources: ["persistentvolumes"]
- verbs: ["get", "list", "watch", "update", "patch"] #Adding "update"
- - apiGroups: ["storage.k8s.io"]
- resources: ["csinodes"]
- verbs: ["get", "list", "watch"]
- - apiGroups: ["storage.k8s.io"]
- resources: ["volumeattachments"]
- verbs: ["get", "list", "watch", "update", "patch", "create"] #Adding "update"
- - apiGroups: ["storage.k8s.io"]
- resources: ["volumeattachments/status"]
- verbs: ["patch"]
-#Secret permission is optional.
-#Enable it if you need value from secret.
-#For example, you have key `csi.storage.k8s.io/controller-publish-secret-name` in StorageClass.parameters
-#see https://kubernetes-csi.github.io/docs/secrets-and-credentials.html
-# - apiGroups: [""]
-# resources: ["secrets"]
-# verbs: ["get", "list"]
----
-# Source: dlf-chart/charts/csi-sidecars-rbac/templates/provisioner-rbac.yaml
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: kfp-external-provisioner-runner
- labels:
- app.kubernetes.io/name: "kubeflow"
- namespace: kubeflow
-rules:
- # The following rule should be uncommented for plugins that require secrets
- # for provisioning. #Enabling secrets
- - apiGroups: [""]
- resources: ["secrets"]
- verbs: ["get", "list"]
- - apiGroups: [""]
- resources: ["persistentvolumes"]
- verbs: ["get", "list", "watch", "create", "delete"]
- - apiGroups: [""]
- resources: ["persistentvolumeclaims"]
- verbs: ["get", "list", "watch", "update"]
- - apiGroups: ["storage.k8s.io"]
- resources: ["storageclasses"]
- verbs: ["get", "list", "watch"]
- - apiGroups: [""]
- resources: ["events"]
- verbs: ["list", "watch", "create", "update", "patch"]
- - apiGroups: ["snapshot.storage.k8s.io"]
- resources: ["volumesnapshots"]
- verbs: ["get", "list"]
- - apiGroups: ["snapshot.storage.k8s.io"]
- resources: ["volumesnapshotcontents"]
- verbs: ["get", "list"]
- - apiGroups: ["storage.k8s.io"]
- resources: ["csinodes"]
- verbs: ["get", "list", "watch"]
- - apiGroups: [""]
- resources: ["nodes"]
- verbs: ["get", "list", "watch"]
- # Access to volumeattachments is only needed when the CSI driver
- # has the PUBLISH_UNPUBLISH_VOLUME controller capability.
- # In that case, external-provisioner will watch volumeattachments
- # to determine when it is safe to delete a volume.
- - apiGroups: ["storage.k8s.io"]
- resources: ["volumeattachments"]
- verbs: ["get", "list", "watch","create"]
----
-# Source: dlf-chart/charts/csi-s3-chart/templates/csi-s3.yaml
-kind: ClusterRoleBinding
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: kfp-csi-s3
- labels:
- app.kubernetes.io/name: "kubeflow"
- namespace: kubeflow
-subjects:
- - kind: ServiceAccount
- name: kfp-csi-s3
- namespace: kubeflow
-roleRef:
- kind: ClusterRole
- name: kfp-csi-s3
- apiGroup: rbac.authorization.k8s.io
----
-# Source: dlf-chart/charts/csi-sidecars-rbac/templates/attacher-rbac.yaml
-kind: ClusterRoleBinding
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: kfp-csi-attacher-role
- labels:
- app.kubernetes.io/name: "kubeflow"
-subjects:
- - kind: ServiceAccount
- name: kfp-csi-attacher
- # replace with non-default namespace name
- namespace: kubeflow
-roleRef:
- kind: ClusterRole
- name: kfp-external-attacher-runner
- apiGroup: rbac.authorization.k8s.io
----
-# Source: dlf-chart/charts/csi-sidecars-rbac/templates/provisioner-rbac.yaml
-kind: ClusterRoleBinding
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: kfp-csi-provisioner-role
- labels:
- app.kubernetes.io/name: "kubeflow"
- namespace: kubeflow
-subjects:
- - kind: ServiceAccount
- name: kfp-csi-provisioner
- # replace with non-default namespace name
- namespace: kubeflow
-roleRef:
- kind: ClusterRole
- name: kfp-external-provisioner-runner
- apiGroup: rbac.authorization.k8s.io
----
-# Source: dlf-chart/charts/csi-sidecars-rbac/templates/attacher-rbac.yaml
-# Attacher must be able to work with configmaps or leases in the current namespace
-# if (and only if) leadership election is enabled
-kind: Role
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- # replace with non-default namespace name
- namespace: kubeflow
- name: kfp-external-attacher-cfg
- labels:
- app.kubernetes.io/name: "kubeflow"
-rules:
- - apiGroups: ["coordination.k8s.io"]
- resources: ["leases"]
- verbs: ["get", "watch", "list", "delete", "update", "create"]
----
-# Source: dlf-chart/charts/csi-sidecars-rbac/templates/provisioner-rbac.yaml
-# Provisioner must be able to work with endpoints in current namespace
-# if (and only if) leadership election is enabled
-kind: Role
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- # replace with non-default namespace name
- namespace: kubeflow
- name: kfp-external-provisioner-cfg
- labels:
- app.kubernetes.io/name: "kubeflow"
-rules:
- # Only one of the following rules for endpoints or leases is required based on
- # what is set for `--leader-election-type`. Endpoints are deprecated in favor of Leases.
- - apiGroups: [""]
- resources: ["endpoints"]
- verbs: ["get", "watch", "list", "delete", "update", "create"]
- - apiGroups: ["coordination.k8s.io"]
- resources: ["leases"]
- verbs: ["get", "watch", "list", "delete", "update", "create"]
- # Permissions for CSIStorageCapacity are only needed enabling the publishing
- # of storage capacity information.
- - apiGroups: ["storage.k8s.io"]
- resources: ["csistoragecapacities"]
- verbs: ["get", "list", "watch", "create", "update", "patch", "delete"]
- # The GET permissions below are needed for walking up the ownership chain
- # for CSIStorageCapacity. They are sufficient for deployment via
- # StatefulSet (only needs to get Pod) and Deployment (needs to get
- # Pod and then ReplicaSet to find the Deployment).
- - apiGroups: [""]
- resources: ["pods"]
- verbs: ["get"]
- - apiGroups: ["apps"]
- resources: ["replicasets"]
- verbs: ["get"]
----
-# Source: dlf-chart/charts/csi-sidecars-rbac/templates/attacher-rbac.yaml
-kind: RoleBinding
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: kfp-csi-attacher-role-cfg
- # replace with non-default namespace name
- namespace: kubeflow
- labels:
- app.kubernetes.io/name: "kubeflow"
-subjects:
- - kind: ServiceAccount
- name: kfp-csi-attacher
- # replace with non-default namespace name
- namespace: kubeflow
-roleRef:
- kind: Role
- name: kfp-external-attacher-cfg
- apiGroup: rbac.authorization.k8s.io
----
-# Source: dlf-chart/charts/csi-sidecars-rbac/templates/provisioner-rbac.yaml
-kind: RoleBinding
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: kfp-csi-provisioner-role-cfg
- # replace with non-default namespace name
- namespace: kubeflow
- labels:
- app.kubernetes.io/name: "kubeflow"
-subjects:
- - kind: ServiceAccount
- name: kfp-csi-provisioner
- # replace with non-default namespace name
- namespace: kubeflow
-roleRef:
- kind: Role
- name: kfp-external-provisioner-cfg
- apiGroup: rbac.authorization.k8s.io
----
-# Source: dlf-chart/charts/csi-s3-chart/templates/attacher.yaml
-# needed for StatefulSet
-kind: Service
-apiVersion: v1
-metadata:
- name: kfp-csi-attacher-s3
- namespace: kubeflow
- labels:
- app: kfp-csi-attacher-s3
- app.kubernetes.io/name: "kubeflow"
-spec:
- selector:
- app: kfp-csi-attacher-s3
- ports:
- - name: dummy
- port: 12345
----
-# Source: dlf-chart/charts/csi-s3-chart/templates/provisioner.yaml
-kind: Service
-apiVersion: v1
-metadata:
- name: kfp-csi-provisioner-s3
- namespace: kubeflow
- labels:
- app: kfp-csi-provisioner-s3
- app.kubernetes.io/name: "kubeflow"
-spec:
- selector:
- app: kfp-csi-provisioner-s3
- ports:
- - name: dummy
- port: 12345
----
-# Source: dlf-chart/charts/csi-s3-chart/templates/csi-s3.yaml
-kind: DaemonSet
-apiVersion: apps/v1
-metadata:
- name: kfp-csi-s3
- labels:
- app.kubernetes.io/name: "kubeflow"
- namespace: kubeflow
-spec:
- selector:
- matchLabels:
- app: kfp-csi-s3
- template:
- metadata:
- labels:
- app.kubernetes.io/name: "kubeflow"
- app: kfp-csi-s3
- spec:
- serviceAccountName: kfp-csi-s3
- containers:
- - name: driver-registrar
- image: "k8s.gcr.io/sig-storage/csi-node-driver-registrar:v2.3.0"
- imagePullPolicy: Always
- args:
- - --v=5
- - --csi-address=/csi/csi.sock
- - --kubelet-registration-path
- - $(kubelet-path)/kubelet/plugins/kfp-csi-s3/csi.sock
- securityContext:
- # This is necessary only for systems with SELinux, where
- # non-privileged sidecar containers cannot access unix domain socket
- # created by privileged CSI driver container.
- privileged: false
- env:
- - name: KUBE_NODE_NAME
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: spec.nodeName
- volumeMounts:
- - mountPath: /csi
- name: socket-dir
- - mountPath: /registration
- name: registration-dir
- - name: kfp-csi-s3
- image: "quay.io/datashim-io/csi-s3:latest"
- imagePullPolicy: Always
- args:
- - "--v=5"
- - "--endpoint=$(CSI_ENDPOINT)"
- - "--nodeid=$(KUBE_NODE_NAME)"
- env:
- - name: CSI_ENDPOINT
- value: unix:///csi/csi.sock
- - name: KUBE_NODE_NAME
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: spec.nodeName
- - name: cheap
- value: "off"
- securityContext:
- privileged: true
- volumeMounts:
- - mountPath: /csi
- name: socket-dir
- - mountPath: $(kubelet-path)/kubelet/pods
- mountPropagation: Bidirectional
- name: mountpoint-dir
- - mountPath: /dev
- name: dev-dir
- volumes:
- - hostPath:
- path: $(kubelet-path)/kubelet/plugins/kfp-csi-s3
- type: DirectoryOrCreate
- name: socket-dir
- - hostPath:
- path: $(kubelet-path)/kubelet/pods
- type: DirectoryOrCreate
- name: mountpoint-dir
- - hostPath:
- path: $(kubelet-path)/kubelet/plugins_registry
- type: Directory
- name: registration-dir
- - hostPath:
- path: /dev
- type: Directory
- name: dev-dir
----
-# Source: dlf-chart/charts/csi-s3-chart/templates/attacher.yaml
-kind: StatefulSet
-apiVersion: apps/v1
-metadata:
- name: kfp-csi-attacher-s3
- namespace: kubeflow
- labels:
- app.kubernetes.io/name: "kubeflow"
-spec:
- serviceName: "kfp-csi-attacher-s3"
- replicas: 1
- selector:
- matchLabels:
- app: kfp-csi-attacher-s3
- template:
- metadata:
- labels:
- app.kubernetes.io/name: "kubeflow"
- app: kfp-csi-attacher-s3
- spec:
- serviceAccountName: kfp-csi-attacher
- containers:
- - name: kfp-csi-attacher
- image: "k8s.gcr.io/sig-storage/csi-attacher:v3.3.0"
- imagePullPolicy: Always
- args:
- - --v=5
- - --csi-address=/csi/csi.sock
- securityContext:
- # This is necessary only for systems with SELinux, where
- # non-privileged sidecar containers cannot access unix domain socket
- # created by privileged CSI driver container.
- privileged: true
- volumeMounts:
- - mountPath: /csi
- name: socket-dir
- volumes:
- - hostPath:
- path: $(kubelet-path)/kubelet/plugins/kfp-csi-s3
- type: DirectoryOrCreate
- name: socket-dir
----
-# Source: dlf-chart/charts/csi-s3-chart/templates/provisioner.yaml
-kind: StatefulSet
-apiVersion: apps/v1
-metadata:
- name: kfp-csi-provisioner-s3
- labels:
- app.kubernetes.io/name: "kubeflow"
- namespace: kubeflow
-spec:
- serviceName: "kfp-csi-provisioner-s3"
- replicas: 1
- selector:
- matchLabels:
- app: kfp-csi-provisioner-s3
- template:
- metadata:
- labels:
- app: kfp-csi-provisioner-s3
- spec:
- serviceAccountName: kfp-csi-provisioner
- containers:
- - name: kfp-csi-provisioner
- image: "k8s.gcr.io/sig-storage/csi-provisioner:v2.2.2"
- imagePullPolicy: Always
- args:
- - -v=5
- - --csi-address=/csi/csi.sock
- - --feature-gates=Topology=true
- securityContext:
- # This is necessary only for systems with SELinux, where
- # non-privileged sidecar containers cannot access unix domain socket
- # created by privileged CSI driver container.
- privileged: true
- volumeMounts:
- - mountPath: /csi
- name: socket-dir
- volumes:
- - hostPath:
- path: $(kubelet-path)/kubelet/plugins/kfp-csi-s3
- type: DirectoryOrCreate
- name: socket-dir
----
-# Source: dlf-chart/charts/csi-s3-chart/templates/driver.yaml
-apiVersion: storage.k8s.io/v1
-kind: CSIDriver
-metadata:
- name: ch.ctrox.csi.s3-driver
-spec:
- attachRequired: false
- podInfoOnMount: false
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/kfp-csi-s3/csi-s3-secret.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/kfp-csi-s3/csi-s3-secret.yaml
deleted file mode 100644
index 340d79a..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/kfp-csi-s3/csi-s3-secret.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-apiVersion: v1
-data:
- accessKeyID: $(accessKeyID-base64)
- bucket: $(bucket-base64)
- endpoint: $(endpoint-base64)
- extract: ZmFsc2U=
- provision: ZmFsc2U=
- readonly: ZmFsc2U=
- region: ""
- remove-on-delete: ZmFsc2U=
- secretAccessKey: $(secretAccessKey-bas64)
-kind: Secret
-metadata:
- name: kfp-csi-secret
- namespace: kubeflow
-type: Opaque
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/kfp-csi-s3/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/kfp-csi-s3/kustomization.yaml
deleted file mode 100644
index 15728b8..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/kfp-csi-s3/kustomization.yaml
+++ /dev/null
@@ -1,123 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
-- csi-s3-deployment.yaml
-- csi-s3-secret.yaml
-
-namespace: kubeflow
-
-configMapGenerator:
-- name: csi-s3-parameters
- literals:
- # Update the credentials for the below fields before apply.
- - endpoint-base64=aHR0cDovL21pbmlvLXNlcnZpY2Uua3ViZWZsb3c6OTAwMA==
- - bucket-base64=bWxwaXBlbGluZQ==
- - accessKeyID-base64=bWluaW8=
- - secretAccessKey-bas64=bWluaW8xMjM=
- - kubelet-path=/var/lib
-generatorOptions:
- disableNameSuffixHash: true
-replacements:
-- source:
- name: csi-s3-parameters
- kind: ConfigMap
- version: v1
- fieldpath: data.endpoint-base64
- targets:
- - select:
- kind: Secret
- name: kfp-csi-secret
- fieldPaths:
- - data.endpoint
-- source:
- name: csi-s3-parameters
- kind: ConfigMap
- version: v1
- fieldpath: data.bucket-base64
- targets:
- - select:
- kind: Secret
- name: kfp-csi-secret
- fieldPaths:
- - data.bucket
-- source:
- name: csi-s3-parameters
- kind: ConfigMap
- version: v1
- fieldpath: data.accessKeyID-base64
- targets:
- - select:
- kind: Secret
- name: kfp-csi-secret
- fieldPaths:
- - data.accessKeyID
-- source:
- name: csi-s3-parameters
- kind: ConfigMap
- version: v1
- fieldpath: data.secretAccessKey-bas64
- targets:
- - select:
- kind: Secret
- name: kfp-csi-secret
- fieldPaths:
- - data.secretAccessKey
-- source:
- name: csi-s3-parameters
- kind: ConfigMap
- version: v1
- fieldpath: data.kubelet-path
- targets:
- - select:
- kind: DaemonSet
- name: kfp-csi-s3
- fieldPaths:
- - spec.template.spec.containers.[name=driver-registrar].args.3
- options:
- delimiter: /
- index: 0
- - select:
- kind: DaemonSet
- name: kfp-csi-s3
- fieldPaths:
- - spec.template.spec.containers.[name=kfp-csi-s3].volumeMounts.[name=mountpoint-dir].mountPath
- - spec.template.spec.volumes.[name=mountpoint-dir].hostPath.path
- options:
- delimiter: /
- index: 0
- - select:
- kind: DaemonSet
- name: kfp-csi-s3
- fieldPaths:
- - spec.template.spec.volumes.[name=registration-dir].hostPath.path
- options:
- delimiter: /
- index: 0
- - select:
- kind: DaemonSet
- name: kfp-csi-s3
- fieldPaths:
- - spec.template.spec.volumes.[name=socket-dir].hostPath.path
- options:
- delimiter: /
- index: 0
- - select:
- kind: StatefulSet
- name: kfp-csi-attacher-s3
- fieldPaths:
- - spec.template.spec.volumes.[name=socket-dir].hostPath.path
- options:
- delimiter: /
- index: 0
- - select:
- kind: StatefulSet
- name: kfp-csi-provisioner-s3
- fieldPaths:
- - spec.template.spec.volumes.[name=socket-dir].hostPath.path
- options:
- delimiter: /
- index: 0
-
-configurations:
-- params.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/kfp-csi-s3/params.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/kfp-csi-s3/params.yaml
deleted file mode 100644
index 64b1b0d..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/kfp-csi-s3/params.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-varReference:
-- path: data
- kind: Secret
-- path: spec/template/spec/volumes/hostPath/path
- kind: StatefulSet
-- path: spec/template/spec/containers[]/args[2]
- kind: DaemonSet
-- path: spec/template/spec/containers[]/volumeMounts[]/mountPath
- kind: DaemonSet
-- path: spec/template/spec/volumes/hostPath/path
- kind: DaemonSet
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/metacontroller/base/cluster-role-binding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/metacontroller/base/cluster-role-binding.yaml
deleted file mode 100644
index dc9c732..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/metacontroller/base/cluster-role-binding.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: meta-controller-cluster-role-binding
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: cluster-admin
-subjects:
-- kind: ServiceAccount
- name: meta-controller-service
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/metacontroller/base/crd.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/metacontroller/base/crd.yaml
deleted file mode 100644
index a2825fb..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/metacontroller/base/crd.yaml
+++ /dev/null
@@ -1,533 +0,0 @@
----
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- annotations:
- "api-approved.kubernetes.io": "unapproved, request not yet submitted"
- name: compositecontrollers.metacontroller.k8s.io
-spec:
- group: metacontroller.k8s.io
- names:
- kind: CompositeController
- listKind: CompositeControllerList
- plural: compositecontrollers
- shortNames:
- - cc
- - cctl
- singular: compositecontroller
- scope: Cluster
- versions:
- - name: v1alpha1
- schema:
- openAPIV3Schema:
- properties:
- apiVersion:
- description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
- type: string
- kind:
- description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
- type: string
- metadata:
- type: object
- spec:
- properties:
- childResources:
- items:
- properties:
- apiVersion:
- type: string
- resource:
- type: string
- updateStrategy:
- properties:
- method:
- type: string
- statusChecks:
- properties:
- conditions:
- items:
- properties:
- reason:
- type: string
- status:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- type: array
- type: object
- type: object
- required:
- - apiVersion
- - resource
- type: object
- type: array
- generateSelector:
- type: boolean
- hooks:
- properties:
- customize:
- properties:
- webhook:
- properties:
- path:
- type: string
- service:
- properties:
- name:
- type: string
- namespace:
- type: string
- port:
- format: int32
- type: integer
- protocol:
- type: string
- required:
- - name
- - namespace
- type: object
- timeout:
- type: string
- url:
- type: string
- type: object
- type: object
- finalize:
- properties:
- webhook:
- properties:
- path:
- type: string
- service:
- properties:
- name:
- type: string
- namespace:
- type: string
- port:
- format: int32
- type: integer
- protocol:
- type: string
- required:
- - name
- - namespace
- type: object
- timeout:
- type: string
- url:
- type: string
- type: object
- type: object
- postUpdateChild:
- properties:
- webhook:
- properties:
- path:
- type: string
- service:
- properties:
- name:
- type: string
- namespace:
- type: string
- port:
- format: int32
- type: integer
- protocol:
- type: string
- required:
- - name
- - namespace
- type: object
- timeout:
- type: string
- url:
- type: string
- type: object
- type: object
- preUpdateChild:
- properties:
- webhook:
- properties:
- path:
- type: string
- service:
- properties:
- name:
- type: string
- namespace:
- type: string
- port:
- format: int32
- type: integer
- protocol:
- type: string
- required:
- - name
- - namespace
- type: object
- timeout:
- type: string
- url:
- type: string
- type: object
- type: object
- sync:
- properties:
- webhook:
- properties:
- path:
- type: string
- service:
- properties:
- name:
- type: string
- namespace:
- type: string
- port:
- format: int32
- type: integer
- protocol:
- type: string
- required:
- - name
- - namespace
- type: object
- timeout:
- type: string
- url:
- type: string
- type: object
- type: object
- type: object
- parentResource:
- properties:
- apiVersion:
- type: string
- resource:
- type: string
- revisionHistory:
- properties:
- fieldPaths:
- items:
- type: string
- type: array
- type: object
- required:
- - apiVersion
- - resource
- type: object
- resyncPeriodSeconds:
- format: int32
- type: integer
- required:
- - parentResource
- type: object
- status:
- type: object
- required:
- - metadata
- - spec
- type: object
- served: true
- storage: true
- subresources:
- status: {}
-status:
- acceptedNames:
- kind: ""
- plural: ""
- conditions: []
- storedVersions: []
-
----
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- annotations:
- "api-approved.kubernetes.io": "unapproved, request not yet submitted"
- name: controllerrevisions.metacontroller.k8s.io
-spec:
- group: metacontroller.k8s.io
- names:
- kind: ControllerRevision
- listKind: ControllerRevisionList
- plural: controllerrevisions
- singular: controllerrevision
- scope: Namespaced
- versions:
- - name: v1alpha1
- schema:
- openAPIV3Schema:
- properties:
- apiVersion:
- description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
- type: string
- children:
- items:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- names:
- items:
- type: string
- type: array
- required:
- - apiGroup
- - kind
- - names
- type: object
- type: array
- kind:
- description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
- type: string
- metadata:
- type: object
- parentPatch:
- type: object
- required:
- - metadata
- - parentPatch
- type: object
- served: true
- storage: true
- subresources:
- status: {}
-status:
- acceptedNames:
- kind: ""
- plural: ""
- conditions: []
- storedVersions: []
-
----
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- annotations:
- "api-approved.kubernetes.io": "unapproved, request not yet submitted"
- name: decoratorcontrollers.metacontroller.k8s.io
-spec:
- group: metacontroller.k8s.io
- names:
- kind: DecoratorController
- listKind: DecoratorControllerList
- plural: decoratorcontrollers
- shortNames:
- - dec
- - decorators
- singular: decoratorcontroller
- scope: Cluster
- versions:
- - name: v1alpha1
- schema:
- openAPIV3Schema:
- properties:
- apiVersion:
- description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
- type: string
- kind:
- description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
- type: string
- metadata:
- type: object
- spec:
- properties:
- attachments:
- items:
- properties:
- apiVersion:
- type: string
- resource:
- type: string
- updateStrategy:
- properties:
- method:
- type: string
- type: object
- required:
- - apiVersion
- - resource
- type: object
- type: array
- hooks:
- properties:
- customize:
- properties:
- webhook:
- properties:
- path:
- type: string
- service:
- properties:
- name:
- type: string
- namespace:
- type: string
- port:
- format: int32
- type: integer
- protocol:
- type: string
- required:
- - name
- - namespace
- type: object
- timeout:
- type: string
- url:
- type: string
- type: object
- type: object
- finalize:
- properties:
- webhook:
- properties:
- path:
- type: string
- service:
- properties:
- name:
- type: string
- namespace:
- type: string
- port:
- format: int32
- type: integer
- protocol:
- type: string
- required:
- - name
- - namespace
- type: object
- timeout:
- type: string
- url:
- type: string
- type: object
- type: object
- sync:
- properties:
- webhook:
- properties:
- path:
- type: string
- service:
- properties:
- name:
- type: string
- namespace:
- type: string
- port:
- format: int32
- type: integer
- protocol:
- type: string
- required:
- - name
- - namespace
- type: object
- timeout:
- type: string
- url:
- type: string
- type: object
- type: object
- type: object
- resources:
- items:
- properties:
- annotationSelector:
- properties:
- matchAnnotations:
- additionalProperties:
- type: string
- type: object
- matchExpressions:
- items:
- description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
- properties:
- key:
- description: key is the label key that the selector applies to.
- type: string
- operator:
- description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
- type: string
- values:
- description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- apiVersion:
- type: string
- labelSelector:
- description: A label selector is a label query over a set of resources. The result of matchLabels and matchExpressions are ANDed. An empty label selector matches all objects. A null label selector matches no objects.
- properties:
- matchExpressions:
- description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
- items:
- description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
- properties:
- key:
- description: key is the label key that the selector applies to.
- type: string
- operator:
- description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
- type: string
- values:
- description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
- type: object
- type: object
- resource:
- type: string
- required:
- - apiVersion
- - resource
- type: object
- type: array
- resyncPeriodSeconds:
- format: int32
- type: integer
- required:
- - resources
- type: object
- status:
- type: object
- required:
- - metadata
- - spec
- type: object
- served: true
- storage: true
- subresources:
- status: {}
-status:
- acceptedNames:
- kind: ""
- plural: ""
- conditions: []
- storedVersions: []
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/metacontroller/base/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/metacontroller/base/kustomization.yaml
deleted file mode 100644
index 9b16b60..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/metacontroller/base/kustomization.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-namespace: kubeflow
-resources:
-- cluster-role-binding.yaml
-- crd.yaml
-- service-account.yaml
-- stateful-set.yaml
-commonLabels:
- kustomize.component: metacontroller
-
-# Update metacontroller CRD:
-# Copy the upstream file to crd.yaml in this folder.
-# Upstream file: https://github.com/metacontroller/metacontroller/blob/master/manifests/production/metacontroller-crds-v1.yaml
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/metacontroller/base/service-account.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/metacontroller/base/service-account.yaml
deleted file mode 100644
index 85c48de..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/metacontroller/base/service-account.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: meta-controller-service
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/metacontroller/base/stateful-set.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/metacontroller/base/stateful-set.yaml
deleted file mode 100644
index b0ca007..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/metacontroller/base/stateful-set.yaml
+++ /dev/null
@@ -1,45 +0,0 @@
-apiVersion: apps/v1
-kind: StatefulSet
-metadata:
- labels:
- app: metacontroller
- name: metacontroller
-spec:
- replicas: 1
- selector:
- matchLabels:
- app: metacontroller
- serviceName: ""
- template:
- metadata:
- labels:
- app: metacontroller
- annotations:
- sidecar.istio.io/inject: "false"
- spec:
- containers:
- - resources:
- limits:
- cpu: '1'
- memory: 1Gi
- requests:
- cpu: 100m
- memory: 256Mi
- command:
- - /usr/bin/metacontroller
- - --zap-log-level=4
- - '--discovery-interval=3600s' # less insane than 10 seconds
- securityContext:
- capabilities:
- drop:
- - ALL
- readOnlyRootFilesystem: true
- runAsNonRoot: true
- runAsUser: 1000
- privileged: false
- allowPrivilegeEscalation: false
- name: metacontroller
- image: 'docker.io/metacontrollerio/metacontroller:v2.0.4'
- serviceAccountName: meta-controller-service
- # Workaround for https://github.com/kubernetes-sigs/kustomize/issues/677
- volumeClaimTemplates: []
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/minio/base/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/minio/base/kustomization.yaml
deleted file mode 100644
index edf4270..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/minio/base/kustomization.yaml
+++ /dev/null
@@ -1,10 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
-- minio-deployment.yaml
-- minio-pvc.yaml
-- minio-service.yaml
-- mlpipeline-minio-artifact-secret.yaml
-
-namespace: kubeflow
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/minio/base/minio-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/minio/base/minio-deployment.yaml
deleted file mode 100644
index a1bd963..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/minio/base/minio-deployment.yaml
+++ /dev/null
@@ -1,48 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: minio
- labels:
- app: minio
-spec:
- selector:
- matchLabels:
- app: minio
- strategy:
- type: Recreate
- template:
- metadata:
- labels:
- app: minio
- spec:
- containers:
- - args:
- - server
- - /data
- env:
- - name: MINIO_ACCESS_KEY
- valueFrom:
- secretKeyRef:
- name: mlpipeline-minio-artifact
- key: accesskey
- - name: MINIO_SECRET_KEY
- valueFrom:
- secretKeyRef:
- name: mlpipeline-minio-artifact
- key: secretkey
- image: gcr.io/ml-pipeline/minio:RELEASE.2019-08-14T20-37-41Z-license-compliance
- name: minio
- ports:
- - containerPort: 9000
- volumeMounts:
- - mountPath: /data
- name: data
- subPath: minio
- resources:
- requests:
- cpu: 20m
- memory: 100Mi
- volumes:
- - name: data
- persistentVolumeClaim:
- claimName: minio-pvc
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/minio/base/minio-pvc.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/minio/base/minio-pvc.yaml
deleted file mode 100644
index ecfa32b..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/minio/base/minio-pvc.yaml
+++ /dev/null
@@ -1,10 +0,0 @@
-apiVersion: v1
-kind: PersistentVolumeClaim
-metadata:
- name: minio-pvc
-spec:
- accessModes:
- - ReadWriteOnce
- resources:
- requests:
- storage: 20Gi
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/minio/base/minio-service.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/minio/base/minio-service.yaml
deleted file mode 100644
index 3ab4204..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/minio/base/minio-service.yaml
+++ /dev/null
@@ -1,12 +0,0 @@
-apiVersion: v1
-kind: Service
-metadata:
- name: minio-service
-spec:
- ports:
- - name: http
- port: 9000
- protocol: TCP
- targetPort: 9000
- selector:
- app: minio
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/minio/base/mlpipeline-minio-artifact-secret.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/minio/base/mlpipeline-minio-artifact-secret.yaml
deleted file mode 100644
index ac298d9..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/minio/base/mlpipeline-minio-artifact-secret.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-kind: Secret
-apiVersion: v1
-metadata:
- name: mlpipeline-minio-artifact
-stringData:
- accesskey: minio
- secretkey: minio123
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/minio/options/istio/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/minio/options/istio/kustomization.yaml
deleted file mode 100644
index 611e399..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/minio/options/istio/kustomization.yaml
+++ /dev/null
@@ -1,5 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
-- istio-authorization-policy.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/mysql/base/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/mysql/base/kustomization.yaml
deleted file mode 100644
index cf33874..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/mysql/base/kustomization.yaml
+++ /dev/null
@@ -1,10 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
-- mysql-deployment.yaml
-- mysql-pv-claim.yaml
-- mysql-service.yaml
-- mysql-serviceaccount.yaml
-
-namespace: kubeflow
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/mysql/base/mysql-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/mysql/base/mysql-deployment.yaml
deleted file mode 100644
index 570fe03..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/mysql/base/mysql-deployment.yaml
+++ /dev/null
@@ -1,66 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: mysql
- labels:
- app: mysql
-spec:
- selector:
- matchLabels:
- app: mysql
- strategy:
- type: Recreate
- template:
- metadata:
- labels:
- app: mysql
- spec:
- serviceAccountName: mysql
- containers:
- - args:
- # https://dev.mysql.com/doc/refman/5.7/en/server-options.html#option_mysqld_ignore-db-dir
- # Ext4, Btrfs etc. volumes root directories have a lost+found directory that should not be treated as a database.
- # ignore-db-dir option has been deprecated in mysql v5.7.16.
- #
- # If upgrading MySQL to v8.0 fails, try removing /var/lib/mysql/lost+found folder in
- # mysql-pv-claim (mysql-persistent-storage):
- #
- # kubectl exec -it -n kubeflow -- bash
- # rm -rf /var/lib/mysql/lost+found
- #
- # More details on upgrading MySQL can be found here:
- # https://dev.mysql.com/doc/refman/8.0/en/upgrade-prerequisites.html
- # https://dev.mysql.com/doc/refman/8.0/en/upgrade-docker-mysql.html
- - --datadir
- - /var/lib/mysql
- # MLMD workloads (metadata-grpc-deployment and metadata-writer) depend on mysql_native_password authentication plugin.
- # mysql_native_password plugin implements native authentication; that is, authentication based on the password
- # hashing method in use from before the introduction of pluggable authentication in MySQL 8.0.
- #
- # As default_authentication_plugin option is deprecated in MySQL 8.0.27 this needs to be replaced with
- # appropriate authentication_policy in the next upgrade. See more details:
- # https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_default_authentication_plugin
- # https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_authentication_policy
- - --default-authentication-plugin=mysql_native_password
- # Disable binlog as the logs grow fast and eat up all disk spaces eventually. And KFP doesn't currently utilize binlog.
- # https://dev.mysql.com/doc/refman/8.0/en/replication-options-binary-log.html#option_mysqld_log-bin
- - --disable-log-bin
- env:
- - name: MYSQL_ALLOW_EMPTY_PASSWORD
- value: "true"
- image: gcr.io/ml-pipeline/mysql:8.0.26
- name: mysql
- ports:
- - containerPort: 3306
- name: mysql
- volumeMounts:
- - mountPath: /var/lib/mysql
- name: mysql-persistent-storage
- resources:
- requests:
- cpu: 100m
- memory: 800Mi
- volumes:
- - name: mysql-persistent-storage
- persistentVolumeClaim:
- claimName: mysql-pv-claim
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/mysql/base/mysql-pv-claim.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/mysql/base/mysql-pv-claim.yaml
deleted file mode 100644
index 108dc24..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/mysql/base/mysql-pv-claim.yaml
+++ /dev/null
@@ -1,10 +0,0 @@
-apiVersion: v1
-kind: PersistentVolumeClaim
-metadata:
- name: mysql-pv-claim
-spec:
- accessModes:
- - ReadWriteOnce
- resources:
- requests:
- storage: 20Gi
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/mysql/base/mysql-service.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/mysql/base/mysql-service.yaml
deleted file mode 100644
index d524827..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/mysql/base/mysql-service.yaml
+++ /dev/null
@@ -1,12 +0,0 @@
-apiVersion: v1
-kind: Service
-metadata:
- name: mysql
-spec:
- ports:
- - # We cannot have name: mysql here, because some requests through istio fail with it.
- port: 3306
- protocol: TCP
- targetPort: 3306
- selector:
- app: mysql
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/mysql/options/istio/istio-authorization-policy.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/mysql/options/istio/istio-authorization-policy.yaml
deleted file mode 100644
index a8dcb20..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/mysql/options/istio/istio-authorization-policy.yaml
+++ /dev/null
@@ -1,32 +0,0 @@
-apiVersion: security.istio.io/v1beta1
-kind: AuthorizationPolicy
-metadata:
- name: mysql
- namespace: kubeflow
-spec:
- selector:
- matchLabels:
- app: mysql
- rules:
- - from:
- - source:
- principals:
- - cluster.local/ns/kubeflow/sa/ml-pipeline
- - cluster.local/ns/kubeflow/sa/ml-pipeline-ui
- - cluster.local/ns/kubeflow/sa/ml-pipeline-persistenceagent
- - cluster.local/ns/kubeflow/sa/ml-pipeline-scheduledworkflow
- - cluster.local/ns/kubeflow/sa/ml-pipeline-viewer-crd-service-account
- - cluster.local/ns/kubeflow/sa/kubeflow-pipelines-cache
- - cluster.local/ns/kubeflow/sa/metadata-grpc-server
-
----
-
-apiVersion: "networking.istio.io/v1alpha3"
-kind: DestinationRule
-metadata:
- name: ml-pipeline-mysql
-spec:
- host: mysql.kubeflow.svc.cluster.local
- trafficPolicy:
- tls:
- mode: ISTIO_MUTUAL
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/mysql/options/istio/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/mysql/options/istio/kustomization.yaml
deleted file mode 100644
index 611e399..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/mysql/options/istio/kustomization.yaml
+++ /dev/null
@@ -1,5 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
-- istio-authorization-policy.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/openshift-pipelines-custom-task/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/openshift-pipelines-custom-task/kustomization.yaml
deleted file mode 100644
index 73c3478..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/openshift-pipelines-custom-task/kustomization.yaml
+++ /dev/null
@@ -1,58 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
- - ../tekton-custom-task
-
-namespace: openshift-pipelines
-
-patches:
-- patch: |-
- - op: remove
- path: /spec/template/spec/containers/0/securityContext/runAsUser
- target:
- group: apps
- kind: Deployment
- name: tekton-pipelineloop-controller
-- patch: |-
- - op: remove
- path: /spec/template/spec/containers/0/securityContext/runAsUser
- target:
- group: apps
- kind: Deployment
- name: tekton-pipelineloop-webhook
-- patch: |-
- - op: remove
- path: /spec/template/spec/containers/0/securityContext/runAsUser
- target:
- group: apps
- kind: Deployment
- name: kfp-driver
-- patch: |-
- - op: remove
- path: /spec/template/spec/containers/0/securityContext/runAsUser
- target:
- group: apps
- kind: Deployment
- name: kfp-exithandler-controller
-- patch: |-
- - op: remove
- path: /spec/template/spec/containers/0/securityContext/runAsUser
- target:
- group: apps
- kind: Deployment
- name: kfp-exithandler-webhook
-- patch: |-
- - op: remove
- path: /spec/template/spec/containers/0/securityContext/runAsUser
- target:
- group: apps
- kind: Deployment
- name: kfptask-controller
-- patch: |-
- - op: remove
- path: /spec/template/spec/containers/0/securityContext/runAsUser
- target:
- group: apps
- kind: Deployment
- name: kfptask-webhook
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/openshift/standalone/anyuid-scc.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/openshift/standalone/anyuid-scc.yaml
deleted file mode 100644
index c7c3e13..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/openshift/standalone/anyuid-scc.yaml
+++ /dev/null
@@ -1,64 +0,0 @@
-apiVersion: security.openshift.io/v1
-kind: SecurityContextConstraints
-metadata:
- annotations:
- kubernetes.io/description: kubeflow-anyuid provides all features of the restricted SCC
- but allows users to run with any UID and any GID.
- name: kubeflow-anyuid-kfp-tekton
-allowHostDirVolumePlugin: false
-allowHostIPC: false
-allowHostNetwork: false
-allowHostPID: false
-allowHostPorts: false
-allowPrivilegeEscalation: true
-allowPrivilegedContainer: true
-allowedCapabilities: null
-defaultAddCapabilities: null
-fsGroup:
- type: RunAsAny
-groups:
-- system:cluster-admins
-priority: 10
-readOnlyRootFilesystem: false
-requiredDropCapabilities:
-- MKNOD
-runAsUser:
- type: RunAsAny
-seLinuxContext:
- type: MustRunAs
-supplementalGroups:
- type: RunAsAny
-users:
-#Metadata DB accesses files owned by root
-- system:serviceaccount:kubeflow:metadatadb
-#Minio accesses files owned by root
-- system:serviceaccount:kubeflow:minio
-#Katib injects container into pods which does not run as non-root user, trying to find Dockerfile for that image and fix it
-- system:serviceaccount:kubeflow:default
-- system:serviceaccount:kubeflow:pipeline-runner
-- system:serviceaccount:kubeflow:kubeflow-pipelines-cache
-- system:serviceaccount:kubeflow:kubeflow-pipelines-cache-deployer-sa
-- system:serviceaccount:kubeflow:metadata-grpc-server
-- system:serviceaccount:kubeflow:kubeflow-pipelines-metadata-writer
-- system:serviceaccount:kubeflow:ml-pipeline
-- system:serviceaccount:kubeflow:ml-pipeline-persistenceagent
-- system:serviceaccount:kubeflow:ml-pipeline-scheduledworkflow
-- system:serviceaccount:kubeflow:ml-pipeline-ui
-- system:serviceaccount:kubeflow:ml-pipeline-viewer-crd-service-account
-- system:serviceaccount:kubeflow:ml-pipeline-visualizationserver
-- system:serviceaccount:kubeflow:mysql
-- system:serviceaccount:kubeflow:kfp-csi-s3
-- system:serviceaccount:kubeflow:kfp-csi-attacher
-- system:serviceaccount:kubeflow:kfp-csi-provisioner
-- system:serviceaccount:openshift-pipelines:kfp-driver
-- system:serviceaccount:openshift-pipelines:kfp-exithandler-controller
-- system:serviceaccount:openshift-pipelines:kfp-exithandler-webhook
-- system:serviceaccount:openshift-pipelines:tekton-pipelineloop-controller
-- system:serviceaccount:openshift-pipelines:tekton-pipelineloop-webhook
-volumes:
-- configMap
-- downwardAPI
-- emptyDir
-- persistentVolumeClaim
-- projected
-- secret
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/openshift/standalone/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/openshift/standalone/kustomization.yaml
deleted file mode 100644
index 707e8b8..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/openshift/standalone/kustomization.yaml
+++ /dev/null
@@ -1,6 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
- - anyuid-scc.yaml
- - privileged-scc.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/openshift/standalone/privileged-scc.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/openshift/standalone/privileged-scc.yaml
deleted file mode 100644
index 84b0ceb..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/openshift/standalone/privileged-scc.yaml
+++ /dev/null
@@ -1,65 +0,0 @@
-apiVersion: security.openshift.io/v1
-kind: SecurityContextConstraints
-metadata:
- annotations:
- kubernetes.io/description: kubeflow-anyuid provides all features of the restricted SCC
- but allows users to run with any UID and any GID.
- name: kubeflow-privileged-kfp-tekton
-allowHostDirVolumePlugin: true
-allowHostIPC: false
-allowHostNetwork: false
-allowHostPID: false
-allowHostPorts: false
-allowPrivilegeEscalation: true
-allowPrivilegedContainer: true
-allowedCapabilities: null
-defaultAddCapabilities: null
-fsGroup:
- type: RunAsAny
-groups:
-- system:cluster-admins
-priority: 10
-readOnlyRootFilesystem: false
-requiredDropCapabilities:
-- MKNOD
-runAsUser:
- type: RunAsAny
-seLinuxContext:
- type: MustRunAs
-supplementalGroups:
- type: RunAsAny
-users:
-#Metadata DB accesses files owned by root
-- system:serviceaccount:kubeflow:metadatadb
-#Minio accesses files owned by root
-- system:serviceaccount:kubeflow:minio
-#Katib injects container into pods which does not run as non-root user, trying to find Dockerfile for that image and fix it
-- system:serviceaccount:kubeflow:default
-- system:serviceaccount:kubeflow:pipeline-runner
-- system:serviceaccount:kubeflow:kubeflow-pipelines-cache
-- system:serviceaccount:kubeflow:kubeflow-pipelines-cache-deployer-sa
-- system:serviceaccount:kubeflow:metadata-grpc-server
-- system:serviceaccount:kubeflow:kubeflow-pipelines-metadata-writer
-- system:serviceaccount:kubeflow:ml-pipeline
-- system:serviceaccount:kubeflow:ml-pipeline-persistenceagent
-- system:serviceaccount:kubeflow:ml-pipeline-scheduledworkflow
-- system:serviceaccount:kubeflow:ml-pipeline-ui
-- system:serviceaccount:kubeflow:ml-pipeline-viewer-crd-service-account
-- system:serviceaccount:kubeflow:ml-pipeline-visualizationserver
-- system:serviceaccount:kubeflow:mysql
-- system:serviceaccount:kubeflow:kfp-csi-s3
-- system:serviceaccount:kubeflow:kfp-csi-attacher
-- system:serviceaccount:kubeflow:kfp-csi-provisioner
-- system:serviceaccount:openshift-pipelines:kfp-driver
-- system:serviceaccount:openshift-pipelines:kfp-exithandler-controller
-- system:serviceaccount:openshift-pipelines:kfp-exithandler-webhook
-- system:serviceaccount:openshift-pipelines:tekton-pipelineloop-controller
-- system:serviceaccount:openshift-pipelines:tekton-pipelineloop-webhook
-volumes:
-- configMap
-- downwardAPI
-- emptyDir
-- persistentVolumeClaim
-- projected
-- secret
-- hostPath
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/prometheus/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/prometheus/kustomization.yaml
deleted file mode 100644
index 9b2d54e..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/prometheus/kustomization.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
-- prometheus-configmap.yaml
-- prometheus-sa.yaml
-- prometheus-role.yaml
-- prometheus-rolebinding.yaml
-- prometheus-service.yaml
-- prometheus-deployment.yaml
-images:
- - name: prom/prometheus
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/prometheus/prometheus-configmap.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/prometheus/prometheus-configmap.yaml
deleted file mode 100644
index 6bb19cc..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/prometheus/prometheus-configmap.yaml
+++ /dev/null
@@ -1,31 +0,0 @@
-apiVersion: v1
-data:
- prometheus.yml: |
- global:
- scrape_interval: 15s # By default, scrape targets every 15 seconds.
-
- # Attach these labels to any time series or alerts when communicating with
- # external systems (federation, remote storage, Alertmanager).
- external_labels:
- monitor: 'kubeflow-pipelines-monitor'
-
- # A scrape configuration containing exactly one endpoint to scrape:
- # Here it's Prometheus itself.
- scrape_configs:
- # The job name is added as a label `job=` to any timeseries scraped from this config.
- - job_name: 'prometheus'
-
- # Override the global default and scrape targets from this job every 5 seconds.
- scrape_interval: 5s
-
- static_configs:
- - targets: ['localhost:9090']
-
- # Monitoring ml-pipeline (aka Kubeflow Pipelines API server)
- - job_name: 'ml-pipeline'
- scrape_interval: 60s
- static_configs:
- - targets: ['ml-pipeline:8888']
-kind: ConfigMap
-metadata:
- name: prometheus-configmap
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/prometheus/prometheus-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/prometheus/prometheus-deployment.yaml
deleted file mode 100644
index ebd4f8a..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/prometheus/prometheus-deployment.yaml
+++ /dev/null
@@ -1,34 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: prometheus
- labels:
- app: prometheus
-spec:
- replicas: 1
- selector:
- matchLabels:
- app: prometheus
- template:
- metadata:
- labels:
- app: prometheus
- spec:
- containers:
- - name: prometheus
- image: prom/prometheus
- volumeMounts:
- - name: config-volume
- mountPath: /etc/prometheus/prometheus.yml
- subPath: prometheus.yml
- args: ["--storage.tsdb.retention.time=7d", # Adjust retention policy if necessary
- "--storage.tsdb.retention.size=1GB",
- "--config.file=/etc/prometheus/prometheus.yml",
- ]
- ports:
- - containerPort: 9090
- volumes:
- - name: config-volume
- configMap:
- name: prometheus-configmap
- serviceAccountName: prometheus
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/prometheus/prometheus-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/prometheus/prometheus-role.yaml
deleted file mode 100644
index 4cb03fc..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/prometheus/prometheus-role.yaml
+++ /dev/null
@@ -1,19 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata:
- labels:
- app: prometheus
- name: prometheus
-rules:
-- apiGroups: [""]
- resources:
- - nodes
- - services
- - endpoints
- - pods
- verbs: ["get", "list", "watch"]
-- apiGroups:
- - extensions
- resources:
- - ingresses
- verbs: ["get", "list", "watch"]
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/prometheus/prometheus-rolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/prometheus/prometheus-rolebinding.yaml
deleted file mode 100644
index 12a56ee..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/prometheus/prometheus-rolebinding.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- labels:
- app: prometheus
- name: prometheus
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: prometheus
-subjects:
-- kind: ServiceAccount
- name: prometheus
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/prometheus/prometheus-sa.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/prometheus/prometheus-sa.yaml
deleted file mode 100644
index f3fb283..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/prometheus/prometheus-sa.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: prometheus
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/prometheus/prometheus-service.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/prometheus/prometheus-service.yaml
deleted file mode 100644
index 7071bb7..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/prometheus/prometheus-service.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: prometheus
- name: prometheus
-spec:
- selector:
- app: prometheus
- ports:
- - name: promui
- protocol: TCP
- port: 9090
- targetPort: 9090
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/driver-controller/200-serviceaccount.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/driver-controller/200-serviceaccount.yaml
deleted file mode 100644
index ff303d5..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/driver-controller/200-serviceaccount.yaml
+++ /dev/null
@@ -1,9 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: kfp-driver
- namespace: kubeflow
- labels:
- app.kubernetes.io/component: kfp-driver
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kubeflow-pipeline
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/driver-controller/201-clusterrole.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/driver-controller/201-clusterrole.yaml
deleted file mode 100644
index 6d8f96c..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/driver-controller/201-clusterrole.yaml
+++ /dev/null
@@ -1,32 +0,0 @@
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: kfp-driver-cluster-access
- labels:
- app.kubernetes.io/component: kfp-driver
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kubeflow-pipeline
-rules:
- # Controller needs cluster access to all Run CRs.
- - apiGroups: ["tekton.dev"]
- resources: ["runs", "customruns", "runs/finalizers", "customruns/finalizers",
- "runs/status", "customruns/status", "pipelineruns", "task", "taskruns", "conditions"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
- - apiGroups: [""]
- resources: ["persistentvolumes", "persistentvolumeclaims"]
- verbs: ["*"]
-
- # Controller needs cluster access to leases for leader election.
- - apiGroups: ["coordination.k8s.io"]
- resources: ["leases"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
-
- # Controller needs permission to emit events associated with Run CRs.
- - apiGroups: [""]
- resources: ["events"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
-
- # driver needs to access configmaps to get configuration
- - apiGroups: [""]
- resources: ["configmaps"]
- verbs: ["get", "watch", "list"]
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/driver-controller/201-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/driver-controller/201-role.yaml
deleted file mode 100644
index 0491042..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/driver-controller/201-role.yaml
+++ /dev/null
@@ -1,76 +0,0 @@
-kind: Role
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: kfp-driver
- namespace: kubeflow
- labels:
- app.kubernetes.io/component: kfp-driver
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kubeflow-pipeline
-rules:
- - apiGroups:
- - ""
- resources:
- - secrets
- verbs:
- - get
- - apiGroups:
- - ""
- resources:
- - persistentvolumes
- - persistentvolumeclaims
- verbs:
- - '*'
- - apiGroups:
- - snapshot.storage.k8s.io
- resources:
- - volumesnapshots
- verbs:
- - create
- - delete
- - get
- - apiGroups:
- - ""
- resources:
- - pods
- - pods/exec
- - pods/log
- - services
- verbs:
- - '*'
- - apiGroups:
- - ""
- - apps
- - extensions
- resources:
- - deployments
- - replicasets
- verbs:
- - '*'
- - apiGroups:
- - kubeflow.org
- resources:
- - '*'
- verbs:
- - '*'
- - apiGroups:
- - batch
- resources:
- - jobs
- verbs:
- - '*'
- - apiGroups:
- - machinelearning.seldon.io
- resources:
- - seldondeployments
- verbs:
- - '*'
- - apiGroups:
- - policy
- resources:
- - podsecuritypolicies
- resourceNames:
- - tekton-pipelines
- - openshift-pipelines
- verbs:
- - use
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/driver-controller/201-rolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/driver-controller/201-rolebinding.yaml
deleted file mode 100644
index 5283814..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/driver-controller/201-rolebinding.yaml
+++ /dev/null
@@ -1,17 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: kfp-driver
- namespace: kubeflow
- labels:
- app.kubernetes.io/component: kfp-driver
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kubeflow-pipeline
-subjects:
- - kind: ServiceAccount
- name: kfp-driver
- namespace: kubeflow
-roleRef:
- kind: Role
- name: kfp-driver
- apiGroup: rbac.authorization.k8s.io
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/driver-controller/202-clusterrolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/driver-controller/202-clusterrolebinding.yaml
deleted file mode 100644
index 15f1847..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/driver-controller/202-clusterrolebinding.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: kfp-driver-cluster-access
- labels:
- app.kubernetes.io/component: kfp-driver
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kubeflow-pipeline
-subjects:
- - kind: ServiceAccount
- name: kfp-driver
- namespace: kubeflow
-roleRef:
- kind: ClusterRole
- name: kfp-driver-cluster-access
- apiGroup: rbac.authorization.k8s.io
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/driver-controller/400-controller-service.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/driver-controller/400-controller-service.yaml
deleted file mode 100644
index 30dabe6..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/driver-controller/400-controller-service.yaml
+++ /dev/null
@@ -1,27 +0,0 @@
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app.kubernetes.io/name: kfp-driver
- app.kubernetes.io/component: kfp-driver
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: devel
- app.kubernetes.io/part-of: kubeflow-pipeline
- # tekton.dev/release value replaced with inputs.params.versionTag in pipeline/tekton/publish.yaml
- pipeline.tekton.dev/release: "devel"
- # labels below are related to istio and should not be used for resource lookup
- app: kfp-driver
- version: "devel"
- name: kfp-driver
- namespace: kubeflow
-spec:
- ports:
- - name: http-metrics
- port: 9090
- protocol: TCP
- targetPort: 9090
- selector:
- app.kubernetes.io/name: kfp-driver
- app.kubernetes.io/component: kfp-driver
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kubeflow-pipeline
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/driver-controller/500-controller.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/driver-controller/500-controller.yaml
deleted file mode 100644
index 40799e4..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/driver-controller/500-controller.yaml
+++ /dev/null
@@ -1,59 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: kfp-driver
- namespace: kubeflow
- labels:
- app.kubernetes.io/name: kfp-driver
- app.kubernetes.io/component: ckfp-driver
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: devel
- app.kubernetes.io/part-of: kubeflow-pipeline
-spec:
- replicas: 1
- selector:
- matchLabels:
- app.kubernetes.io/name: kfp-driver
- app.kubernetes.io/component: kfp-driver
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kubeflow-pipeline
- template:
- metadata:
- annotations:
- cluster-autoscaler.kubernetes.io/safe-to-evict: "false"
- labels:
- app.kubernetes.io/name: kfp-driver
- app.kubernetes.io/component: kfp-driver
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: devel
- app.kubernetes.io/part-of: kubeflow-pipeline
- app: kfp-driver
- spec:
- serviceAccountName: kfp-driver
- containers:
- - name: kfp-driver
- image: kfp-v2-dev-driver-controller:dummy
- imagePullPolicy: Always
- env:
- - name: SYSTEM_NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- - name: CONFIG_LEADERELECTION_NAME
- value: config-leader-election
- - name: CONFIG_LOGGING_NAME
- value: config-logging
- - name: CONFIG_OBSERVABILITY_NAME
- value: config-observability
- - name: METRICS_DOMAIN
- value: tekton.dev/pipeline
- securityContext:
- allowPrivilegeEscalation: false
- capabilities:
- drop:
- - ALL
- runAsNonRoot: true
- runAsUser: 65532
- runAsGroup: 65532
- seccompProfile:
- type: RuntimeDefault
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/driver-controller/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/driver-controller/kustomization.yaml
deleted file mode 100644
index 8213eb8..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/driver-controller/kustomization.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
- - 200-serviceaccount.yaml
- - 201-clusterrole.yaml
- - 201-role.yaml
- - 201-rolebinding.yaml
- - 202-clusterrolebinding.yaml
- - 400-controller-service.yaml
- - 500-controller.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/exit-handler/200-serviceaccount.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/exit-handler/200-serviceaccount.yaml
deleted file mode 100644
index d0c47df..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/exit-handler/200-serviceaccount.yaml
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 2023 kubeflow.org
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: kfp-exithandler-controller
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
----
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: kfp-exithandler-webhook
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/exit-handler/201-clusterrole.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/exit-handler/201-clusterrole.yaml
deleted file mode 100644
index 567e7bd..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/exit-handler/201-clusterrole.yaml
+++ /dev/null
@@ -1,109 +0,0 @@
-# Copyright 2023 kubeflow.org
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: kfp-exithandler-controller-cluster-access
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
-rules:
- # Controller needs cluster access to all of the CRDs that it is responsible for managing.
- - apiGroups: ["tekton.dev"]
- resources: ["runs", "customruns", "taskruns", "pipelineruns"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
- - apiGroups: ["tekton.dev"]
- resources: ["runs/status", "customruns/status", "taskruns/status", "pipelineruns/status", "runs/finalizers", "customruns/finalizers",]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
- - apiGroups: ["custom.tekton.dev"]
- resources: ["exithandlers"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
- - apiGroups: ["apps"]
- resources: ["deployments", "deployments/finalizers"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
----
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- # This is the access that the controller needs on a per-namespace basis.
- name: kfp-exithandler-controller-tenant-access
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
-rules:
- - apiGroups: [""]
- resources: ["events"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
----
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: kfp-exithandler-webhook-cluster-access
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
-rules:
- # The webhook needs to be able to list and update customresourcedefinitions,
- # mainly to update the webhook certificates.
- - apiGroups: ["apiextensions.k8s.io"]
- resources: ["customresourcedefinitions", "customresourcedefinitions/status"]
- verbs: ["get", "list", "update", "patch", "watch"]
- - apiGroups: [""]
- resources: ["namespaces"]
- verbs: ["get", "list", "update", "patch", "watch"]
- - apiGroups: ["admissionregistration.k8s.io"]
- # The webhook performs a reconciliation on these two resources and continuously
- # updates configuration.
- resources: ["mutatingwebhookconfigurations", "validatingwebhookconfigurations"]
- # knative starts informers on these things, which is why we need get, list and watch.
- verbs: ["list", "watch"]
- - apiGroups: ["admissionregistration.k8s.io"]
- resources: ["mutatingwebhookconfigurations"]
- # This mutating webhook is responsible for applying defaults to tekton objects
- # as they are received.
- resourceNames: ["webhook.exithandler.custom.tekton.dev"]
- # When there are changes to the configs or secrets, knative updates the mutatingwebhook config
- # with the updated certificates or the refreshed set of rules.
- verbs: ["get", "update"]
- - apiGroups: ["apps"]
- resources: ["deployments", "deployments/finalizers"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
- - apiGroups: ["admissionregistration.k8s.io"]
- resources: ["validatingwebhookconfigurations"]
- # validation.webhook.exithandler.custom.tekton.dev performs schema validation when you, for example, create ExitHandlers.
- resourceNames: ["validation.webhook.exithandler.custom.tekton.dev"]
- # When there are changes to the configs or secrets, knative updates the validatingwebhook config
- # with the updated certificates or the refreshed set of rules.
- verbs: ["get", "update"]
- - apiGroups: ["policy"]
- resources: ["podsecuritypolicies"]
- resourceNames: ["tekton-pipelines", "openshift-pipelines"]
- verbs: ["use"]
----
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: kfp-exithandler-leader-election
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
-rules:
- # We uses leases for leaderelection
- - apiGroups: ["coordination.k8s.io"]
- resources: ["leases"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/exit-handler/201-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/exit-handler/201-role.yaml
deleted file mode 100644
index b22ced5..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/exit-handler/201-role.yaml
+++ /dev/null
@@ -1,68 +0,0 @@
-# Copyright 2023 kubeflow.org
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-kind: Role
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: kfp-exithandler-controller
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
-rules:
- - apiGroups: [""]
- resources: ["configmaps"]
- verbs: ["list", "watch"]
- - apiGroups: [""]
- resources: ["configmaps"]
- verbs: ["get"]
- resourceNames: ["config-leader-election", "config-logging", "config-observability", "object-store-config", "cache-config"]
- - apiGroups: ["policy"]
- resources: ["podsecuritypolicies"]
- resourceNames: ["tekton-pipelines", "openshift-pipelines"]
- verbs: ["use"]
----
-kind: Role
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: kfp-exithandler-webhook
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
-rules:
- - apiGroups: [""]
- resources: ["configmaps"]
- verbs: ["list", "watch"]
- # The webhook needs access to these configmaps for logging information.
- - apiGroups: [""]
- resources: ["configmaps"]
- verbs: ["get"]
- resourceNames: ["config-logging", "config-observability", "config-leader-election", "object-store-config", "cache-config"]
- - apiGroups: [""]
- resources: ["secrets"]
- verbs: ["list", "watch"]
- # The webhook daemon makes a reconciliation loop on kfp-exithandler-webhook-certs. Whenever
- # the secret changes it updates the webhook configurations with the certificates
- # stored in the secret.
- - apiGroups: [""]
- resources: ["secrets"]
- verbs: ["get", "update"]
- resourceNames: ["kfp-exithandler-webhook-certs"]
- - apiGroups: ["policy"]
- resources: ["podsecuritypolicies"]
- resourceNames: ["tekton-pipelines", "openshift-pipelines"]
- verbs: ["use"]
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/exit-handler/201-rolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/exit-handler/201-rolebinding.yaml
deleted file mode 100644
index f4ab606..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/exit-handler/201-rolebinding.yaml
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 2023 kubeflow.org
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: kfp-exithandler-controller
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
-subjects:
- - kind: ServiceAccount
- name: kfp-exithandler-controller
- namespace: tekton-pipelines
-roleRef:
- kind: Role
- name: kfp-exithandler-controller
- apiGroup: rbac.authorization.k8s.io
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: kfp-exithandler-webhook
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
-subjects:
- - kind: ServiceAccount
- name: kfp-exithandler-webhook
- namespace: tekton-pipelines
-roleRef:
- kind: Role
- name: kfp-exithandler-webhook
- apiGroup: rbac.authorization.k8s.io
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/exit-handler/202-clusterrolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/exit-handler/202-clusterrolebinding.yaml
deleted file mode 100644
index d2bae5c..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/exit-handler/202-clusterrolebinding.yaml
+++ /dev/null
@@ -1,102 +0,0 @@
-# Copyright 2020 The Knative Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: kfp-exithandler-controller-cluster-access
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
-subjects:
- - kind: ServiceAccount
- name: kfp-exithandler-controller
- namespace: tekton-pipelines
-roleRef:
- kind: ClusterRole
- name: kfp-exithandler-controller-cluster-access
- apiGroup: rbac.authorization.k8s.io
----
-# If this ClusterRoleBinding is replaced with a RoleBinding
-# then the ClusterRole would be namespaced. The access described by
-# the kfp-exithandler-controller-tenant-access ClusterRole would
-# be scoped to individual tenant namespaces.
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: kfp-exithandler-controller-tenant-access
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
-subjects:
- - kind: ServiceAccount
- name: kfp-exithandler-controller
- namespace: tekton-pipelines
-roleRef:
- kind: ClusterRole
- name: kfp-exithandler-controller-tenant-access
- apiGroup: rbac.authorization.k8s.io
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: kfp-exithandler-controller-leaderelection
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
-subjects:
- - kind: ServiceAccount
- name: kfp-exithandler-controller
- namespace: tekton-pipelines
-roleRef:
- kind: ClusterRole
- name: kfp-exithandler-leader-election
- apiGroup: rbac.authorization.k8s.io
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: kfp-exithandler-webhook-cluster-access
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
-subjects:
- - kind: ServiceAccount
- name: kfp-exithandler-webhook
- namespace: tekton-pipelines
-roleRef:
- kind: ClusterRole
- name: kfp-exithandler-webhook-cluster-access
- apiGroup: rbac.authorization.k8s.io
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: kfp-exithandler-webhook-leaderelection
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
-subjects:
- - kind: ServiceAccount
- name: kfp-exithandler-webhook
- namespace: tekton-pipelines
-roleRef:
- kind: ClusterRole
- name: kfp-exithandler-leader-election
- apiGroup: rbac.authorization.k8s.io
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/exit-handler/300-exithandler-crd.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/exit-handler/300-exithandler-crd.yaml
deleted file mode 100644
index cec9357..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/exit-handler/300-exithandler-crd.yaml
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 2023 kubeflow.org
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- name: exithandlers.custom.tekton.dev
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
- pipeline.tekton.dev/release: "devel"
- version: "devel"
-spec:
- group: custom.tekton.dev
- versions:
- - name: v1alpha1
- served: true
- storage: true
- # Opt into the status subresource so metadata.generation
- # starts to increment
- subresources:
- status: {}
- schema:
- openAPIV3Schema:
- type: object
- # One can use x-kubernetes-preserve-unknown-fields: true
- # at the root of the schema (and inside any properties, additionalProperties)
- # to get the traditional CRD behaviour that nothing is pruned, despite
- # setting spec.preserveUnknownProperties: false.
- #
- # See https://kubernetes.io/blog/2019/06/20/crd-structural-schema/
- # See issue: https://github.com/knative/serving/issues/912
- x-kubernetes-preserve-unknown-fields: true
- names:
- kind: ExitHandler
- plural: exithandlers
- categories:
- - tekton
- - tekton-pipelines
- - openshift-pipelines
- scope: Namespaced
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/exit-handler/500-controller.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/exit-handler/500-controller.yaml
deleted file mode 100644
index e150a4f..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/exit-handler/500-controller.yaml
+++ /dev/null
@@ -1,79 +0,0 @@
-# Copyright 2023 kubeflow.org
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: kfp-exithandler-controller
- labels:
- app.kubernetes.io/name: controller
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "devel"
- app.kubernetes.io/part-of: kfp-tekton
- # tekton.dev/release value replaced with inputs.params.versionTag in pipeline/tekton/publish.yaml
- pipeline.tekton.dev/release: "devel"
- # labels below are related to istio and should not be used for resource lookup
- version: "devel"
-spec:
- replicas: 1
- selector:
- matchLabels:
- app.kubernetes.io/name: controller
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
- template:
- metadata:
- annotations:
- cluster-autoscaler.kubernetes.io/safe-to-evict: "false"
- labels:
- app.kubernetes.io/name: controller
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "devel"
- app.kubernetes.io/part-of: kfp-tekton
- # tekton.dev/release value replaced with inputs.params.versionTag in pipeline/tekton/publish.yaml
- pipeline.tekton.dev/release: "devel"
- # labels below are related to istio and should not be used for resource lookup
- app: kfp-exithandler-controller
- version: "devel"
- spec:
- serviceAccountName: kfp-exithandler-controller
- containers:
- - name: kfp-exithandler-controller
- image: tekton-exithandler-controller:dummy
- env:
- - name: SYSTEM_NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- - name: CONFIG_LEADERELECTION_NAME
- value: config-leader-election
- - name: CONFIG_LOGGING_NAME
- value: config-logging
- - name: CONFIG_OBSERVABILITY_NAME
- value: config-observability
- - name: METRICS_DOMAIN
- value: tekton.dev/pipeline
- securityContext:
- allowPrivilegeEscalation: false
- capabilities:
- drop:
- - ALL
- runAsNonRoot: true
- runAsGroup: 65532
- runAsUser: 65532
- seccompProfile:
- type: RuntimeDefault
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/exit-handler/500-webhook-configuration.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/exit-handler/500-webhook-configuration.yaml
deleted file mode 100644
index 345c57d..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/exit-handler/500-webhook-configuration.yaml
+++ /dev/null
@@ -1,68 +0,0 @@
-# Copyright 2023 kubeflow.org
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: Secret
-metadata:
- name: kfp-exithandler-webhook-certs
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
- pipeline.tekton.dev/release: "devel"
-# The data is populated at install time.
-
----
-apiVersion: admissionregistration.k8s.io/v1
-kind: ValidatingWebhookConfiguration
-metadata:
- name: validation.webhook.exithandler.custom.tekton.dev
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
- pipeline.tekton.dev/release: "devel"
-webhooks:
-- admissionReviewVersions:
- - v1beta1
- clientConfig:
- service:
- name: kfp-exithandler-webhook
- namespace: tekton-pipelines
- failurePolicy: Fail
- sideEffects: None
- name: validation.webhook.exithandler.custom.tekton.dev
-
----
-apiVersion: admissionregistration.k8s.io/v1
-kind: MutatingWebhookConfiguration
-metadata:
- name: webhook.exithandler.custom.tekton.dev
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
- pipeline.tekton.dev/release: "devel"
-webhooks:
-- admissionReviewVersions:
- - v1beta1
- clientConfig:
- service:
- name: kfp-exithandler-webhook
- namespace: tekton-pipelines
- failurePolicy: Fail
- sideEffects: None
- name: webhook.exithandler.custom.tekton.dev
-
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/exit-handler/500-webhook.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/exit-handler/500-webhook.yaml
deleted file mode 100644
index 2f8a394..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/exit-handler/500-webhook.yaml
+++ /dev/null
@@ -1,122 +0,0 @@
-# Copyright 2023 kubeflow.org
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: kfp-exithandler-webhook
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "devel"
- app.kubernetes.io/part-of: kfp-tekton
- pipeline.tekton.dev/release: "devel"
- version: "devel"
-spec:
- replicas: 1
- selector:
- matchLabels:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
- template:
- metadata:
- annotations:
- cluster-autoscaler.kubernetes.io/safe-to-evict: "false"
- labels:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "devel"
- app.kubernetes.io/part-of: kfp-tekton
- pipeline.tekton.dev/release: "devel"
- app: tekton-pipelines-webhook
- version: "devel"
- spec:
- serviceAccountName: kfp-exithandler-webhook
- containers:
- - name: webhook
- image: tekton-exithandler-webhook:dummy
- env:
- - name: SYSTEM_NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- # If you are changing these names, you will also need to update
- # the webhook's Role in 200-role.yaml to include the new
- # values in the "configmaps" "get" rule.
- - name: CONFIG_LOGGING_NAME
- value: config-logging
- - name: CONFIG_OBSERVABILITY_NAME
- value: config-observability
- - name: CONFIG_LEADERELECTION_NAME
- value: config-leader-election
- - name: WEBHOOK_SERVICE_NAME
- value: kfp-exithandler-webhook
- - name: WEBHOOK_SECRET_NAME
- value: kfp-exithandler-webhook-certs
- - name: METRICS_DOMAIN
- value: tekton.dev/pipeline
- ports:
- - name: metrics
- containerPort: 9090
- - name: profiling
- containerPort: 8008
- - name: https-webhook
- containerPort: 8443
- securityContext:
- allowPrivilegeEscalation: false
- capabilities:
- drop:
- - ALL
- runAsNonRoot: true
- runAsGroup: 65532
- runAsUser: 65532
- seccompProfile:
- type: RuntimeDefault
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "devel"
- app.kubernetes.io/part-of: kfp-tekton
- pipeline.tekton.dev/release: "devel"
- app: tekton-pipelines-webhook
- version: "devel"
- name: kfp-exithandler-webhook
- namespace: tekton-pipelines
-spec:
- ports:
- # Define metrics and profiling for them to be accessible within service meshes.
- - name: http-metrics
- port: 9090
- targetPort: 9090
- - name: http-profiling
- port: 8008
- targetPort: 8008
- - name: https-webhook
- port: 443
- targetPort: 8443
- selector:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/exit-handler/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/exit-handler/kustomization.yaml
deleted file mode 100644
index e9cd598..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/exit-handler/kustomization.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
- - 200-serviceaccount.yaml
- - 201-clusterrole.yaml
- - 201-role.yaml
- - 201-rolebinding.yaml
- - 202-clusterrolebinding.yaml
- - 300-exithandler-crd.yaml
- - 500-controller.yaml
- - 500-webhook-configuration.yaml
- - 500-webhook.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/kfptask/200-serviceaccount.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/kfptask/200-serviceaccount.yaml
deleted file mode 100644
index d9e470e..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/kfptask/200-serviceaccount.yaml
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 2023 kubeflow.org
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: kfptask-controller
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
----
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: kfptask-webhook
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/kfptask/201-clusterrole.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/kfptask/201-clusterrole.yaml
deleted file mode 100644
index d8da4a5..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/kfptask/201-clusterrole.yaml
+++ /dev/null
@@ -1,122 +0,0 @@
-# Copyright 2023 kubeflow.org
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: kfptask-controller-cluster-access
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
-rules:
- # Controller needs cluster access to all of the CRDs that it is responsible for managing.
- - apiGroups: ["tekton.dev"]
- resources: ["runs", "customruns", "taskruns", "pipelineruns"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
- - apiGroups: ["tekton.dev"]
- resources: ["runs/status", "customruns/status", "taskruns/status", "pipelineruns/status", "runs/finalizers", "customruns/finalizers",]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
- - apiGroups: ["custom.tekton.dev"]
- resources: ["kfptasks"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
- - apiGroups: ["apps"]
- resources: ["deployments", "deployments/finalizers"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
- - apiGroups: [""]
- resources: ["persistentvolumes", "persistentvolumeclaims"]
- verbs: ["*"]
-
- # Controller needs permission to emit events associated with Run CRs.
- - apiGroups: [""]
- resources: ["events"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
-
- # driver needs to access configmaps to get configuration
- - apiGroups: [""]
- resources: ["configmaps"]
- verbs: ["get", "watch", "list"]
----
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- # This is the access that the controller needs on a per-namespace basis.
- name: kfptask-controller-tenant-access
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
-rules:
- - apiGroups: [""]
- resources: ["events"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
----
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: kfptask-webhook-cluster-access
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
-rules:
- # The webhook needs to be able to list and update customresourcedefinitions,
- # mainly to update the webhook certificates.
- - apiGroups: ["apiextensions.k8s.io"]
- resources: ["customresourcedefinitions", "customresourcedefinitions/status"]
- verbs: ["get", "list", "update", "patch", "watch"]
- - apiGroups: [""]
- resources: ["namespaces"]
- verbs: ["get", "list", "update", "patch", "watch"]
- - apiGroups: ["admissionregistration.k8s.io"]
- # The webhook performs a reconciliation on these two resources and continuously
- # updates configuration.
- resources: ["mutatingwebhookconfigurations", "validatingwebhookconfigurations"]
- # knative starts informers on these things, which is why we need get, list and watch.
- verbs: ["list", "watch"]
- - apiGroups: ["admissionregistration.k8s.io"]
- resources: ["mutatingwebhookconfigurations"]
- # This mutating webhook is responsible for applying defaults to tekton objects
- # as they are received.
- resourceNames: ["webhook.kfptask.custom.tekton.dev"]
- # When there are changes to the configs or secrets, knative updates the mutatingwebhook config
- # with the updated certificates or the refreshed set of rules.
- verbs: ["get", "update"]
- - apiGroups: ["apps"]
- resources: ["deployments", "deployments/finalizers"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
- - apiGroups: ["admissionregistration.k8s.io"]
- resources: ["validatingwebhookconfigurations"]
- # validation.webhook.kfptask.custom.tekton.dev performs schema validation when you, for example, create KfpTasks.
- resourceNames: ["validation.webhook.kfptask.custom.tekton.dev"]
- # When there are changes to the configs or secrets, knative updates the validatingwebhook config
- # with the updated certificates or the refreshed set of rules.
- verbs: ["get", "update"]
- - apiGroups: ["policy"]
- resources: ["podsecuritypolicies"]
- resourceNames: ["tekton-pipelines", "openshift-pipelines"]
- verbs: ["use"]
----
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: kfptask-leader-election
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
-rules:
- # We uses leases for leaderelection
- - apiGroups: ["coordination.k8s.io"]
- resources: ["leases"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/kfptask/201-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/kfptask/201-role.yaml
deleted file mode 100644
index 757ec7c..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/kfptask/201-role.yaml
+++ /dev/null
@@ -1,96 +0,0 @@
-# Copyright 2023 kubeflow.org
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-kind: Role
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: kfptask-controller
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
-rules:
- - apiGroups: [""]
- resources: ["configmaps"]
- verbs: ["list", "watch"]
- - apiGroups: [""]
- resources: ["configmaps"]
- verbs: ["get"]
- resourceNames: ["config-leader-election", "config-logging", "config-observability", "object-store-config", "cache-config"]
- - apiGroups: ["policy"]
- resources: ["podsecuritypolicies"]
- resourceNames: ["tekton-pipelines", "openshift-pipelines"]
- verbs: ["use"]
- - apiGroups: [""]
- resources: ["secrets"]
- verbs: ["get"]
- - apiGroups: [""]
- resources: ["persistentvolumes", persistentvolumeclaims]
- verbs: ["*"]
- - apiGroups: ["snapshot.storage.k8s.io"]
- resources: ["volumesnapshots"]
- verbs: ["create", "delete", "get"]
- - apiGroups: [""]
- resources: ["pods", "pods/exec", "pods/log", "services"]
- verbs: ["*"]
- - apiGroups: ["", "apps", "extensions"]
- resources: ["deployments", "replicasets"]
- verbs: ["*"]
- - apiGroups: ["kubeflow.org"]
- resources: ["*"]
- verbs: ["*"]
- - apiGroups: ["batch"]
- resources: ["jobs"]
- verbs: ["*"]
- - apiGroups: ["machinelearning.seldon.io"]
- resources: ["seldondeployments"]
- verbs: ["*"]
- - apiGroups: ["policy"]
- resources: ["podsecuritypolicies"]
- resourceNames: ["tekton-pipelines", "openshift-pipelines"]
- verbs: ["use"]
----
-kind: Role
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: kfptask-webhook
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
-rules:
- - apiGroups: [""]
- resources: ["configmaps"]
- verbs: ["list", "watch"]
- # The webhook needs access to these configmaps for logging information.
- - apiGroups: [""]
- resources: ["configmaps"]
- verbs: ["get"]
- resourceNames: ["config-logging", "config-observability", "config-leader-election", "object-store-config", "cache-config"]
- - apiGroups: [""]
- resources: ["secrets"]
- verbs: ["list", "watch"]
- # The webhook daemon makes a reconciliation loop on kfptask-webhook-certs. Whenever
- # the secret changes it updates the webhook configurations with the certificates
- # stored in the secret.
- - apiGroups: [""]
- resources: ["secrets"]
- verbs: ["get", "update"]
- resourceNames: ["kfptask-webhook-certs"]
- - apiGroups: ["policy"]
- resources: ["podsecuritypolicies"]
- resourceNames: ["tekton-pipelines", "openshift-pipelines"]
- verbs: ["use"]
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/kfptask/201-rolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/kfptask/201-rolebinding.yaml
deleted file mode 100644
index d8aa0c8..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/kfptask/201-rolebinding.yaml
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 2023 kubeflow.org
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: kfptask-controller
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
-subjects:
- - kind: ServiceAccount
- name: kfptask-controller
- namespace: tekton-pipelines
-roleRef:
- kind: Role
- name: kfptask-controller
- apiGroup: rbac.authorization.k8s.io
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: kfptask-webhook
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
-subjects:
- - kind: ServiceAccount
- name: kfptask-webhook
- namespace: tekton-pipelines
-roleRef:
- kind: Role
- name: kfptask-webhook
- apiGroup: rbac.authorization.k8s.io
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/kfptask/202-clusterrolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/kfptask/202-clusterrolebinding.yaml
deleted file mode 100644
index 166e0be..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/kfptask/202-clusterrolebinding.yaml
+++ /dev/null
@@ -1,102 +0,0 @@
-# Copyright 2020 The Knative Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: kfptask-controller-cluster-access
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
-subjects:
- - kind: ServiceAccount
- name: kfptask-controller
- namespace: tekton-pipelines
-roleRef:
- kind: ClusterRole
- name: kfptask-controller-cluster-access
- apiGroup: rbac.authorization.k8s.io
----
-# If this ClusterRoleBinding is replaced with a RoleBinding
-# then the ClusterRole would be namespaced. The access described by
-# the kfptask-controller-tenant-access ClusterRole would
-# be scoped to individual tenant namespaces.
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: kfptask-controller-tenant-access
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
-subjects:
- - kind: ServiceAccount
- name: kfptask-controller
- namespace: tekton-pipelines
-roleRef:
- kind: ClusterRole
- name: kfptask-controller-tenant-access
- apiGroup: rbac.authorization.k8s.io
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: kfptask-controller-leaderelection
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
-subjects:
- - kind: ServiceAccount
- name: kfptask-controller
- namespace: tekton-pipelines
-roleRef:
- kind: ClusterRole
- name: kfptask-leader-election
- apiGroup: rbac.authorization.k8s.io
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: kfptask-webhook-cluster-access
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
-subjects:
- - kind: ServiceAccount
- name: kfptask-webhook
- namespace: tekton-pipelines
-roleRef:
- kind: ClusterRole
- name: kfptask-webhook-cluster-access
- apiGroup: rbac.authorization.k8s.io
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: kfptask-webhook-leaderelection
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
-subjects:
- - kind: ServiceAccount
- name: kfptask-webhook
- namespace: tekton-pipelines
-roleRef:
- kind: ClusterRole
- name: kfptask-leader-election
- apiGroup: rbac.authorization.k8s.io
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/kfptask/300-kfptask-crd.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/kfptask/300-kfptask-crd.yaml
deleted file mode 100644
index 3c97edc..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/kfptask/300-kfptask-crd.yaml
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 2023 kubeflow.org
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- name: kfptasks.custom.tekton.dev
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
- pipeline.tekton.dev/release: "devel"
- version: "devel"
-spec:
- group: custom.tekton.dev
- versions:
- - name: v1alpha1
- served: true
- storage: true
- # Opt into the status subresource so metadata.generation
- # starts to increment
- subresources:
- status: {}
- schema:
- openAPIV3Schema:
- type: object
- # One can use x-kubernetes-preserve-unknown-fields: true
- # at the root of the schema (and inside any properties, additionalProperties)
- # to get the traditional CRD behaviour that nothing is pruned, despite
- # setting spec.preserveUnknownProperties: false.
- #
- # See https://kubernetes.io/blog/2019/06/20/crd-structural-schema/
- # See issue: https://github.com/knative/serving/issues/912
- x-kubernetes-preserve-unknown-fields: true
- names:
- kind: KfpTask
- plural: kfptasks
- categories:
- - tekton
- - tekton-pipelines
- - openshift-pipelines
- scope: Namespaced
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/kfptask/500-controller.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/kfptask/500-controller.yaml
deleted file mode 100644
index 8a09a87..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/kfptask/500-controller.yaml
+++ /dev/null
@@ -1,79 +0,0 @@
-# Copyright 2023 kubeflow.org
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: kfptask-controller
- labels:
- app.kubernetes.io/name: controller
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "devel"
- app.kubernetes.io/part-of: kfp-tekton
- # tekton.dev/release value replaced with inputs.params.versionTag in pipeline/tekton/publish.yaml
- pipeline.tekton.dev/release: "devel"
- # labels below are related to istio and should not be used for resource lookup
- version: "devel"
-spec:
- replicas: 1
- selector:
- matchLabels:
- app.kubernetes.io/name: controller
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
- template:
- metadata:
- annotations:
- cluster-autoscaler.kubernetes.io/safe-to-evict: "false"
- labels:
- app.kubernetes.io/name: controller
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "devel"
- app.kubernetes.io/part-of: kfp-tekton
- # tekton.dev/release value replaced with inputs.params.versionTag in pipeline/tekton/publish.yaml
- pipeline.tekton.dev/release: "devel"
- # labels below are related to istio and should not be used for resource lookup
- app: kfptask-controller
- version: "devel"
- spec:
- serviceAccountName: kfptask-controller
- containers:
- - name: kfptask-controller
- image: tekton-kfptask-controller:dummy
- env:
- - name: SYSTEM_NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- - name: CONFIG_LEADERELECTION_NAME
- value: config-leader-election
- - name: CONFIG_LOGGING_NAME
- value: config-logging
- - name: CONFIG_OBSERVABILITY_NAME
- value: config-observability
- - name: METRICS_DOMAIN
- value: tekton.dev/pipeline
- securityContext:
- allowPrivilegeEscalation: false
- capabilities:
- drop:
- - ALL
- runAsNonRoot: true
- runAsGroup: 65532
- runAsUser: 65532
- seccompProfile:
- type: RuntimeDefault
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/kfptask/500-webhook-configuration.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/kfptask/500-webhook-configuration.yaml
deleted file mode 100644
index 8391100..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/kfptask/500-webhook-configuration.yaml
+++ /dev/null
@@ -1,68 +0,0 @@
-# Copyright 2023 kubeflow.org
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: Secret
-metadata:
- name: kfptask-webhook-certs
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
- pipeline.tekton.dev/release: "devel"
-# The data is populated at install time.
-
----
-apiVersion: admissionregistration.k8s.io/v1
-kind: ValidatingWebhookConfiguration
-metadata:
- name: validation.webhook.kfptask.custom.tekton.dev
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
- pipeline.tekton.dev/release: "devel"
-webhooks:
-- admissionReviewVersions:
- - v1beta1
- clientConfig:
- service:
- name: kfptask-webhook
- namespace: tekton-pipelines
- failurePolicy: Fail
- sideEffects: None
- name: validation.webhook.kfptask.custom.tekton.dev
-
----
-apiVersion: admissionregistration.k8s.io/v1
-kind: MutatingWebhookConfiguration
-metadata:
- name: webhook.kfptask.custom.tekton.dev
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
- pipeline.tekton.dev/release: "devel"
-webhooks:
-- admissionReviewVersions:
- - v1beta1
- clientConfig:
- service:
- name: kfptask-webhook
- namespace: tekton-pipelines
- failurePolicy: Fail
- sideEffects: None
- name: webhook.kfptask.custom.tekton.dev
-
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/kfptask/500-webhook.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/kfptask/500-webhook.yaml
deleted file mode 100644
index 966eb46..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/kfptask/500-webhook.yaml
+++ /dev/null
@@ -1,122 +0,0 @@
-# Copyright 2023 kubeflow.org
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: kfptask-webhook
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "devel"
- app.kubernetes.io/part-of: kfp-tekton
- pipeline.tekton.dev/release: "devel"
- version: "devel"
-spec:
- replicas: 1
- selector:
- matchLabels:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
- template:
- metadata:
- annotations:
- cluster-autoscaler.kubernetes.io/safe-to-evict: "false"
- labels:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "devel"
- app.kubernetes.io/part-of: kfp-tekton
- pipeline.tekton.dev/release: "devel"
- app: tekton-pipelines-webhook
- version: "devel"
- spec:
- serviceAccountName: kfptask-webhook
- containers:
- - name: webhook
- image: tekton-kfptask-webhook:dummy
- env:
- - name: SYSTEM_NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- # If you are changing these names, you will also need to update
- # the webhook's Role in 200-role.yaml to include the new
- # values in the "configmaps" "get" rule.
- - name: CONFIG_LOGGING_NAME
- value: config-logging
- - name: CONFIG_OBSERVABILITY_NAME
- value: config-observability
- - name: CONFIG_LEADERELECTION_NAME
- value: config-leader-election
- - name: WEBHOOK_SERVICE_NAME
- value: kfptask-webhook
- - name: WEBHOOK_SECRET_NAME
- value: kfptask-webhook-certs
- - name: METRICS_DOMAIN
- value: tekton.dev/pipeline
- ports:
- - name: metrics
- containerPort: 9090
- - name: profiling
- containerPort: 8008
- - name: https-webhook
- containerPort: 8443
- securityContext:
- allowPrivilegeEscalation: false
- capabilities:
- drop:
- - ALL
- runAsNonRoot: true
- runAsGroup: 65532
- runAsUser: 65532
- seccompProfile:
- type: RuntimeDefault
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "devel"
- app.kubernetes.io/part-of: kfp-tekton
- pipeline.tekton.dev/release: "devel"
- app: tekton-pipelines-webhook
- version: "devel"
- name: kfptask-webhook
- namespace: tekton-pipelines
-spec:
- ports:
- # Define metrics and profiling for them to be accessible within service meshes.
- - name: http-metrics
- port: 9090
- targetPort: 9090
- - name: http-profiling
- port: 8008
- targetPort: 8008
- - name: https-webhook
- port: 443
- targetPort: 8443
- selector:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/kfptask/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/kfptask/kustomization.yaml
deleted file mode 100644
index de29e86..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/kfptask/kustomization.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
- - 200-serviceaccount.yaml
- - 201-clusterrole.yaml
- - 201-role.yaml
- - 201-rolebinding.yaml
- - 202-clusterrolebinding.yaml
- - 300-kfptask-crd.yaml
- - 500-controller.yaml
- - 500-webhook-configuration.yaml
- - 500-webhook.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/kustomization.yaml
deleted file mode 100644
index 3af66de..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/kustomization.yaml
+++ /dev/null
@@ -1,33 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
-- pipeline-loops
-- exit-handler
-- kfptask
-# Deprecated controller
-# - driver-controller
-
-namespace: tekton-pipelines
-
-images:
- - name: quay.io/aipipeline/pipelineloop-controller
- newTag: 1.9.2
- - name: quay.io/aipipeline/pipelineloop-webhook
- newTag: 1.9.2
- - name: tekton-exithandler-controller
- newName: quay.io/aipipeline/tekton-exithandler-controller
- newTag: 2.0.5
- - name: tekton-exithandler-webhook
- newName: quay.io/aipipeline/tekton-exithandler-webhook
- newTag: 2.0.5
- - name: tekton-kfptask-controller
- newName: quay.io/aipipeline/tekton-kfptask-controller
- newTag: 2.0.5
- - name: tekton-kfptask-webhook
- newName: quay.io/aipipeline/tekton-kfptask-webhook
- newTag: 2.0.5
- # Deprecated controller
- # - name: kfp-v2-dev-driver-controller
- # newName: quay.io/aipipeline/tekton-driver
- # newTag: 2.0.3
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/pipeline-loops/200-serviceaccount.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/pipeline-loops/200-serviceaccount.yaml
deleted file mode 100644
index c995e80..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/pipeline-loops/200-serviceaccount.yaml
+++ /dev/null
@@ -1,19 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: tekton-pipelineloop-controller
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
----
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: tekton-pipelineloop-webhook
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/pipeline-loops/201-clusterrole.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/pipeline-loops/201-clusterrole.yaml
deleted file mode 100644
index 34281f8..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/pipeline-loops/201-clusterrole.yaml
+++ /dev/null
@@ -1,95 +0,0 @@
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: tekton-pipelineloop-controller-cluster-access
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
-rules:
- # Controller needs cluster access to all of the CRDs that it is responsible for managing.
- - apiGroups: ["tekton.dev"]
- resources: ["runs", "customruns", "taskruns", "pipelineruns"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
- - apiGroups: ["tekton.dev"]
- resources: ["runs/status", "customruns/status", "taskruns/status", "pipelineruns/status", "runs/finalizers", "customruns/finalizers",]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
- - apiGroups: ["custom.tekton.dev"]
- resources: ["pipelineloops", "kfptasks"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
- - apiGroups: ["apps"]
- resources: ["deployments", "deployments/finalizers"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
----
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- # This is the access that the controller needs on a per-namespace basis.
- name: tekton-pipelineloop-controller-tenant-access
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
-rules:
- - apiGroups: [""]
- resources: ["events"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
----
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: tekton-pipelineloop-webhook-cluster-access
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
-rules:
- # The webhook needs to be able to list and update customresourcedefinitions,
- # mainly to update the webhook certificates.
- - apiGroups: ["apiextensions.k8s.io"]
- resources: ["customresourcedefinitions", "customresourcedefinitions/status"]
- verbs: ["get", "list", "update", "patch", "watch"]
- - apiGroups: [""]
- resources: ["namespaces"]
- verbs: ["get", "list", "update", "patch", "watch"]
- - apiGroups: ["admissionregistration.k8s.io"]
- # The webhook performs a reconciliation on these two resources and continuously
- # updates configuration.
- resources: ["mutatingwebhookconfigurations", "validatingwebhookconfigurations"]
- # knative starts informers on these things, which is why we need get, list and watch.
- verbs: ["list", "watch"]
- - apiGroups: ["admissionregistration.k8s.io"]
- resources: ["mutatingwebhookconfigurations"]
- # This mutating webhook is responsible for applying defaults to tekton objects
- # as they are received.
- resourceNames: ["webhook.pipelineloop.custom.tekton.dev"]
- # When there are changes to the configs or secrets, knative updates the mutatingwebhook config
- # with the updated certificates or the refreshed set of rules.
- verbs: ["get", "update"]
- - apiGroups: ["apps"]
- resources: ["deployments", "deployments/finalizers"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
- - apiGroups: ["admissionregistration.k8s.io"]
- resources: ["validatingwebhookconfigurations"]
- # validation.webhook.pipelineloop.custom.tekton.dev performs schema validation when you, for example, create PipelineLoops.
- resourceNames: ["validation.webhook.pipelineloop.custom.tekton.dev"]
- # When there are changes to the configs or secrets, knative updates the validatingwebhook config
- # with the updated certificates or the refreshed set of rules.
- verbs: ["get", "update"]
- - apiGroups: ["policy"]
- resources: ["podsecuritypolicies"]
- resourceNames: ["tekton-pipelines", "openshift-pipelines"]
- verbs: ["use"]
----
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: tekton-pipelineloop-leader-election
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
-rules:
- # We uses leases for leaderelection
- - apiGroups: ["coordination.k8s.io"]
- resources: ["leases"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/pipeline-loops/201-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/pipeline-loops/201-role.yaml
deleted file mode 100644
index 04b47b2..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/pipeline-loops/201-role.yaml
+++ /dev/null
@@ -1,54 +0,0 @@
-kind: Role
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: tekton-pipelineloop-controller
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
-rules:
- - apiGroups: [""]
- resources: ["configmaps"]
- verbs: ["list", "watch"]
- - apiGroups: [""]
- resources: ["configmaps"]
- verbs: ["get"]
- resourceNames: ["config-leader-election", "config-logging", "config-observability", "object-store-config"]
- - apiGroups: ["policy"]
- resources: ["podsecuritypolicies"]
- resourceNames: ["tekton-pipelines", "openshift-pipelines"]
- verbs: ["use"]
----
-kind: Role
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: tekton-pipelineloop-webhook
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
-rules:
- - apiGroups: [""]
- resources: ["configmaps"]
- verbs: ["list", "watch"]
- # The webhook needs access to these configmaps for logging information.
- - apiGroups: [""]
- resources: ["configmaps"]
- verbs: ["get"]
- resourceNames: ["config-logging", "config-observability", "config-leader-election", "object-store-config"]
- - apiGroups: [""]
- resources: ["secrets"]
- verbs: ["list", "watch"]
- # The webhook daemon makes a reconciliation loop on tekton-pipelineloop-webhook-certs. Whenever
- # the secret changes it updates the webhook configurations with the certificates
- # stored in the secret.
- - apiGroups: [""]
- resources: ["secrets"]
- verbs: ["get", "update"]
- resourceNames: ["tekton-pipelineloop-webhook-certs"]
- - apiGroups: ["policy"]
- resources: ["podsecuritypolicies"]
- resourceNames: ["tekton-pipelines", "openshift-pipelines"]
- verbs: ["use"]
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/pipeline-loops/201-rolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/pipeline-loops/201-rolebinding.yaml
deleted file mode 100644
index 0d00408..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/pipeline-loops/201-rolebinding.yaml
+++ /dev/null
@@ -1,35 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: tekton-pipelineloop-controller
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
-subjects:
- - kind: ServiceAccount
- name: tekton-pipelineloop-controller
- namespace: tekton-pipelines
-roleRef:
- kind: Role
- name: tekton-pipelineloop-controller
- apiGroup: rbac.authorization.k8s.io
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: tekton-pipelineloop-webhook
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
-subjects:
- - kind: ServiceAccount
- name: tekton-pipelineloop-webhook
- namespace: tekton-pipelines
-roleRef:
- kind: Role
- name: tekton-pipelineloop-webhook
- apiGroup: rbac.authorization.k8s.io
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/pipeline-loops/202-clusterrolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/pipeline-loops/202-clusterrolebinding.yaml
deleted file mode 100644
index 9a8e8bc..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/pipeline-loops/202-clusterrolebinding.yaml
+++ /dev/null
@@ -1,88 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: tekton-pipelineloop-controller-cluster-access
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
-subjects:
- - kind: ServiceAccount
- name: tekton-pipelineloop-controller
- namespace: tekton-pipelines
-roleRef:
- kind: ClusterRole
- name: tekton-pipelineloop-controller-cluster-access
- apiGroup: rbac.authorization.k8s.io
----
-# If this ClusterRoleBinding is replaced with a RoleBinding
-# then the ClusterRole would be namespaced. The access described by
-# the tekton-pipelineloop-controller-tenant-access ClusterRole would
-# be scoped to individual tenant namespaces.
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: tekton-pipelineloop-controller-tenant-access
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
-subjects:
- - kind: ServiceAccount
- name: tekton-pipelineloop-controller
- namespace: tekton-pipelines
-roleRef:
- kind: ClusterRole
- name: tekton-pipelineloop-controller-tenant-access
- apiGroup: rbac.authorization.k8s.io
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: tekton-pipelineloop-controller-leaderelection
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
-subjects:
- - kind: ServiceAccount
- name: tekton-pipelineloop-controller
- namespace: tekton-pipelines
-roleRef:
- kind: ClusterRole
- name: tekton-pipelineloop-leader-election
- apiGroup: rbac.authorization.k8s.io
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: tekton-pipelineloop-webhook-cluster-access
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
-subjects:
- - kind: ServiceAccount
- name: tekton-pipelineloop-webhook
- namespace: tekton-pipelines
-roleRef:
- kind: ClusterRole
- name: tekton-pipelineloop-webhook-cluster-access
- apiGroup: rbac.authorization.k8s.io
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: tekton-pipelineloop-webhook-leaderelection
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
-subjects:
- - kind: ServiceAccount
- name: tekton-pipelineloop-webhook
- namespace: tekton-pipelines
-roleRef:
- kind: ClusterRole
- name: tekton-pipelineloop-leader-election
- apiGroup: rbac.authorization.k8s.io
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/pipeline-loops/203-object-store-config.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/pipeline-loops/203-object-store-config.yaml
deleted file mode 100644
index 967b9ad..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/pipeline-loops/203-object-store-config.yaml
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 2020 The Knative Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: object-store-config
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines-loops
-data:
- enable: "false"
- defaultBucketName: "pipelineloop-logs"
- ibmStyleCredentials: "false"
- region: "us-south"
- accessKey: "minio"
- secretKey: "minio123"
- # Below are IBM cloud specific credentials, available if the flag ibmStyleCredentials is true.
- apiKey: ""
- serviceInstanceID: "crn:v1:bluemix:public:cloud-object-storage:global:a/ID-dummy-1231231231-123abcdefgh:dummy-values::"
- serviceEndpoint: "http://minio-service.kubeflow:9000"
- authEndpoint: "https://iam.cloud.ibm.com/identity/token"
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/pipeline-loops/204-cache-config.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/pipeline-loops/204-cache-config.yaml
deleted file mode 100644
index b64ca72..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/pipeline-loops/204-cache-config.yaml
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 2020 The Knative Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: cache-config
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines-loops
-data:
- disabled: "true"
- driver: "mysql"
- host: "mysql.kubeflow.svc.cluster.local"
- port: "3306"
- dbName: "cachedb"
- user: "root"
- password: ""
- timeout: "6m"
- extraParams: ""
- mysqlDBGroupConcatMaxLen: "4194304"
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/pipeline-loops/300-pipelineloop.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/pipeline-loops/300-pipelineloop.yaml
deleted file mode 100644
index de3b3ef..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/pipeline-loops/300-pipelineloop.yaml
+++ /dev/null
@@ -1,38 +0,0 @@
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- name: pipelineloops.custom.tekton.dev
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
- pipeline.tekton.dev/release: "devel"
- version: "devel"
-spec:
- group: custom.tekton.dev
- versions:
- - name: v1alpha1
- served: true
- storage: true
- # Opt into the status subresource so metadata.generation
- # starts to increment
- subresources:
- status: {}
- schema:
- openAPIV3Schema:
- type: object
- # One can use x-kubernetes-preserve-unknown-fields: true
- # at the root of the schema (and inside any properties, additionalProperties)
- # to get the traditional CRD behaviour that nothing is pruned, despite
- # setting spec.preserveUnknownProperties: false.
- #
- # See https://kubernetes.io/blog/2019/06/20/crd-structural-schema/
- # See issue: https://github.com/knative/serving/issues/912
- x-kubernetes-preserve-unknown-fields: true
- names:
- kind: PipelineLoop
- plural: pipelineloops
- categories:
- - tekton
- - tekton-pipelines
- - openshift-pipelines
- scope: Namespaced
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/pipeline-loops/301-breaktask.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/pipeline-loops/301-breaktask.yaml
deleted file mode 100644
index 4efdfe4..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/pipeline-loops/301-breaktask.yaml
+++ /dev/null
@@ -1,51 +0,0 @@
-# Copyright 2020 The Knative Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- name: breaktasks.custom.tekton.dev
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
- pipeline.tekton.dev/release: "devel"
- version: "devel"
-spec:
- group: custom.tekton.dev
- versions:
- - name: v1alpha1
- served: true
- storage: true
- # Opt into the status subresource so metadata.generation
- # starts to increment
- subresources:
- status: {}
- schema:
- openAPIV3Schema:
- type: object
- # One can use x-kubernetes-preserve-unknown-fields: true
- # at the root of the schema (and inside any properties, additionalProperties)
- # to get the traditional CRD behaviour that nothing is pruned, despite
- # setting spec.preserveUnknownProperties: false.
- #
- # See https://kubernetes.io/blog/2019/06/20/crd-structural-schema/
- # See issue: https://github.com/knative/serving/issues/912
- x-kubernetes-preserve-unknown-fields: true
- names:
- kind: BreakTask
- plural: breaktasks
- categories:
- - tekton
- - tekton-pipelines
- scope: Namespaced
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/pipeline-loops/500-controller.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/pipeline-loops/500-controller.yaml
deleted file mode 100644
index e58fc23..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/pipeline-loops/500-controller.yaml
+++ /dev/null
@@ -1,68 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: tekton-pipelineloop-controller
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/name: controller
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "devel"
- app.kubernetes.io/part-of: tekton-pipeline-loops
- # tekton.dev/release value replaced with inputs.params.versionTag in pipeline/tekton/publish.yaml
- pipeline.tekton.dev/release: "devel"
- # labels below are related to istio and should not be used for resource lookup
- version: "devel"
-spec:
- replicas: 1
- selector:
- matchLabels:
- app.kubernetes.io/name: controller
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
- template:
- metadata:
- annotations:
- cluster-autoscaler.kubernetes.io/safe-to-evict: "false"
- labels:
- app.kubernetes.io/name: controller
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "devel"
- app.kubernetes.io/part-of: tekton-pipeline-loops
- # tekton.dev/release value replaced with inputs.params.versionTag in pipeline/tekton/publish.yaml
- pipeline.tekton.dev/release: "devel"
- # labels below are related to istio and should not be used for resource lookup
- app: tekton-pipelineloop-controller
- version: "devel"
- spec:
- serviceAccountName: tekton-pipelineloop-controller
- containers:
- - name: tekton-pipelineloop-controller
- image: quay.io/aipipeline/pipelineloop-controller:nightly
- env:
- - name: KFPV2
- value: "true"
- - name: SYSTEM_NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- - name: CONFIG_LEADERELECTION_NAME
- value: config-leader-election
- - name: CONFIG_LOGGING_NAME
- value: config-logging
- - name: CONFIG_OBSERVABILITY_NAME
- value: config-observability
- - name: METRICS_DOMAIN
- value: tekton.dev/pipeline
- securityContext:
- allowPrivilegeEscalation: false
- capabilities:
- drop:
- - ALL
- runAsNonRoot: true
- runAsGroup: 65532
- runAsUser: 65532
- seccompProfile:
- type: RuntimeDefault
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/pipeline-loops/500-webhook-configuration.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/pipeline-loops/500-webhook-configuration.yaml
deleted file mode 100644
index 49e335b..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/pipeline-loops/500-webhook-configuration.yaml
+++ /dev/null
@@ -1,53 +0,0 @@
-apiVersion: v1
-kind: Secret
-metadata:
- name: tekton-pipelineloop-webhook-certs
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
- pipeline.tekton.dev/release: "devel"
-# The data is populated at install time.
-
----
-apiVersion: admissionregistration.k8s.io/v1
-kind: ValidatingWebhookConfiguration
-metadata:
- name: validation.webhook.pipelineloop.custom.tekton.dev
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
- pipeline.tekton.dev/release: "devel"
-webhooks:
-- admissionReviewVersions:
- - v1beta1
- clientConfig:
- service:
- name: tekton-pipelineloop-webhook
- namespace: tekton-pipelines
- failurePolicy: Fail
- sideEffects: None
- name: validation.webhook.pipelineloop.custom.tekton.dev
-
----
-apiVersion: admissionregistration.k8s.io/v1
-kind: MutatingWebhookConfiguration
-metadata:
- name: webhook.pipelineloop.custom.tekton.dev
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
- pipeline.tekton.dev/release: "devel"
-webhooks:
-- admissionReviewVersions:
- - v1beta1
- clientConfig:
- service:
- name: tekton-pipelineloop-webhook
- namespace: tekton-pipelines
- failurePolicy: Fail
- sideEffects: None
- name: webhook.pipelineloop.custom.tekton.dev
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/pipeline-loops/500-webhook.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/pipeline-loops/500-webhook.yaml
deleted file mode 100644
index ca53147..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/pipeline-loops/500-webhook.yaml
+++ /dev/null
@@ -1,108 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: tekton-pipelineloop-webhook
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "devel"
- app.kubernetes.io/part-of: tekton-pipeline-loops
- pipeline.tekton.dev/release: "devel"
- version: "devel"
-spec:
- replicas: 1
- selector:
- matchLabels:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
- template:
- metadata:
- annotations:
- cluster-autoscaler.kubernetes.io/safe-to-evict: "false"
- labels:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "devel"
- app.kubernetes.io/part-of: tekton-pipeline-loops
- pipeline.tekton.dev/release: "devel"
- app: tekton-pipelines-webhook
- version: "devel"
- spec:
- serviceAccountName: tekton-pipelineloop-webhook
- containers:
- - name: webhook
- image: quay.io/aipipeline/pipelineloop-webhook:nightly
- env:
- - name: SYSTEM_NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- # If you are changing these names, you will also need to update
- # the webhook's Role in 200-role.yaml to include the new
- # values in the "configmaps" "get" rule.
- - name: CONFIG_LOGGING_NAME
- value: config-logging
- - name: CONFIG_OBSERVABILITY_NAME
- value: config-observability
- - name: CONFIG_LEADERELECTION_NAME
- value: config-leader-election
- - name: WEBHOOK_SERVICE_NAME
- value: tekton-pipelineloop-webhook
- - name: WEBHOOK_SECRET_NAME
- value: tekton-pipelineloop-webhook-certs
- - name: METRICS_DOMAIN
- value: tekton.dev/pipeline
- ports:
- - name: metrics
- containerPort: 9090
- - name: profiling
- containerPort: 8008
- - name: https-webhook
- containerPort: 8443
- securityContext:
- allowPrivilegeEscalation: false
- capabilities:
- drop:
- - ALL
- runAsNonRoot: true
- runAsGroup: 65532
- runAsUser: 65532
- seccompProfile:
- type: RuntimeDefault
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "devel"
- app.kubernetes.io/part-of: tekton-pipeline-loops
- pipeline.tekton.dev/release: "devel"
- app: tekton-pipelines-webhook
- version: "devel"
- name: tekton-pipelineloop-webhook
- namespace: tekton-pipelines
-spec:
- ports:
- # Define metrics and profiling for them to be accessible within service meshes.
- - name: http-metrics
- port: 9090
- targetPort: 9090
- - name: http-profiling
- port: 8008
- targetPort: 8008
- - name: https-webhook
- port: 443
- targetPort: 8443
- selector:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/pipeline-loops/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/pipeline-loops/kustomization.yaml
deleted file mode 100644
index f888cfc..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton-custom-task/pipeline-loops/kustomization.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
- - 200-serviceaccount.yaml
- - 201-clusterrole.yaml
- - 201-role.yaml
- - 201-rolebinding.yaml
- - 202-clusterrolebinding.yaml
- - 203-object-store-config.yaml
- - 204-cache-config.yaml
- - 300-pipelineloop.yaml
- - 301-breaktask.yaml
- - 500-controller.yaml
- - 500-webhook-configuration.yaml
- - 500-webhook.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton/README.md b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton/README.md
deleted file mode 100644
index 7ac8432..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton/README.md
+++ /dev/null
@@ -1,10 +0,0 @@
-# Tekton manifests
-
-## Upgrade the Tekton Manifest Release
-
-To upgrade the Tekton pipeline or Tekton dashboard manifest to the latest release, run the following commands in this directory
-
-```shell
-curl -L https://storage.googleapis.com/tekton-releases/pipeline/latest/release.yaml --output upstream/manifests/base/tektoncd-install/tekton-release.yaml
-curl -L https://storage.googleapis.com/tekton-releases/dashboard/latest/release.yaml --output upstream/manifests/base/tektoncd-dashboard/tekton-dashboard-release.yaml
-```
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton/base/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton/base/kustomization.yaml
deleted file mode 100644
index 632bff2..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton/base/kustomization.yaml
+++ /dev/null
@@ -1,5 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-bases:
-- ../upstream/manifests/base/tektoncd-install
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton/installs/cluster/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton/installs/cluster/kustomization.yaml
deleted file mode 100644
index 2e9e797..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton/installs/cluster/kustomization.yaml
+++ /dev/null
@@ -1,5 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-bases:
- - ../../base
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton/upstream/manifests/base/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton/upstream/manifests/base/kustomization.yaml
deleted file mode 100644
index a654682..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton/upstream/manifests/base/kustomization.yaml
+++ /dev/null
@@ -1,6 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
-- tektoncd-install
-- tektoncd-dashboard
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton/upstream/manifests/base/tektoncd-dashboard/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton/upstream/manifests/base/tektoncd-dashboard/kustomization.yaml
deleted file mode 100644
index 53e0782..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton/upstream/manifests/base/tektoncd-dashboard/kustomization.yaml
+++ /dev/null
@@ -1,5 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
-- tekton-dashboard-release.yaml
-namespace: tekton-pipelines
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton/upstream/manifests/base/tektoncd-dashboard/tekton-dashboard-release.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton/upstream/manifests/base/tektoncd-dashboard/tekton-dashboard-release.yaml
deleted file mode 100644
index 0b7dd65..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton/upstream/manifests/base/tektoncd-dashboard/tekton-dashboard-release.yaml
+++ /dev/null
@@ -1,335 +0,0 @@
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- labels:
- app.kubernetes.io/component: dashboard
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-dashboard
- name: extensions.dashboard.tekton.dev
-spec:
- group: dashboard.tekton.dev
- names:
- categories:
- - tekton
- - tekton-dashboard
- kind: Extension
- plural: extensions
- shortNames:
- - ext
- - exts
- preserveUnknownFields: false
- scope: Namespaced
- versions:
- - additionalPrinterColumns:
- - jsonPath: .spec.apiVersion
- name: API version
- type: string
- - jsonPath: .spec.name
- name: Kind
- type: string
- - jsonPath: .spec.displayname
- name: Display name
- type: string
- - jsonPath: .metadata.creationTimestamp
- name: Age
- type: date
- name: v1alpha1
- schema:
- openAPIV3Schema:
- type: object
- x-kubernetes-preserve-unknown-fields: true
- served: true
- storage: true
- subresources:
- status: {}
----
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- labels:
- app.kubernetes.io/component: dashboard
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-dashboard
- name: tekton-dashboard
- namespace: tekton-pipelines
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata:
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-dashboard
- name: tekton-dashboard-info
- namespace: tekton-pipelines
-rules:
- - apiGroups:
- - ""
- resourceNames:
- - dashboard-info
- resources:
- - configmaps
- verbs:
- - get
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- labels:
- app.kubernetes.io/component: dashboard
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-dashboard
- name: tekton-dashboard-backend
-rules:
- - apiGroups:
- - apiextensions.k8s.io
- resources:
- - customresourcedefinitions
- verbs:
- - get
- - list
- - apiGroups:
- - security.openshift.io
- resources:
- - securitycontextconstraints
- verbs:
- - use
- - apiGroups:
- - tekton.dev
- resources:
- - clustertasks
- verbs:
- - get
- - list
- - watch
- - apiGroups:
- - triggers.tekton.dev
- resources:
- - clusterinterceptors
- - clustertriggerbindings
- verbs:
- - get
- - list
- - watch
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- labels:
- app.kubernetes.io/component: dashboard
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-dashboard
- name: tekton-dashboard-tenant
-rules:
- - apiGroups:
- - dashboard.tekton.dev
- resources:
- - extensions
- verbs:
- - get
- - list
- - watch
- - apiGroups:
- - ""
- resources:
- - events
- - namespaces
- - pods
- - pods/log
- verbs:
- - get
- - list
- - watch
- - apiGroups:
- - tekton.dev
- resources:
- - tasks
- - taskruns
- - pipelines
- - pipelineruns
- - customruns
- verbs:
- - get
- - list
- - watch
- - apiGroups:
- - triggers.tekton.dev
- resources:
- - eventlisteners
- - interceptors
- - triggerbindings
- - triggers
- - triggertemplates
- verbs:
- - get
- - list
- - watch
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-dashboard
- name: tekton-dashboard-info
- namespace: tekton-pipelines
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: tekton-dashboard-info
-subjects:
- - apiGroup: rbac.authorization.k8s.io
- kind: Group
- name: system:authenticated
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- labels:
- app.kubernetes.io/component: dashboard
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-dashboard
- rbac.dashboard.tekton.dev/subject: tekton-dashboard
- name: tekton-dashboard-backend
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: tekton-dashboard-backend
-subjects:
- - kind: ServiceAccount
- name: tekton-dashboard
- namespace: tekton-pipelines
----
-apiVersion: v1
-data:
- version: v0.41.0
-kind: ConfigMap
-metadata:
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-dashboard
- name: dashboard-info
- namespace: tekton-pipelines
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: tekton-dashboard
- app.kubernetes.io/component: dashboard
- app.kubernetes.io/instance: default
- app.kubernetes.io/name: dashboard
- app.kubernetes.io/part-of: tekton-dashboard
- app.kubernetes.io/version: v0.41.0
- dashboard.tekton.dev/release: v0.41.0
- version: v0.41.0
- name: tekton-dashboard
- namespace: tekton-pipelines
-spec:
- ports:
- - name: http
- port: 9097
- protocol: TCP
- targetPort: 9097
- selector:
- app.kubernetes.io/component: dashboard
- app.kubernetes.io/instance: default
- app.kubernetes.io/name: dashboard
- app.kubernetes.io/part-of: tekton-dashboard
----
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- labels:
- app: tekton-dashboard
- app.kubernetes.io/component: dashboard
- app.kubernetes.io/instance: default
- app.kubernetes.io/name: dashboard
- app.kubernetes.io/part-of: tekton-dashboard
- app.kubernetes.io/version: v0.41.0
- dashboard.tekton.dev/release: v0.41.0
- version: v0.41.0
- name: tekton-dashboard
- namespace: tekton-pipelines
-spec:
- replicas: 1
- selector:
- matchLabels:
- app.kubernetes.io/component: dashboard
- app.kubernetes.io/instance: default
- app.kubernetes.io/name: dashboard
- app.kubernetes.io/part-of: tekton-dashboard
- template:
- metadata:
- labels:
- app: tekton-dashboard
- app.kubernetes.io/component: dashboard
- app.kubernetes.io/instance: default
- app.kubernetes.io/name: dashboard
- app.kubernetes.io/part-of: tekton-dashboard
- app.kubernetes.io/version: v0.41.0
- name: tekton-dashboard
- spec:
- containers:
- - args:
- - --port=9097
- - --logout-url=
- - --pipelines-namespace=tekton-pipelines
- - --triggers-namespace=tekton-pipelines
- - --read-only=true
- - --log-level=info
- - --log-format=json
- - --namespace=
- - --namespaces=
- - --stream-logs=true
- - --external-logs=
- env:
- - name: INSTALLED_NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- image: gcr.io/tekton-releases/github.com/tektoncd/dashboard/cmd/dashboard:v0.41.0@sha256:698b458f98789177571182b8d092d49e44cd814ab8bbd3434e6ea66d538196c1
- livenessProbe:
- httpGet:
- path: /health
- port: 9097
- name: tekton-dashboard
- ports:
- - containerPort: 9097
- readinessProbe:
- httpGet:
- path: /readiness
- port: 9097
- securityContext:
- allowPrivilegeEscalation: false
- capabilities:
- drop:
- - ALL
- runAsGroup: 65532
- runAsNonRoot: true
- runAsUser: 65532
- seccompProfile:
- type: RuntimeDefault
- nodeSelector:
- kubernetes.io/os: linux
- serviceAccountName: tekton-dashboard
- volumes: []
-
----
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- labels:
- app.kubernetes.io/component: dashboard
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-dashboard
- rbac.dashboard.tekton.dev/subject: tekton-dashboard
- name: tekton-dashboard-tenant
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: tekton-dashboard-tenant
-subjects:
- - kind: ServiceAccount
- name: tekton-dashboard
- namespace: tekton-pipelines
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton/upstream/manifests/base/tektoncd-install/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton/upstream/manifests/base/tektoncd-install/kustomization.yaml
deleted file mode 100644
index 62fd8a4..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton/upstream/manifests/base/tektoncd-install/kustomization.yaml
+++ /dev/null
@@ -1,22 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
-- tekton-release.yaml
-patchesStrategicMerge:
-- tekton-config.yaml
-- tekton-default.yaml
-patchesJson6902:
-- target:
- group: apps
- version: v1
- kind: Deployment
- name: tekton-pipelines-controller
- namespace: tekton-pipelines
- path: tekton-controller.yaml
-images:
-- name: $(registry)/$(controller)
- newName: $(registry)/$(controller)
- newTag: latest
-- name: $(registry)/$(webhook)
- newName: $(registry)/$(webhook)
- newTag: latest
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton/upstream/manifests/base/tektoncd-install/tekton-config.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton/upstream/manifests/base/tektoncd-install/tekton-config.yaml
deleted file mode 100644
index e66f1a5..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton/upstream/manifests/base/tektoncd-install/tekton-config.yaml
+++ /dev/null
@@ -1,10 +0,0 @@
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: feature-flags
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- running-in-environment-with-injected-sidecars: "false"
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton/upstream/manifests/base/tektoncd-install/tekton-controller.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton/upstream/manifests/base/tektoncd-install/tekton-controller.yaml
deleted file mode 100644
index ddd4b74..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton/upstream/manifests/base/tektoncd-install/tekton-controller.yaml
+++ /dev/null
@@ -1,18 +0,0 @@
-- op: add
- path: /spec/template/spec/containers/0/args/0
- value: "4"
-- op: add
- path: /spec/template/spec/containers/0/args/0
- value: "-threads-per-controller"
-- op: add
- path: /spec/template/spec/containers/0/args/0
- value: "50"
-- op: add
- path: /spec/template/spec/containers/0/args/0
- value: "-kube-api-burst"
-- op: add
- path: /spec/template/spec/containers/0/args/0
- value: "50"
-- op: add
- path: /spec/template/spec/containers/0/args/0
- value: "-kube-api-qps"
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton/upstream/manifests/base/tektoncd-install/tekton-default.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton/upstream/manifests/base/tektoncd-install/tekton-default.yaml
deleted file mode 100644
index 8755f6e..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton/upstream/manifests/base/tektoncd-install/tekton-default.yaml
+++ /dev/null
@@ -1,10 +0,0 @@
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: config-defaults
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- default-timeout-minutes: "0"
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton/upstream/manifests/base/tektoncd-install/tekton-release.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton/upstream/manifests/base/tektoncd-install/tekton-release.yaml
deleted file mode 100644
index aa826b6..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/tekton/upstream/manifests/base/tektoncd-install/tekton-release.yaml
+++ /dev/null
@@ -1,3463 +0,0 @@
-# Copyright 2019 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: Namespace
-metadata:
- name: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- pod-security.kubernetes.io/enforce: restricted
-
----
-# Copyright 2020-2022 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: tekton-pipelines-controller-cluster-access
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-rules:
- - apiGroups: [""]
- # Controller needs to watch Pods created by TaskRuns to see them progress.
- resources: ["pods"]
- verbs: ["list", "watch"]
- - apiGroups: [""]
- # Controller needs to get the list of cordoned nodes over the course of a single run
- resources: ["nodes"]
- verbs: ["list"]
- # Controller needs cluster access to all of the CRDs that it is responsible for
- # managing.
- - apiGroups: ["tekton.dev"]
- resources: ["tasks", "clustertasks", "taskruns", "pipelines", "pipelineruns", "customruns", "stepactions"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
- - apiGroups: ["tekton.dev"]
- resources: ["verificationpolicies"]
- verbs: ["get", "list", "watch"]
- - apiGroups: ["tekton.dev"]
- resources: ["taskruns/finalizers", "pipelineruns/finalizers", "customruns/finalizers"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
- - apiGroups: ["tekton.dev"]
- resources: ["tasks/status", "clustertasks/status", "taskruns/status", "pipelines/status", "pipelineruns/status", "customruns/status", "verificationpolicies/status", "stepactions/status"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
- # resolution.tekton.dev
- - apiGroups: ["resolution.tekton.dev"]
- resources: ["resolutionrequests", "resolutionrequests/status"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
----
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- # This is the access that the controller needs on a per-namespace basis.
- name: tekton-pipelines-controller-tenant-access
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-rules:
- # Read-write access to create Pods and PVCs (for Workspaces)
- - apiGroups: [""]
- resources: ["pods", "persistentvolumeclaims"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
- # Write permissions to publish events.
- - apiGroups: [""]
- resources: ["events"]
- verbs: ["create", "update", "patch"]
- # Read-only access to these.
- - apiGroups: [""]
- resources: ["configmaps", "limitranges", "secrets", "serviceaccounts"]
- verbs: ["get", "list", "watch"]
- # Read-write access to StatefulSets for Affinity Assistant.
- - apiGroups: ["apps"]
- resources: ["statefulsets"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
----
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: tekton-pipelines-webhook-cluster-access
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-rules:
- # The webhook needs to be able to get and update customresourcedefinitions,
- # mainly to update the webhook certificates.
- - apiGroups: ["apiextensions.k8s.io"]
- resources: ["customresourcedefinitions", "customresourcedefinitions/status"]
- verbs: ["get", "update", "patch"]
- resourceNames:
- - pipelines.tekton.dev
- - pipelineruns.tekton.dev
- - tasks.tekton.dev
- - clustertasks.tekton.dev
- - taskruns.tekton.dev
- - resolutionrequests.resolution.tekton.dev
- - customruns.tekton.dev
- - verificationpolicies.tekton.dev
- - stepactions.tekton.dev
- # knative.dev/pkg needs list/watch permissions to set up informers for the webhook.
- - apiGroups: ["apiextensions.k8s.io"]
- resources: ["customresourcedefinitions"]
- verbs: ["list", "watch"]
- - apiGroups: ["admissionregistration.k8s.io"]
- # The webhook performs a reconciliation on these two resources and continuously
- # updates configuration.
- resources: ["mutatingwebhookconfigurations", "validatingwebhookconfigurations"]
- # knative starts informers on these things, which is why we need get, list and watch.
- verbs: ["list", "watch"]
- - apiGroups: ["admissionregistration.k8s.io"]
- resources: ["mutatingwebhookconfigurations"]
- # This mutating webhook is responsible for applying defaults to tekton objects
- # as they are received.
- resourceNames: ["webhook.pipeline.tekton.dev"]
- # When there are changes to the configs or secrets, knative updates the mutatingwebhook config
- # with the updated certificates or the refreshed set of rules.
- verbs: ["get", "update", "delete"]
- - apiGroups: ["admissionregistration.k8s.io"]
- resources: ["validatingwebhookconfigurations"]
- # validation.webhook.pipeline.tekton.dev performs schema validation when you, for example, create TaskRuns.
- # config.webhook.pipeline.tekton.dev validates the logging configuration against knative's logging structure
- resourceNames: ["validation.webhook.pipeline.tekton.dev", "config.webhook.pipeline.tekton.dev"]
- # When there are changes to the configs or secrets, knative updates the validatingwebhook config
- # with the updated certificates or the refreshed set of rules.
- verbs: ["get", "update", "delete"]
- - apiGroups: [""]
- resources: ["namespaces"]
- verbs: ["get"]
- # The webhook configured the namespace as the OwnerRef on various cluster-scoped resources,
- # which requires we can Get the system namespace.
- resourceNames: ["tekton-pipelines"]
- - apiGroups: [""]
- resources: ["namespaces/finalizers"]
- verbs: ["update"]
- # The webhook configured the namespace as the OwnerRef on various cluster-scoped resources,
- # which requires we can update the system namespace finalizers.
- resourceNames: ["tekton-pipelines"]
----
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: tekton-events-controller-cluster-access
- labels:
- app.kubernetes.io/component: events
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-rules:
- - apiGroups: ["tekton.dev"]
- resources: ["tasks", "clustertasks", "taskruns", "pipelines", "pipelineruns", "customruns"]
- verbs: ["get", "list", "watch"]
-
----
-# Copyright 2020 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-kind: Role
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: tekton-pipelines-controller
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-rules:
- - apiGroups: [""]
- resources: ["configmaps"]
- verbs: ["list", "watch"]
- # The controller needs access to these configmaps for logging information and runtime configuration.
- - apiGroups: [""]
- resources: ["configmaps"]
- verbs: ["get"]
- resourceNames: ["config-logging", "config-observability", "feature-flags", "config-leader-election-controller", "config-registry-cert"]
----
-kind: Role
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-rules:
- - apiGroups: [""]
- resources: ["configmaps"]
- verbs: ["list", "watch"]
- # The webhook needs access to these configmaps for logging information.
- - apiGroups: [""]
- resources: ["configmaps"]
- verbs: ["get"]
- resourceNames: ["config-logging", "config-observability", "config-leader-election-webhook", "feature-flags"]
- - apiGroups: [""]
- resources: ["secrets"]
- verbs: ["list", "watch"]
- # The webhook daemon makes a reconciliation loop on webhook-certs. Whenever
- # the secret changes it updates the webhook configurations with the certificates
- # stored in the secret.
- - apiGroups: [""]
- resources: ["secrets"]
- verbs: ["get", "update"]
- resourceNames: ["webhook-certs"]
----
-kind: Role
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: tekton-pipelines-events-controller
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: events
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-rules:
- - apiGroups: [""]
- resources: ["configmaps"]
- verbs: ["list", "watch"]
- # The controller needs access to these configmaps for logging information and runtime configuration.
- - apiGroups: [""]
- resources: ["configmaps"]
- verbs: ["get"]
- resourceNames: ["config-logging", "config-observability", "feature-flags", "config-leader-election-events", "config-registry-cert"]
----
-kind: Role
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: tekton-pipelines-leader-election
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-rules:
- # We uses leases for leaderelection
- - apiGroups: ["coordination.k8s.io"]
- resources: ["leases"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata:
- name: tekton-pipelines-info
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-rules:
- # All system:authenticated users needs to have access
- # of the pipelines-info ConfigMap even if they don't
- # have access to the other resources present in the
- # installed namespace.
- - apiGroups: [""]
- resources: ["configmaps"]
- resourceNames: ["pipelines-info"]
- verbs: ["get"]
-
----
-# Copyright 2019 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: tekton-pipelines-controller
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
----
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
----
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: tekton-events-controller
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: events
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-
----
-# Copyright 2019 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: tekton-pipelines-controller-cluster-access
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-subjects:
- - kind: ServiceAccount
- name: tekton-pipelines-controller
- namespace: tekton-pipelines
-roleRef:
- kind: ClusterRole
- name: tekton-pipelines-controller-cluster-access
- apiGroup: rbac.authorization.k8s.io
----
-# If this ClusterRoleBinding is replaced with a RoleBinding
-# then the ClusterRole would be namespaced. The access described by
-# the tekton-pipelines-controller-tenant-access ClusterRole would
-# be scoped to individual tenant namespaces.
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: tekton-pipelines-controller-tenant-access
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-subjects:
- - kind: ServiceAccount
- name: tekton-pipelines-controller
- namespace: tekton-pipelines
-roleRef:
- kind: ClusterRole
- name: tekton-pipelines-controller-tenant-access
- apiGroup: rbac.authorization.k8s.io
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: tekton-pipelines-webhook-cluster-access
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-subjects:
- - kind: ServiceAccount
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
-roleRef:
- kind: ClusterRole
- name: tekton-pipelines-webhook-cluster-access
- apiGroup: rbac.authorization.k8s.io
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: tekton-events-controller-cluster-access
- labels:
- app.kubernetes.io/component: events
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-subjects:
- - kind: ServiceAccount
- name: tekton-events-controller
- namespace: tekton-pipelines
-roleRef:
- kind: ClusterRole
- name: tekton-events-controller-cluster-access
- apiGroup: rbac.authorization.k8s.io
-
----
-# Copyright 2020 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: tekton-pipelines-controller
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-subjects:
- - kind: ServiceAccount
- name: tekton-pipelines-controller
- namespace: tekton-pipelines
-roleRef:
- kind: Role
- name: tekton-pipelines-controller
- apiGroup: rbac.authorization.k8s.io
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-subjects:
- - kind: ServiceAccount
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
-roleRef:
- kind: Role
- name: tekton-pipelines-webhook
- apiGroup: rbac.authorization.k8s.io
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: tekton-pipelines-controller-leaderelection
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-subjects:
- - kind: ServiceAccount
- name: tekton-pipelines-controller
- namespace: tekton-pipelines
-roleRef:
- kind: Role
- name: tekton-pipelines-leader-election
- apiGroup: rbac.authorization.k8s.io
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: tekton-pipelines-webhook-leaderelection
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-subjects:
- - kind: ServiceAccount
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
-roleRef:
- kind: Role
- name: tekton-pipelines-leader-election
- apiGroup: rbac.authorization.k8s.io
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: tekton-pipelines-info
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-subjects:
- # Giving all system:authenticated users the access of the
- # ConfigMap which contains version information.
- - kind: Group
- name: system:authenticated
- apiGroup: rbac.authorization.k8s.io
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: tekton-pipelines-info
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: tekton-pipelines-events-controller
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: events
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-subjects:
- - kind: ServiceAccount
- name: tekton-events-controller
- namespace: tekton-pipelines
-roleRef:
- kind: Role
- name: tekton-pipelines-events-controller
- apiGroup: rbac.authorization.k8s.io
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: tekton-events-controller-leaderelection
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: events
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-subjects:
- - kind: ServiceAccount
- name: tekton-events-controller
- namespace: tekton-pipelines
-roleRef:
- kind: Role
- name: tekton-pipelines-leader-election
- apiGroup: rbac.authorization.k8s.io
-
----
-# Copyright 2019 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- name: clustertasks.tekton.dev
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- pipeline.tekton.dev/release: "v0.53.2"
- version: "v0.53.2"
-spec:
- group: tekton.dev
- preserveUnknownFields: false
- versions:
- - name: v1beta1
- served: true
- storage: true
- schema:
- openAPIV3Schema:
- type: object
- # One can use x-kubernetes-preserve-unknown-fields: true
- # at the root of the schema (and inside any properties, additionalProperties)
- # to get the traditional CRD behaviour that nothing is pruned, despite
- # setting spec.preserveUnknownProperties: false.
- #
- # See https://kubernetes.io/blog/2019/06/20/crd-structural-schema/
- # See issue: https://github.com/knative/serving/issues/912
- x-kubernetes-preserve-unknown-fields: true
- # Opt into the status subresource so metadata.generation
- # starts to increment
- subresources:
- status: {}
- names:
- kind: ClusterTask
- plural: clustertasks
- singular: clustertask
- categories:
- - tekton
- - tekton-pipelines
- scope: Cluster
- conversion:
- strategy: Webhook
- webhook:
- conversionReviewVersions: ["v1beta1"]
- clientConfig:
- service:
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
-
----
-# Copyright 2020 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- name: customruns.tekton.dev
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- pipeline.tekton.dev/release: "v0.53.2"
- version: "v0.53.2"
-spec:
- group: tekton.dev
- preserveUnknownFields: false
- versions:
- - name: v1beta1
- served: true
- storage: true
- schema:
- openAPIV3Schema:
- type: object
- # One can use x-kubernetes-preserve-unknown-fields: true
- # at the root of the schema (and inside any properties, additionalProperties)
- # to get the traditional CRD behaviour that nothing is pruned, despite
- # setting spec.preserveUnknownProperties: false.
- #
- # See https://kubernetes.io/blog/2019/06/20/crd-structural-schema/
- # See issue: https://github.com/knative/serving/issues/912
- x-kubernetes-preserve-unknown-fields: true
- additionalPrinterColumns:
- - name: Succeeded
- type: string
- jsonPath: ".status.conditions[?(@.type==\"Succeeded\")].status"
- - name: Reason
- type: string
- jsonPath: ".status.conditions[?(@.type==\"Succeeded\")].reason"
- - name: StartTime
- type: date
- jsonPath: .status.startTime
- - name: CompletionTime
- type: date
- jsonPath: .status.completionTime
- # Opt into the status subresource so metadata.generation
- # starts to increment
- subresources:
- status: {}
- names:
- kind: CustomRun
- plural: customruns
- singular: customrun
- categories:
- - tekton
- - tekton-pipelines
- scope: Namespaced
-
----
-# Copyright 2019 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- name: pipelines.tekton.dev
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- pipeline.tekton.dev/release: "v0.53.2"
- version: "v0.53.2"
-spec:
- group: tekton.dev
- preserveUnknownFields: false
- versions:
- - name: v1beta1
- served: true
- storage: false
- subresources:
- status: {}
- schema:
- openAPIV3Schema:
- type: object
- # One can use x-kubernetes-preserve-unknown-fields: true
- # at the root of the schema (and inside any properties, additionalProperties)
- # to get the traditional CRD behaviour that nothing is pruned, despite
- # setting spec.preserveUnknownProperties: false.
- #
- # See https://kubernetes.io/blog/2019/06/20/crd-structural-schema/
- # See issue: https://github.com/knative/serving/issues/912
- x-kubernetes-preserve-unknown-fields: true
- - name: v1
- served: true
- storage: true
- schema:
- openAPIV3Schema:
- type: object
- # OpenAPIV3 schema allows Kubernetes to perform validation on the schema fields
- # and use the schema in tooling such as `kubectl explain`.
- # Using "x-kubernetes-preserve-unknown-fields: true"
- # at the root of the schema (or within it) allows arbitrary fields.
- # We currently perform our own validation separately.
- # See https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/#specifying-a-structural-schema
- # for more info.
- x-kubernetes-preserve-unknown-fields: true
- # Opt into the status subresource so metadata.generation
- # starts to increment
- subresources:
- status: {}
- names:
- kind: Pipeline
- plural: pipelines
- singular: pipeline
- categories:
- - tekton
- - tekton-pipelines
- scope: Namespaced
- conversion:
- strategy: Webhook
- webhook:
- conversionReviewVersions: ["v1beta1", "v1"]
- clientConfig:
- service:
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
-
----
-# Copyright 2019 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- name: pipelineruns.tekton.dev
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- pipeline.tekton.dev/release: "v0.53.2"
- version: "v0.53.2"
-spec:
- group: tekton.dev
- preserveUnknownFields: false
- versions:
- - name: v1beta1
- served: true
- storage: false
- schema:
- openAPIV3Schema:
- type: object
- # One can use x-kubernetes-preserve-unknown-fields: true
- # at the root of the schema (and inside any properties, additionalProperties)
- # to get the traditional CRD behaviour that nothing is pruned, despite
- # setting spec.preserveUnknownProperties: false.
- #
- # See https://kubernetes.io/blog/2019/06/20/crd-structural-schema/
- # See issue: https://github.com/knative/serving/issues/912
- x-kubernetes-preserve-unknown-fields: true
- additionalPrinterColumns:
- - name: Succeeded
- type: string
- jsonPath: ".status.conditions[?(@.type==\"Succeeded\")].status"
- - name: Reason
- type: string
- jsonPath: ".status.conditions[?(@.type==\"Succeeded\")].reason"
- - name: StartTime
- type: date
- jsonPath: .status.startTime
- - name: CompletionTime
- type: date
- jsonPath: .status.completionTime
- # Opt into the status subresource so metadata.generation
- # starts to increment
- subresources:
- status: {}
- - name: v1
- served: true
- storage: true
- schema:
- openAPIV3Schema:
- type: object
- # One can use x-kubernetes-preserve-unknown-fields: true
- # at the root of the schema (and inside any properties, additionalProperties)
- # to get the traditional CRD behaviour that nothing is pruned, despite
- # setting spec.preserveUnknownProperties: false.
- #
- # See https://kubernetes.io/blog/2019/06/20/crd-structural-schema/
- # See issue: https://github.com/knative/serving/issues/912
- x-kubernetes-preserve-unknown-fields: true
- additionalPrinterColumns:
- - name: Succeeded
- type: string
- jsonPath: ".status.conditions[?(@.type==\"Succeeded\")].status"
- - name: Reason
- type: string
- jsonPath: ".status.conditions[?(@.type==\"Succeeded\")].reason"
- - name: StartTime
- type: date
- jsonPath: .status.startTime
- - name: CompletionTime
- type: date
- jsonPath: .status.completionTime
- # Opt into the status subresource so metadata.generation
- # starts to increment
- subresources:
- status: {}
- names:
- kind: PipelineRun
- plural: pipelineruns
- singular: pipelinerun
- categories:
- - tekton
- - tekton-pipelines
- shortNames:
- - pr
- - prs
- scope: Namespaced
- conversion:
- strategy: Webhook
- webhook:
- conversionReviewVersions: ["v1beta1", "v1"]
- clientConfig:
- service:
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
-
----
-# Copyright 2022 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- name: resolutionrequests.resolution.tekton.dev
- labels:
- resolution.tekton.dev/release: devel
-spec:
- group: resolution.tekton.dev
- scope: Namespaced
- names:
- kind: ResolutionRequest
- plural: resolutionrequests
- singular: resolutionrequest
- categories:
- - tekton
- - tekton-pipelines
- shortNames:
- - resolutionrequest
- - resolutionrequests
- versions:
- - name: v1alpha1
- served: true
- deprecated: true
- storage: false
- subresources:
- status: {}
- schema:
- openAPIV3Schema:
- type: object
- # One can use x-kubernetes-preserve-unknown-fields: true
- # at the root of the schema (and inside any properties, additionalProperties)
- # to get the traditional CRD behaviour that nothing is pruned, despite
- # setting spec.preserveUnknownProperties: false.
- #
- # See https://kubernetes.io/blog/2019/06/20/crd-structural-schema/
- # See issue: https://github.com/knative/serving/issues/912
- x-kubernetes-preserve-unknown-fields: true
- additionalPrinterColumns:
- - name: Succeeded
- type: string
- jsonPath: ".status.conditions[?(@.type=='Succeeded')].status"
- - name: Reason
- type: string
- jsonPath: ".status.conditions[?(@.type=='Succeeded')].reason"
- - name: v1beta1
- served: true
- storage: true
- subresources:
- status: {}
- schema:
- openAPIV3Schema:
- type: object
- # One can use x-kubernetes-preserve-unknown-fields: true
- # at the root of the schema (and inside any properties, additionalProperties)
- # to get the traditional CRD behaviour that nothing is pruned, despite
- # setting spec.preserveUnknownProperties: false.
- #
- # See https://kubernetes.io/blog/2019/06/20/crd-structural-schema/
- # See issue: https://github.com/knative/serving/issues/912
- x-kubernetes-preserve-unknown-fields: true
- additionalPrinterColumns:
- - name: OwnerKind
- type: string
- jsonPath: ".metadata.ownerReferences[0].kind"
- - name: Owner
- type: string
- jsonPath: ".metadata.ownerReferences[0].name"
- - name: Succeeded
- type: string
- jsonPath: ".status.conditions[?(@.type=='Succeeded')].status"
- - name: Reason
- type: string
- jsonPath: ".status.conditions[?(@.type=='Succeeded')].reason"
- - name: StartTime
- type: string
- jsonPath: .metadata.creationTimestamp
- - name: EndTime
- type: string
- jsonPath: .status.conditions[?(@.type=='Succeeded')].lastTransitionTime
- conversion:
- strategy: Webhook
- webhook:
- conversionReviewVersions: ["v1alpha1", "v1beta1"]
- clientConfig:
- service:
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
-
----
-# Copyright 2023 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- name: stepactions.tekton.dev
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- pipeline.tekton.dev/release: "v0.53.2"
- version: "v0.53.2"
-spec:
- group: tekton.dev
- preserveUnknownFields: false
- versions:
- - name: v1alpha1
- served: true
- storage: true
- schema:
- openAPIV3Schema:
- type: object
- # One can use x-kubernetes-preserve-unknown-fields: true
- # at the root of the schema (and inside any properties, additionalProperties)
- # to get the traditional CRD behaviour that nothing is pruned, despite
- # setting spec.preserveUnknownProperties: false.
- #
- # See https://kubernetes.io/blog/2019/06/20/crd-structural-schema/
- # See issue: https://github.com/knative/serving/issues/912
- x-kubernetes-preserve-unknown-fields: true
- # Opt into the status subresource so metadata.generation
- # starts to increment
- subresources:
- status: {}
- names:
- kind: StepAction
- plural: stepactions
- singular: stepaction
- categories:
- - tekton
- - tekton-pipelines
- scope: Namespaced
-
----
-# Copyright 2019 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- name: tasks.tekton.dev
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- pipeline.tekton.dev/release: "v0.53.2"
- version: "v0.53.2"
-spec:
- group: tekton.dev
- preserveUnknownFields: false
- versions:
- - name: v1beta1
- served: true
- storage: false
- schema:
- openAPIV3Schema:
- type: object
- # One can use x-kubernetes-preserve-unknown-fields: true
- # at the root of the schema (and inside any properties, additionalProperties)
- # to get the traditional CRD behaviour that nothing is pruned, despite
- # setting spec.preserveUnknownProperties: false.
- #
- # See https://kubernetes.io/blog/2019/06/20/crd-structural-schema/
- # See issue: https://github.com/knative/serving/issues/912
- x-kubernetes-preserve-unknown-fields: true
- # Opt into the status subresource so metadata.generation
- # starts to increment
- subresources:
- status: {}
- - name: v1
- served: true
- storage: true
- schema:
- openAPIV3Schema:
- type: object
- # TODO(#1461): Add OpenAPIV3 schema
- # OpenAPIV3 schema allows Kubernetes to perform validation on the schema fields
- # and use the schema in tooling such as `kubectl explain`.
- # Using "x-kubernetes-preserve-unknown-fields: true"
- # at the root of the schema (or within it) allows arbitrary fields.
- # We currently perform our own validation separately.
- # See https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/#specifying-a-structural-schema
- # for more info.
- x-kubernetes-preserve-unknown-fields: true
- # Opt into the status subresource so metadata.generation
- # starts to increment
- subresources:
- status: {}
- names:
- kind: Task
- plural: tasks
- singular: task
- categories:
- - tekton
- - tekton-pipelines
- scope: Namespaced
- conversion:
- strategy: Webhook
- webhook:
- conversionReviewVersions: ["v1beta1", "v1"]
- clientConfig:
- service:
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
-
----
-# Copyright 2019 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- name: taskruns.tekton.dev
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- pipeline.tekton.dev/release: "v0.53.2"
- version: "v0.53.2"
-spec:
- group: tekton.dev
- preserveUnknownFields: false
- versions:
- - name: v1beta1
- served: true
- storage: false
- schema:
- openAPIV3Schema:
- type: object
- # One can use x-kubernetes-preserve-unknown-fields: true
- # at the root of the schema (and inside any properties, additionalProperties)
- # to get the traditional CRD behaviour that nothing is pruned, despite
- # setting spec.preserveUnknownProperties: false.
- #
- # See https://kubernetes.io/blog/2019/06/20/crd-structural-schema/
- # See issue: https://github.com/knative/serving/issues/912
- x-kubernetes-preserve-unknown-fields: true
- additionalPrinterColumns:
- - name: Succeeded
- type: string
- jsonPath: ".status.conditions[?(@.type==\"Succeeded\")].status"
- - name: Reason
- type: string
- jsonPath: ".status.conditions[?(@.type==\"Succeeded\")].reason"
- - name: StartTime
- type: date
- jsonPath: .status.startTime
- - name: CompletionTime
- type: date
- jsonPath: .status.completionTime
- # Opt into the status subresource so metadata.generation
- # starts to increment
- subresources:
- status: {}
- - name: v1
- served: true
- storage: true
- schema:
- openAPIV3Schema:
- type: object
- # One can use x-kubernetes-preserve-unknown-fields: true
- # at the root of the schema (and inside any properties, additionalProperties)
- # to get the traditional CRD behaviour that nothing is pruned, despite
- # setting spec.preserveUnknownProperties: false.
- #
- # See https://kubernetes.io/blog/2019/06/20/crd-structural-schema/
- # See issue: https://github.com/knative/serving/issues/912
- x-kubernetes-preserve-unknown-fields: true
- additionalPrinterColumns:
- - name: Succeeded
- type: string
- jsonPath: ".status.conditions[?(@.type==\"Succeeded\")].status"
- - name: Reason
- type: string
- jsonPath: ".status.conditions[?(@.type==\"Succeeded\")].reason"
- - name: StartTime
- type: date
- jsonPath: .status.startTime
- - name: CompletionTime
- type: date
- jsonPath: .status.completionTime
- # Opt into the status subresource so metadata.generation
- # starts to increment
- subresources:
- status: {}
- names:
- kind: TaskRun
- plural: taskruns
- singular: taskrun
- categories:
- - tekton
- - tekton-pipelines
- shortNames:
- - tr
- - trs
- scope: Namespaced
- conversion:
- strategy: Webhook
- webhook:
- conversionReviewVersions: ["v1beta1", "v1"]
- clientConfig:
- service:
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
-
----
-# Copyright 2022 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- name: verificationpolicies.tekton.dev
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- pipeline.tekton.dev/release: "v0.53.2"
- version: "v0.53.2"
-spec:
- group: tekton.dev
- versions:
- - name: v1alpha1
- served: true
- storage: true
- schema:
- openAPIV3Schema:
- type: object
- # One can use x-kubernetes-preserve-unknown-fields: true
- # at the root of the schema (and inside any properties, additionalProperties)
- # to get the traditional CRD behaviour that nothing is pruned, despite
- # setting spec.preserveUnknownProperties: false.
- #
- # See https://kubernetes.io/blog/2019/06/20/crd-structural-schema/
- # See issue: https://github.com/knative/serving/issues/912
- x-kubernetes-preserve-unknown-fields: true
- names:
- kind: VerificationPolicy
- plural: verificationpolicies
- singular: verificationpolicy
- categories:
- - tekton
- - tekton-pipelines
- scope: Namespaced
-
----
-# Copyright 2020 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: Secret
-metadata:
- name: webhook-certs
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- pipeline.tekton.dev/release: "v0.53.2"
-# The data is populated at install time.
----
-apiVersion: admissionregistration.k8s.io/v1
-kind: ValidatingWebhookConfiguration
-metadata:
- name: validation.webhook.pipeline.tekton.dev
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- pipeline.tekton.dev/release: "v0.53.2"
-webhooks:
- - admissionReviewVersions: ["v1"]
- clientConfig:
- service:
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
- failurePolicy: Fail
- sideEffects: None
- name: validation.webhook.pipeline.tekton.dev
----
-apiVersion: admissionregistration.k8s.io/v1
-kind: MutatingWebhookConfiguration
-metadata:
- name: webhook.pipeline.tekton.dev
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- pipeline.tekton.dev/release: "v0.53.2"
-webhooks:
- - admissionReviewVersions: ["v1"]
- clientConfig:
- service:
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
- failurePolicy: Fail
- sideEffects: None
- name: webhook.pipeline.tekton.dev
----
-apiVersion: admissionregistration.k8s.io/v1
-kind: ValidatingWebhookConfiguration
-metadata:
- name: config.webhook.pipeline.tekton.dev
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- pipeline.tekton.dev/release: "v0.53.2"
-webhooks:
- - admissionReviewVersions: ["v1"]
- clientConfig:
- service:
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
- failurePolicy: Fail
- sideEffects: None
- name: config.webhook.pipeline.tekton.dev
- objectSelector:
- matchLabels:
- app.kubernetes.io/part-of: tekton-pipelines
-
----
-# Copyright 2019-2022 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- name: tekton-aggregate-edit
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- rbac.authorization.k8s.io/aggregate-to-edit: "true"
- rbac.authorization.k8s.io/aggregate-to-admin: "true"
-rules:
- - apiGroups:
- - tekton.dev
- resources:
- - tasks
- - taskruns
- - pipelines
- - pipelineruns
- - runs
- - customruns
- - stepactions
- verbs:
- - create
- - delete
- - deletecollection
- - get
- - list
- - patch
- - update
- - watch
-
----
-# Copyright 2019-2022 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- name: tekton-aggregate-view
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- rbac.authorization.k8s.io/aggregate-to-view: "true"
-rules:
- - apiGroups:
- - tekton.dev
- resources:
- - tasks
- - taskruns
- - pipelines
- - pipelineruns
- - runs
- - customruns
- - stepactions
- verbs:
- - get
- - list
- - watch
-
----
-# Copyright 2019 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: config-defaults
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- _example: |
- ################################
- # #
- # EXAMPLE CONFIGURATION #
- # #
- ################################
-
- # This block is not actually functional configuration,
- # but serves to illustrate the available configuration
- # options and document them in a way that is accessible
- # to users that `kubectl edit` this config map.
- #
- # These sample configuration options may be copied out of
- # this example block and unindented to be in the data block
- # to actually change the configuration.
-
- # default-timeout-minutes contains the default number of
- # minutes to use for TaskRun and PipelineRun, if none is specified.
- default-timeout-minutes: "60" # 60 minutes
-
- # default-service-account contains the default service account name
- # to use for TaskRun and PipelineRun, if none is specified.
- default-service-account: "default"
-
- # default-managed-by-label-value contains the default value given to the
- # "app.kubernetes.io/managed-by" label applied to all Pods created for
- # TaskRuns. If a user's requested TaskRun specifies another value for this
- # label, the user's request supercedes.
- default-managed-by-label-value: "tekton-pipelines"
-
- # default-pod-template contains the default pod template to use for
- # TaskRun and PipelineRun. If a pod template is specified on the
- # PipelineRun, the default-pod-template is merged with that one.
- # default-pod-template:
-
- # default-affinity-assistant-pod-template contains the default pod template
- # to use for affinity assistant pods. If a pod template is specified on the
- # PipelineRun, the default-affinity-assistant-pod-template is merged with
- # that one.
- # default-affinity-assistant-pod-template:
-
- # default-cloud-events-sink contains the default CloudEvents sink to be
- # used for TaskRun and PipelineRun, when no sink is specified.
- # Note that right now it is still not possible to set a PipelineRun or
- # TaskRun specific sink, so the default is the only option available.
- # If no sink is specified, no CloudEvent is generated
- # default-cloud-events-sink:
-
- # default-task-run-workspace-binding contains the default workspace
- # configuration provided for any Workspaces that a Task declares
- # but that a TaskRun does not explicitly provide.
- # default-task-run-workspace-binding: |
- # emptyDir: {}
-
- # default-max-matrix-combinations-count contains the default maximum number
- # of combinations from a Matrix, if none is specified.
- default-max-matrix-combinations-count: "256"
-
- # default-forbidden-env contains comma seperated environment variables that cannot be
- # overridden by podTemplate.
- default-forbidden-env:
-
- # default-resolver-type contains the default resolver type to be used in the cluster,
- # no default-resolver-type is specified by default
- default-resolver-type:
-
----
-# Copyright 2023 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: config-events
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- _example: |
- ################################
- # #
- # EXAMPLE CONFIGURATION #
- # #
- ################################
-
- # This block is not actually functional configuration,
- # but serves to illustrate the available configuration
- # options and document them in a way that is accessible
- # to users that `kubectl edit` this config map.
- #
- # These sample configuration options may be copied out of
- # this example block and unindented to be in the data block
- # to actually change the configuration.
-
- # formats contains a comma seperated list of event formats to be used
- # the only format supported today is "tektonv1". An empty string is not
- # a valid configuration. To disable events, do not specify the sink.
- formats: "tektonv1"
-
- # sink contains the event sink to be used for TaskRun, PipelineRun and
- # CustomRun. If no sink is specified, no CloudEvent is generated.
- # This setting supercedes the "default-cloud-events-sink" from the
- # "config-defaults" config map
- sink: "https://events.sink/cdevents"
-
----
-# Copyright 2019 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: feature-flags
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- # Setting this flag to "true" will prevent Tekton to create an
- # Affinity Assistant for every TaskRun sharing a PVC workspace
- #
- # The default behaviour is for Tekton to create Affinity Assistants
- #
- # See more in the Affinity Assistant documentation
- # https://github.com/tektoncd/pipeline/blob/main/docs/affinityassistants.md
- # or https://github.com/tektoncd/pipeline/pull/2630 for more info.
- #
- # Note: This feature flag is deprecated and will be removed in release v0.60. Consider using `coschedule` feature flag to configure Affinity Assistant behavior.
- disable-affinity-assistant: "false"
- # Setting this flag will determine how PipelineRun Pods are scheduled with Affinity Assistant.
- # Acceptable values are "workspaces" (default), "pipelineruns", "isolate-pipelinerun", or "disabled".
- #
- # Setting it to "workspaces" will schedule all the taskruns sharing the same PVC-based workspace in a pipelinerun to the same node.
- # Setting it to "pipelineruns" will schedule all the taskruns in a pipelinerun to the same node.
- # Setting it to "isolate-pipelinerun" will schedule all the taskruns in a pipelinerun to the same node,
- # and only allows one pipelinerun to run on a node at a time.
- # Setting it to "disabled" will not apply any coschedule policy.
- #
- # See more in the Affinity Assistant documentation
- # https://github.com/tektoncd/pipeline/blob/main/docs/affinityassistants.md
- coschedule: "workspaces"
- # Setting this flag to "true" will prevent Tekton scanning attached
- # service accounts and injecting any credentials it finds into your
- # Steps.
- #
- # The default behaviour currently is for Tekton to search service
- # accounts for secrets matching a specified format and automatically
- # mount those into your Steps.
- #
- # Note: setting this to "true" will prevent PipelineResources from
- # working.
- #
- # See https://github.com/tektoncd/pipeline/issues/2791 for more
- # info.
- disable-creds-init: "false"
- # Setting this flag to "false" will stop Tekton from waiting for a
- # TaskRun's sidecar containers to be running before starting the first
- # step. This will allow Tasks to be run in environments that don't
- # support the DownwardAPI volume type, but may lead to unintended
- # behaviour if sidecars are used.
- #
- # See https://github.com/tektoncd/pipeline/issues/4937 for more info.
- await-sidecar-readiness: "true"
- # This option should be set to false when Pipelines is running in a
- # cluster that does not use injected sidecars such as Istio. Setting
- # it to false should decrease the time it takes for a TaskRun to start
- # running. For clusters that use injected sidecars, setting this
- # option to false can lead to unexpected behavior.
- #
- # See https://github.com/tektoncd/pipeline/issues/2080 for more info.
- running-in-environment-with-injected-sidecars: "true"
- # Setting this flag to "true" will require that any Git SSH Secret
- # offered to Tekton must have known_hosts included.
- #
- # See https://github.com/tektoncd/pipeline/issues/2981 for more
- # info.
- require-git-ssh-secret-known-hosts: "false"
- # Setting this flag to "true" enables the use of Tekton OCI bundle.
- # This is an experimental feature and thus should still be considered
- # an alpha feature.
- enable-tekton-oci-bundles: "false"
- # Setting this flag will determine which gated features are enabled.
- # Acceptable values are "stable", "beta", or "alpha".
- enable-api-fields: "beta"
- # Setting this flag to "true" enables CloudEvents for CustomRuns and Runs, as long as a
- # CloudEvents sink is configured in the config-defaults config map
- send-cloudevents-for-runs: "false"
- # This flag affects the behavior of taskruns and pipelineruns in cases where no VerificationPolicies match them.
- # If it is set to "fail", TaskRuns and PipelineRuns will fail verification if no matching policies are found.
- # If it is set to "warn", TaskRuns and PipelineRuns will run to completion if no matching policies are found, and an error will be logged.
- # If it is set to "ignore", TaskRuns and PipelineRuns will run to completion if no matching policies are found, and no error will be logged.
- trusted-resources-verification-no-match-policy: "ignore"
- # Setting this flag to "true" enables populating the "provenance" field in TaskRun
- # and PipelineRun status. This field contains metadata about resources used
- # in the TaskRun/PipelineRun such as the source from where a remote Task/Pipeline
- # definition was fetched.
- enable-provenance-in-status: "true"
- # Setting this flag will determine how Tekton pipelines will handle non-falsifiable provenance.
- # If set to "spire", then SPIRE will be used to ensure non-falsifiable provenance.
- # If set to "none", then Tekton will not have non-falsifiable provenance.
- # This is an experimental feature and thus should still be considered an alpha feature.
- enforce-nonfalsifiability: "none"
- # Setting this flag will determine how Tekton pipelines will handle extracting results from the task.
- # Acceptable values are "termination-message" or "sidecar-logs".
- # "sidecar-logs" is an experimental feature and thus should still be considered
- # an alpha feature.
- results-from: "termination-message"
- # Setting this flag will determine the upper limit of each task result
- # This flag is optional and only associated with the previous flag, results-from
- # When results-from is set to "sidecar-logs", this flag can be used to configure the upper limit of a task result
- # max-result-size: "4096"
- # Setting this flag to "true" will limit privileges for containers injected by Tekton into TaskRuns.
- # This allows TaskRuns to run in namespaces with "restricted" pod security standards.
- # Not all Kubernetes implementations support this option.
- set-security-context: "false"
- # Setting this flag to "true" will keep pod on cancellation
- # allowing examination of the logs on the pods from cancelled taskruns
- keep-pod-on-cancel: "false"
- # Setting this flag to "true" will enable the CEL evaluation in WhenExpression
- enable-cel-in-whenexpression: "false"
- # Setting this flag to "true" will enable the use of StepActions in Steps
- # This feature is in preview mode and not implemented yet. Please check #7259 for updates.
- enable-step-actions: "false"
-
----
-# Copyright 2021 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: pipelines-info
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- # Contains pipelines version which can be queried by external
- # tools such as CLI. Elevated permissions are already given to
- # this ConfigMap such that even if we don't have access to
- # other resources in the namespace we still can have access to
- # this ConfigMap.
- version: "v0.53.2"
-
----
-# Copyright 2020 Tekton Authors LLC
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: config-leader-election-controller
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- _example: |
- ################################
- # #
- # EXAMPLE CONFIGURATION #
- # #
- ################################
- # This block is not actually functional configuration,
- # but serves to illustrate the available configuration
- # options and document them in a way that is accessible
- # to users that `kubectl edit` this config map.
- #
- # These sample configuration options may be copied out of
- # this example block and unindented to be in the data block
- # to actually change the configuration.
- # lease-duration is how long non-leaders will wait to try to acquire the
- # lock; 15 seconds is the value used by core kubernetes controllers.
- lease-duration: "60s"
- # renew-deadline is how long a leader will try to renew the lease before
- # giving up; 10 seconds is the value used by core kubernetes controllers.
- renew-deadline: "40s"
- # retry-period is how long the leader election client waits between tries of
- # actions; 2 seconds is the value used by core kubernetes controllers.
- retry-period: "10s"
- # buckets is the number of buckets used to partition key space of each
- # Reconciler. If this number is M and the replica number of the controller
- # is N, the N replicas will compete for the M buckets. The owner of a
- # bucket will take care of the reconciling for the keys partitioned into
- # that bucket.
- buckets: "1"
-
----
-# Copyright 2023 Tekton Authors LLC
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: config-leader-election-events
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- _example: |
- ################################
- # #
- # EXAMPLE CONFIGURATION #
- # #
- ################################
- # This block is not actually functional configuration,
- # but serves to illustrate the available configuration
- # options and document them in a way that is accessible
- # to users that `kubectl edit` this config map.
- #
- # These sample configuration options may be copied out of
- # this example block and unindented to be in the data block
- # to actually change the configuration.
- # lease-duration is how long non-leaders will wait to try to acquire the
- # lock; 15 seconds is the value used by core kubernetes controllers.
- lease-duration: "60s"
- # renew-deadline is how long a leader will try to renew the lease before
- # giving up; 10 seconds is the value used by core kubernetes controllers.
- renew-deadline: "40s"
- # retry-period is how long the leader election client waits between tries of
- # actions; 2 seconds is the value used by core kubernetes controllers.
- retry-period: "10s"
- # buckets is the number of buckets used to partition key space of each
- # Reconciler. If this number is M and the replica number of the controller
- # is N, the N replicas will compete for the M buckets. The owner of a
- # bucket will take care of the reconciling for the keys partitioned into
- # that bucket.
- buckets: "1"
-
----
-# Copyright 2023 Tekton Authors LLC
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: config-leader-election-webhook
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- _example: |
- ################################
- # #
- # EXAMPLE CONFIGURATION #
- # #
- ################################
- # This block is not actually functional configuration,
- # but serves to illustrate the available configuration
- # options and document them in a way that is accessible
- # to users that `kubectl edit` this config map.
- #
- # These sample configuration options may be copied out of
- # this example block and unindented to be in the data block
- # to actually change the configuration.
- # lease-duration is how long non-leaders will wait to try to acquire the
- # lock; 15 seconds is the value used by core kubernetes controllers.
- lease-duration: "60s"
- # renew-deadline is how long a leader will try to renew the lease before
- # giving up; 10 seconds is the value used by core kubernetes controllers.
- renew-deadline: "40s"
- # retry-period is how long the leader election client waits between tries of
- # actions; 2 seconds is the value used by core kubernetes controllers.
- retry-period: "10s"
- # buckets is the number of buckets used to partition key space of each
- # Reconciler. If this number is M and the replica number of the controller
- # is N, the N replicas will compete for the M buckets. The owner of a
- # bucket will take care of the reconciling for the keys partitioned into
- # that bucket.
- buckets: "1"
-
----
-# Copyright 2019 Tekton Authors LLC
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: config-logging
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- zap-logger-config: |
- {
- "level": "info",
- "development": false,
- "sampling": {
- "initial": 100,
- "thereafter": 100
- },
- "outputPaths": ["stdout"],
- "errorOutputPaths": ["stderr"],
- "encoding": "json",
- "encoderConfig": {
- "timeKey": "timestamp",
- "levelKey": "severity",
- "nameKey": "logger",
- "callerKey": "caller",
- "messageKey": "message",
- "stacktraceKey": "stacktrace",
- "lineEnding": "",
- "levelEncoder": "",
- "timeEncoder": "iso8601",
- "durationEncoder": "",
- "callerEncoder": ""
- }
- }
- # Log level overrides
- loglevel.controller: "info"
- loglevel.webhook: "info"
-
----
-# Copyright 2019 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: config-observability
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- _example: |
- ################################
- # #
- # EXAMPLE CONFIGURATION #
- # #
- ################################
-
- # This block is not actually functional configuration,
- # but serves to illustrate the available configuration
- # options and document them in a way that is accessible
- # to users that `kubectl edit` this config map.
- #
- # These sample configuration options may be copied out of
- # this example block and unindented to be in the data block
- # to actually change the configuration.
-
- # metrics.backend-destination field specifies the system metrics destination.
- # It supports either prometheus (the default) or stackdriver.
- # Note: Using Stackdriver will incur additional charges.
- metrics.backend-destination: prometheus
-
- # metrics.stackdriver-project-id field specifies the Stackdriver project ID. This
- # field is optional. When running on GCE, application default credentials will be
- # used and metrics will be sent to the cluster's project if this field is
- # not provided.
- metrics.stackdriver-project-id: ""
-
- # metrics.allow-stackdriver-custom-metrics indicates whether it is allowed
- # to send metrics to Stackdriver using "global" resource type and custom
- # metric type. Setting this flag to "true" could cause extra Stackdriver
- # charge. If metrics.backend-destination is not Stackdriver, this is
- # ignored.
- metrics.allow-stackdriver-custom-metrics: "false"
- metrics.taskrun.level: "task"
- metrics.taskrun.duration-type: "histogram"
- metrics.pipelinerun.level: "pipeline"
- metrics.pipelinerun.duration-type: "histogram"
- metrics.count.enable-reason: "false"
-
----
-# Copyright 2020 Tekton Authors LLC
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: config-registry-cert
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-# data:
-# # Registry's self-signed certificate
-# cert: |
-
----
-# Copyright 2022 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: config-spire
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- _example: |
- ################################
- # #
- # EXAMPLE CONFIGURATION #
- # #
- ################################
- # This block is not actually functional configuration,
- # but serves to illustrate the available configuration
- # options and document them in a way that is accessible
- # to users that `kubectl edit` this config map.
- #
- # These sample configuration options may be copied out of
- # this example block and unindented to be in the data block
- # to actually change the configuration.
- #
- # spire-trust-domain specifies the SPIRE trust domain to use.
- # spire-trust-domain: "example.org"
- #
- # spire-socket-path specifies the SPIRE agent socket for SPIFFE workload API.
- # spire-socket-path: "unix:///spiffe-workload-api/spire-agent.sock"
- #
- # spire-server-addr specifies the SPIRE server address for workload/node registration.
- # spire-server-addr: "spire-server.spire.svc.cluster.local:8081"
- #
- # spire-node-alias-prefix specifies the SPIRE node alias prefix to use.
- # spire-node-alias-prefix: "/tekton-node/"
-
----
-# Copyright 2023 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: config-tracing
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- _example: |
- ################################
- # #
- # EXAMPLE CONFIGURATION #
- # #
- ################################
- # This block is not actually functional configuration,
- # but serves to illustrate the available configuration
- # options and document them in a way that is accessible
- # to users that `kubectl edit` this config map.
- #
- # These sample configuration options may be copied out of
- # this example block and unindented to be in the data block
- # to actually change the configuration.
- #
- # Enable sending traces to defined endpoint by setting this to true
- enabled: "true"
- #
- # API endpoint to send the traces to
- # (optional): The default value is given below
- endpoint: "http://jaeger-collector.jaeger.svc.cluster.local:14268/api/traces"
-
----
-# Copyright 2019 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: tekton-pipelines-controller
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/name: controller
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "v0.53.2"
- app.kubernetes.io/part-of: tekton-pipelines
- # tekton.dev/release value replaced with inputs.params.versionTag in pipeline/tekton/publish.yaml
- pipeline.tekton.dev/release: "v0.53.2"
- # labels below are related to istio and should not be used for resource lookup
- version: "v0.53.2"
-spec:
- replicas: 1
- selector:
- matchLabels:
- app.kubernetes.io/name: controller
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- template:
- metadata:
- labels:
- app.kubernetes.io/name: controller
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "v0.53.2"
- app.kubernetes.io/part-of: tekton-pipelines
- # tekton.dev/release value replaced with inputs.params.versionTag in pipeline/tekton/publish.yaml
- pipeline.tekton.dev/release: "v0.53.2"
- # labels below are related to istio and should not be used for resource lookup
- app: tekton-pipelines-controller
- version: "v0.53.2"
- spec:
- affinity:
- nodeAffinity:
- requiredDuringSchedulingIgnoredDuringExecution:
- nodeSelectorTerms:
- - matchExpressions:
- - key: kubernetes.io/os
- operator: NotIn
- values:
- - windows
- serviceAccountName: tekton-pipelines-controller
- containers:
- - name: tekton-pipelines-controller
- image: gcr.io/tekton-releases/github.com/tektoncd/pipeline/cmd/controller:v0.53.2@sha256:2cab05747826e7c32e2c588f0fefd354e03f643bd33dbe20533eada00562e6b1
- args: [
- # These images are built on-demand by `ko resolve` and are replaced
- # by image references by digest.
- "-entrypoint-image", "gcr.io/tekton-releases/github.com/tektoncd/pipeline/cmd/entrypoint:v0.53.2@sha256:7a4269475491e3e9b70e173de6871596e63a9eefd792f2127ca7004145915a76", "-nop-image", "gcr.io/tekton-releases/github.com/tektoncd/pipeline/cmd/nop:v0.53.2@sha256:1793eb2b13d86e084d603ec174904176e5e68b7161be9ed66786deda8f728f30", "-sidecarlogresults-image", "gcr.io/tekton-releases/github.com/tektoncd/pipeline/cmd/sidecarlogresults:v0.53.2@sha256:cf55af7c850b6f6b83d7565b728969cc6cf548ae0c72abf7261c42ce07eefe2d", "-workingdirinit-image", "gcr.io/tekton-releases/github.com/tektoncd/pipeline/cmd/workingdirinit:v0.53.2@sha256:5c0b96d1f1ac9a5c1d8fa50ba07a1174812190707c4abb939b6c41b0b8e72093",
- # The shell image must allow root in order to create directories and copy files to PVCs.
- # cgr.dev/chainguard/busybox as of April 14 2022
- # image shall not contains tag, so it will be supported on a runtime like cri-o
- "-shell-image", "cgr.dev/chainguard/busybox@sha256:19f02276bf8dbdd62f069b922f10c65262cc34b710eea26ff928129a736be791",
- # for script mode to work with windows we need a powershell image
- # pinning to nanoserver tag as of July 15 2021
- "-shell-image-win", "mcr.microsoft.com/powershell:nanoserver@sha256:b6d5ff841b78bdf2dfed7550000fd4f3437385b8fa686ec0f010be24777654d6"]
- volumeMounts:
- - name: config-logging
- mountPath: /etc/config-logging
- - name: config-registry-cert
- mountPath: /etc/config-registry-cert
- env:
- - name: SYSTEM_NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- # If you are changing these names, you will also need to update
- # the controller's Role in 200-role.yaml to include the new
- # values in the "configmaps" "get" rule.
- - name: CONFIG_DEFAULTS_NAME
- value: config-defaults
- - name: CONFIG_LOGGING_NAME
- value: config-logging
- - name: CONFIG_OBSERVABILITY_NAME
- value: config-observability
- - name: CONFIG_FEATURE_FLAGS_NAME
- value: feature-flags
- - name: CONFIG_LEADERELECTION_NAME
- value: config-leader-election-controller
- - name: CONFIG_SPIRE
- value: config-spire
- - name: SSL_CERT_FILE
- value: /etc/config-registry-cert/cert
- - name: SSL_CERT_DIR
- value: /etc/ssl/certs
- - name: METRICS_DOMAIN
- value: tekton.dev/pipeline
- # The following variables can be uncommented with correct values to enable Jaeger tracing
- #- name: OTEL_EXPORTER_JAEGER_ENDPOINT
- # value: http://jaeger-collector.jaeger:14268/api/traces
- #- name: OTEL_EXPORTER_JAEGER_USER
- # value: username
- #- name: OTEL_EXPORTER_JAEGER_PASSWORD
- # value: password
- securityContext:
- allowPrivilegeEscalation: false
- capabilities:
- drop:
- - "ALL"
- # User 65532 is the nonroot user ID
- runAsUser: 65532
- runAsGroup: 65532
- runAsNonRoot: true
- seccompProfile:
- type: RuntimeDefault
- ports:
- - name: metrics
- containerPort: 9090
- - name: profiling
- containerPort: 8008
- - name: probes
- containerPort: 8080
- livenessProbe:
- httpGet:
- path: /health
- port: probes
- scheme: HTTP
- initialDelaySeconds: 5
- periodSeconds: 10
- timeoutSeconds: 5
- readinessProbe:
- httpGet:
- path: /readiness
- port: probes
- scheme: HTTP
- initialDelaySeconds: 5
- periodSeconds: 10
- timeoutSeconds: 5
- volumes:
- - name: config-logging
- configMap:
- name: config-logging
- - name: config-registry-cert
- configMap:
- name: config-registry-cert
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app.kubernetes.io/name: controller
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "v0.53.2"
- app.kubernetes.io/part-of: tekton-pipelines
- # tekton.dev/release value replaced with inputs.params.versionTag in pipeline/tekton/publish.yaml
- pipeline.tekton.dev/release: "v0.53.2"
- # labels below are related to istio and should not be used for resource lookup
- app: tekton-pipelines-controller
- version: "v0.53.2"
- name: tekton-pipelines-controller
- namespace: tekton-pipelines
-spec:
- ports:
- - name: http-metrics
- port: 9090
- protocol: TCP
- targetPort: 9090
- - name: http-profiling
- port: 8008
- targetPort: 8008
- - name: probes
- port: 8080
- selector:
- app.kubernetes.io/name: controller
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-
----
-# Copyright 2023 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: tekton-events-controller
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/name: events
- app.kubernetes.io/component: events
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "v0.53.2"
- app.kubernetes.io/part-of: tekton-pipelines
- # tekton.dev/release value replaced with inputs.params.versionTag in pipeline/tekton/publish.yaml
- pipeline.tekton.dev/release: "v0.53.2"
- # labels below are related to istio and should not be used for resource lookup
- version: "v0.53.2"
-spec:
- replicas: 1
- selector:
- matchLabels:
- app.kubernetes.io/name: events
- app.kubernetes.io/component: events
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- template:
- metadata:
- labels:
- app.kubernetes.io/name: events
- app.kubernetes.io/component: events
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "v0.53.2"
- app.kubernetes.io/part-of: tekton-pipelines
- # tekton.dev/release value replaced with inputs.params.versionTag in pipeline/tekton/publish.yaml
- pipeline.tekton.dev/release: "v0.53.2"
- # labels below are related to istio and should not be used for resource lookup
- app: tekton-events-controller
- version: "v0.53.2"
- spec:
- affinity:
- nodeAffinity:
- requiredDuringSchedulingIgnoredDuringExecution:
- nodeSelectorTerms:
- - matchExpressions:
- - key: kubernetes.io/os
- operator: NotIn
- values:
- - windows
- serviceAccountName: tekton-events-controller
- containers:
- - name: tekton-events-controller
- image: gcr.io/tekton-releases/github.com/tektoncd/pipeline/cmd/events:v0.53.2@sha256:0cf6f0be5319efdd8909ed8f987837d89146fd0632a744bf6d54bf83e5b13ca0
- args: []
- volumeMounts:
- - name: config-logging
- mountPath: /etc/config-logging
- - name: config-registry-cert
- mountPath: /etc/config-registry-cert
- env:
- - name: SYSTEM_NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- # If you are changing these names, you will also need to update
- # the controller's Role in 200-role.yaml to include the new
- # values in the "configmaps" "get" rule.
- - name: CONFIG_DEFAULTS_NAME
- value: config-defaults
- - name: CONFIG_LOGGING_NAME
- value: config-logging
- - name: CONFIG_OBSERVABILITY_NAME
- value: config-observability
- - name: CONFIG_LEADERELECTION_NAME
- value: config-leader-election-events
- - name: SSL_CERT_FILE
- value: /etc/config-registry-cert/cert
- - name: SSL_CERT_DIR
- value: /etc/ssl/certs
- securityContext:
- allowPrivilegeEscalation: false
- capabilities:
- drop:
- - "ALL"
- # User 65532 is the nonroot user ID
- runAsUser: 65532
- runAsGroup: 65532
- runAsNonRoot: true
- seccompProfile:
- type: RuntimeDefault
- ports:
- - name: metrics
- containerPort: 9090
- - name: profiling
- containerPort: 8008
- - name: probes
- containerPort: 8080
- livenessProbe:
- httpGet:
- path: /health
- port: probes
- scheme: HTTP
- initialDelaySeconds: 5
- periodSeconds: 10
- timeoutSeconds: 5
- readinessProbe:
- httpGet:
- path: /readiness
- port: probes
- scheme: HTTP
- initialDelaySeconds: 5
- periodSeconds: 10
- timeoutSeconds: 5
- volumes:
- - name: config-logging
- configMap:
- name: config-logging
- - name: config-registry-cert
- configMap:
- name: config-registry-cert
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app.kubernetes.io/name: events
- app.kubernetes.io/component: events
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "v0.53.2"
- app.kubernetes.io/part-of: tekton-pipelines
- # tekton.dev/release value replaced with inputs.params.versionTag in pipeline/tekton/publish.yaml
- pipeline.tekton.dev/release: "v0.53.2"
- # labels below are related to istio and should not be used for resource lookup
- app: tekton-events-controller
- version: "v0.53.2"
- name: tekton-events-controller
- namespace: tekton-pipelines
-spec:
- ports:
- - name: http-metrics
- port: 9090
- protocol: TCP
- targetPort: 9090
- - name: http-profiling
- port: 8008
- targetPort: 8008
- - name: probes
- port: 8080
- selector:
- app.kubernetes.io/name: events
- app.kubernetes.io/component: events
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-
----
-# Copyright 2022 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: Namespace
-metadata:
- name: tekton-pipelines-resolvers
- labels:
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- pod-security.kubernetes.io/enforce: restricted
-
----
-# Copyright 2022 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- # ClusterRole for resolvers to monitor and update resolutionrequests.
- name: tekton-pipelines-resolvers-resolution-request-updates
- labels:
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-rules:
- - apiGroups: ["resolution.tekton.dev"]
- resources: ["resolutionrequests", "resolutionrequests/status"]
- verbs: ["get", "list", "watch", "update", "patch"]
- - apiGroups: ["tekton.dev"]
- resources: ["tasks", "pipelines"]
- verbs: ["get", "list"]
- # Read-only access to these.
- - apiGroups: [""]
- resources: ["secrets"]
- verbs: ["get", "list", "watch"]
-
----
-# Copyright 2022 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-kind: Role
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: tekton-pipelines-resolvers-namespace-rbac
- namespace: tekton-pipelines-resolvers
- labels:
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-rules:
- # Needed to watch and load configuration and secret data.
- - apiGroups: [""]
- resources: ["configmaps", "secrets"]
- verbs: ["get", "list", "update", "watch"]
- # This is needed by leader election to run the controller in HA.
- - apiGroups: ["coordination.k8s.io"]
- resources: ["leases"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
-
----
-# Copyright 2022 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: tekton-pipelines-resolvers
- namespace: tekton-pipelines-resolvers
- labels:
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-
----
-# Copyright 2021 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: tekton-pipelines-resolvers
- labels:
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-subjects:
- - kind: ServiceAccount
- name: tekton-pipelines-resolvers
- namespace: tekton-pipelines-resolvers
-roleRef:
- kind: ClusterRole
- name: tekton-pipelines-resolvers-resolution-request-updates
- apiGroup: rbac.authorization.k8s.io
-
----
-# Copyright 2021 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: tekton-pipelines-resolvers-namespace-rbac
- namespace: tekton-pipelines-resolvers
- labels:
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-subjects:
- - kind: ServiceAccount
- name: tekton-pipelines-resolvers
- namespace: tekton-pipelines-resolvers
-roleRef:
- kind: Role
- name: tekton-pipelines-resolvers-namespace-rbac
- apiGroup: rbac.authorization.k8s.io
-
----
-# Copyright 2022 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: bundleresolver-config
- namespace: tekton-pipelines-resolvers
- labels:
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- # the default service account name to use for bundle requests.
- default-service-account: "default"
- # The default layer kind in the bundle image.
- default-kind: "task"
-
----
-# Copyright 2022 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: cluster-resolver-config
- namespace: tekton-pipelines-resolvers
- labels:
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- # The default kind to fetch.
- default-kind: "task"
- # The default namespace to look for resources in.
- default-namespace: ""
- # An optional comma-separated list of namespaces which the resolver is allowed to access. Defaults to empty, meaning all namespaces are allowed.
- allowed-namespaces: ""
- # An optional comma-separated list of namespaces which the resolver is blocked from accessing. Defaults to empty, meaning all namespaces are allowed.
- blocked-namespaces: ""
-
----
-# Copyright 2019 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: resolvers-feature-flags
- namespace: tekton-pipelines-resolvers
- labels:
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- # Setting this flag to "true" enables remote resolution of Tekton OCI bundles.
- enable-bundles-resolver: "true"
- # Setting this flag to "true" enables remote resolution of tasks and pipelines via the Tekton Hub.
- enable-hub-resolver: "true"
- # Setting this flag to "true" enables remote resolution of tasks and pipelines from Git repositories.
- enable-git-resolver: "true"
- # Setting this flag to "true" enables remote resolution of tasks and pipelines from other namespaces within the cluster.
- enable-cluster-resolver: "true"
-
----
-# Copyright 2020 Tekton Authors LLC
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: config-leader-election-resolvers
- namespace: tekton-pipelines-resolvers
- labels:
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- _example: |
- ################################
- # #
- # EXAMPLE CONFIGURATION #
- # #
- ################################
- # This block is not actually functional configuration,
- # but serves to illustrate the available configuration
- # options and document them in a way that is accessible
- # to users that `kubectl edit` this config map.
- #
- # These sample configuration options may be copied out of
- # this example block and unindented to be in the data block
- # to actually change the configuration.
- # lease-duration is how long non-leaders will wait to try to acquire the
- # lock; 15 seconds is the value used by core kubernetes controllers.
- lease-duration: "60s"
- # renew-deadline is how long a leader will try to renew the lease before
- # giving up; 10 seconds is the value used by core kubernetes controllers.
- renew-deadline: "40s"
- # retry-period is how long the leader election client waits between tries of
- # actions; 2 seconds is the value used by core kubernetes controllers.
- retry-period: "10s"
- # buckets is the number of buckets used to partition key space of each
- # Reconciler. If this number is M and the replica number of the controller
- # is N, the N replicas will compete for the M buckets. The owner of a
- # bucket will take care of the reconciling for the keys partitioned into
- # that bucket.
- buckets: "1"
-
----
-# Copyright 2019 Tekton Authors LLC
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: config-logging
- namespace: tekton-pipelines-resolvers
- labels:
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- zap-logger-config: |
- {
- "level": "info",
- "development": false,
- "sampling": {
- "initial": 100,
- "thereafter": 100
- },
- "outputPaths": ["stdout"],
- "errorOutputPaths": ["stderr"],
- "encoding": "json",
- "encoderConfig": {
- "timeKey": "timestamp",
- "levelKey": "severity",
- "nameKey": "logger",
- "callerKey": "caller",
- "messageKey": "message",
- "stacktraceKey": "stacktrace",
- "lineEnding": "",
- "levelEncoder": "",
- "timeEncoder": "iso8601",
- "durationEncoder": "",
- "callerEncoder": ""
- }
- }
- # Log level overrides
- loglevel.controller: "info"
- loglevel.webhook: "info"
-
----
-# Copyright 2022 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: config-observability
- namespace: tekton-pipelines-resolvers
- labels:
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- _example: |
- ################################
- # #
- # EXAMPLE CONFIGURATION #
- # #
- ################################
-
- # This block is not actually functional configuration,
- # but serves to illustrate the available configuration
- # options and document them in a way that is accessible
- # to users that `kubectl edit` this config map.
- #
- # These sample configuration options may be copied out of
- # this example block and unindented to be in the data block
- # to actually change the configuration.
-
- # metrics.backend-destination field specifies the system metrics destination.
- # It supports either prometheus (the default) or stackdriver.
- # Note: Using stackdriver will incur additional charges
- metrics.backend-destination: prometheus
-
- # metrics.request-metrics-backend-destination specifies the request metrics
- # destination. If non-empty, it enables queue proxy to send request metrics.
- # Currently supported values: prometheus, stackdriver.
- metrics.request-metrics-backend-destination: prometheus
-
- # metrics.stackdriver-project-id field specifies the stackdriver project ID. This
- # field is optional. When running on GCE, application default credentials will be
- # used if this field is not provided.
- metrics.stackdriver-project-id: ""
-
- # metrics.allow-stackdriver-custom-metrics indicates whether it is allowed to send metrics to
- # Stackdriver using "global" resource type and custom metric type if the
- # metrics are not supported by "knative_revision" resource type. Setting this
- # flag to "true" could cause extra Stackdriver charge.
- # If metrics.backend-destination is not Stackdriver, this is ignored.
- metrics.allow-stackdriver-custom-metrics: "false"
-
----
-# Copyright 2022 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: git-resolver-config
- namespace: tekton-pipelines-resolvers
- labels:
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- # The maximum amount of time a single anonymous cloning resolution may take.
- fetch-timeout: "1m"
- # The git url to fetch the remote resource from when using anonymous cloning.
- default-url: "https://github.com/tektoncd/catalog.git"
- # The git revision to fetch the remote resource from with either anonymous cloning or the authenticated API.
- default-revision: "main"
- # The SCM type to use with the authenticated API. Can be github, gitlab, gitea, bitbucketserver, bitbucketcloud
- scm-type: "github"
- # The SCM server URL to use with the authenticated API. Not needed when using github.com, gitlab.com, or BitBucket Cloud
- server-url: ""
- # The Kubernetes secret containing the API token for the SCM provider. Required when using the authenticated API.
- api-token-secret-name: ""
- # The key in the API token secret containing the actual token. Required when using the authenticated API.
- api-token-secret-key: ""
- # The namespace containing the API token secret. Defaults to "default".
- api-token-secret-namespace: "default"
- # The default organization to look for repositories under when using the authenticated API,
- # if not specified in the resolver parameters. Optional.
- default-org: ""
-
----
-# Copyright 2022 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: hubresolver-config
- namespace: tekton-pipelines-resolvers
- labels:
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- # the default Tekton Hub catalog from where to pull the resource.
- default-tekton-hub-catalog: "Tekton"
- # the default Artifact Hub Task catalog from where to pull the resource.
- default-artifact-hub-task-catalog: "tekton-catalog-tasks"
- # the default Artifact Hub Pipeline catalog from where to pull the resource.
- default-artifact-hub-pipeline-catalog: "tekton-catalog-pipelines"
- # the default layer kind in the hub image.
- default-kind: "task"
- # the default hub source to pull the resource from.
- default-type: "artifact"
-
----
-# Copyright 2022 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: tekton-pipelines-remote-resolvers
- namespace: tekton-pipelines-resolvers
- labels:
- app.kubernetes.io/name: resolvers
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "v0.53.2"
- app.kubernetes.io/part-of: tekton-pipelines
- # tekton.dev/release value replaced with inputs.params.versionTag in pipeline/tekton/publish.yaml
- pipeline.tekton.dev/release: "v0.53.2"
- # labels below are related to istio and should not be used for resource lookup
- version: "v0.53.2"
-spec:
- replicas: 1
- selector:
- matchLabels:
- app.kubernetes.io/name: resolvers
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- template:
- metadata:
- labels:
- app.kubernetes.io/name: resolvers
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "v0.53.2"
- app.kubernetes.io/part-of: tekton-pipelines
- # tekton.dev/release value replaced with inputs.params.versionTag in pipeline/tekton/publish.yaml
- pipeline.tekton.dev/release: "v0.53.2"
- # labels below are related to istio and should not be used for resource lookup
- app: tekton-pipelines-resolvers
- version: "v0.53.2"
- spec:
- affinity:
- podAntiAffinity:
- preferredDuringSchedulingIgnoredDuringExecution:
- - podAffinityTerm:
- labelSelector:
- matchLabels:
- app.kubernetes.io/name: resolvers
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- topologyKey: kubernetes.io/hostname
- weight: 100
- serviceAccountName: tekton-pipelines-resolvers
- containers:
- - name: controller
- image: gcr.io/tekton-releases/github.com/tektoncd/pipeline/cmd/resolvers:v0.53.2@sha256:6578d145acd9cd288e501023429439334de15de8bd77af132c57a1d5f982e940
- resources:
- requests:
- cpu: 100m
- memory: 100Mi
- limits:
- cpu: 1000m
- memory: 4Gi
- ports:
- - name: metrics
- containerPort: 9090
- - name: profiling
- containerPort: 8008
- # This must match the value of the environment variable PROBES_PORT.
- - name: probes
- containerPort: 8080
- env:
- - name: SYSTEM_NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- # If you are changing these names, you will also need to update
- # the controller's Role in 200-role.yaml to include the new
- # values in the "configmaps" "get" rule.
- - name: CONFIG_LOGGING_NAME
- value: config-logging
- - name: CONFIG_OBSERVABILITY_NAME
- value: config-observability
- - name: CONFIG_FEATURE_FLAGS_NAME
- value: feature-flags
- - name: CONFIG_LEADERELECTION_NAME
- value: config-leader-election-resolvers
- - name: METRICS_DOMAIN
- value: tekton.dev/resolution
- - name: PROBES_PORT
- value: "8080"
- # Override this env var to set a private hub api endpoint
- - name: ARTIFACT_HUB_API
- value: "https://artifacthub.io/"
- - name: TEKTON_HUB_API
- value: "https://api.hub.tekton.dev/"
- securityContext:
- allowPrivilegeEscalation: false
- readOnlyRootFilesystem: true
- runAsNonRoot: true
- capabilities:
- drop:
- - "ALL"
- seccompProfile:
- type: RuntimeDefault
-
----
-# Copyright 2023 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app.kubernetes.io/name: resolvers
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "v0.53.2"
- app.kubernetes.io/part-of: tekton-pipelines
- # tekton.dev/release value replaced with inputs.params.versionTag in pipeline/tekton/publish.yaml
- pipeline.tekton.dev/release: "v0.53.2"
- # labels below are related to istio and should not be used for resource lookup
- app: tekton-pipelines-remote-resolvers
- version: "v0.53.2"
- name: tekton-pipelines-remote-resolvers
- namespace: tekton-pipelines-resolvers
-spec:
- ports:
- - name: http-metrics
- port: 9090
- protocol: TCP
- targetPort: 9090
- - name: http-profiling
- port: 8008
- targetPort: 8008
- - name: probes
- port: 8080
- selector:
- app.kubernetes.io/name: resolvers
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-
----
-# Copyright 2020 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: autoscaling/v2
-kind: HorizontalPodAutoscaler
-metadata:
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "v0.53.2"
- app.kubernetes.io/part-of: tekton-pipelines
- # tekton.dev/release value replaced with inputs.params.versionTag in pipeline/tekton/publish.yaml
- pipeline.tekton.dev/release: "v0.53.2"
- # labels below are related to istio and should not be used for resource lookup
- version: "v0.53.2"
-spec:
- minReplicas: 1
- maxReplicas: 5
- scaleTargetRef:
- apiVersion: apps/v1
- kind: Deployment
- name: tekton-pipelines-webhook
- metrics:
- - type: Resource
- resource:
- name: cpu
- target:
- type: Utilization
- averageUtilization: 100
-
----
-# Copyright 2020 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- # Note: the Deployment name must be the same as the Service name specified in
- # config/400-webhook-service.yaml. If you change this name, you must also
- # change the value of WEBHOOK_SERVICE_NAME below.
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "v0.53.2"
- app.kubernetes.io/part-of: tekton-pipelines
- # tekton.dev/release value replaced with inputs.params.versionTag in pipeline/tekton/publish.yaml
- pipeline.tekton.dev/release: "v0.53.2"
- # labels below are related to istio and should not be used for resource lookup
- version: "v0.53.2"
-spec:
- selector:
- matchLabels:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- template:
- metadata:
- labels:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "v0.53.2"
- app.kubernetes.io/part-of: tekton-pipelines
- # tekton.dev/release value replaced with inputs.params.versionTag in pipeline/tekton/publish.yaml
- pipeline.tekton.dev/release: "v0.53.2"
- # labels below are related to istio and should not be used for resource lookup
- app: tekton-pipelines-webhook
- version: "v0.53.2"
- spec:
- affinity:
- nodeAffinity:
- requiredDuringSchedulingIgnoredDuringExecution:
- nodeSelectorTerms:
- - matchExpressions:
- - key: kubernetes.io/os
- operator: NotIn
- values:
- - windows
- podAntiAffinity:
- preferredDuringSchedulingIgnoredDuringExecution:
- - podAffinityTerm:
- labelSelector:
- matchLabels:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- topologyKey: kubernetes.io/hostname
- weight: 100
- serviceAccountName: tekton-pipelines-webhook
- containers:
- - name: webhook
- # This is the Go import path for the binary that is containerized
- # and substituted here.
- image: gcr.io/tekton-releases/github.com/tektoncd/pipeline/cmd/webhook:v0.53.2@sha256:1e8f8be3b51be378747b4589dde970582f50e1e69f59527f0a9aa7a75c5833e3
- # Resource request required for autoscaler to take any action for a metric
- resources:
- requests:
- cpu: 100m
- memory: 100Mi
- limits:
- cpu: 500m
- memory: 500Mi
- env:
- - name: SYSTEM_NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- # If you are changing these names, you will also need to update
- # the webhook's Role in 200-role.yaml to include the new
- # values in the "configmaps" "get" rule.
- - name: CONFIG_LOGGING_NAME
- value: config-logging
- - name: CONFIG_OBSERVABILITY_NAME
- value: config-observability
- - name: CONFIG_LEADERELECTION_NAME
- value: config-leader-election-webhook
- - name: CONFIG_FEATURE_FLAGS_NAME
- value: feature-flags
- # If you change PROBES_PORT, you will also need to change the
- # containerPort "probes" to the same value.
- - name: PROBES_PORT
- value: "8080"
- # If you change WEBHOOK_PORT, you will also need to change the
- # containerPort "https-webhook" to the same value.
- - name: WEBHOOK_PORT
- value: "8443"
- # if you change WEBHOOK_ADMISSION_CONTROLLER_NAME, you will also need to update
- # the webhooks.name in 500-webhooks.yaml to include the new names of admission webhooks.
- # Additionally, you will also need to change the resource names (metadata.name) of
- # "MutatingWebhookConfiguration" and "ValidatingWebhookConfiguration" in 500-webhooks.yaml
- # to reflect the change in the name of the admission webhook.
- # Followed by changing the webhook's Role in 200-clusterrole.yaml to update the "resourceNames" of
- # "mutatingwebhookconfigurations" and "validatingwebhookconfigurations" resources.
- - name: WEBHOOK_ADMISSION_CONTROLLER_NAME
- value: webhook.pipeline.tekton.dev
- - name: WEBHOOK_SERVICE_NAME
- value: tekton-pipelines-webhook
- - name: WEBHOOK_SECRET_NAME
- value: webhook-certs
- - name: METRICS_DOMAIN
- value: tekton.dev/pipeline
- securityContext:
- allowPrivilegeEscalation: false
- capabilities:
- drop:
- - "ALL"
- # User 65532 is the distroless nonroot user ID
- runAsUser: 65532
- runAsGroup: 65532
- runAsNonRoot: true
- seccompProfile:
- type: RuntimeDefault
- ports:
- - name: metrics
- containerPort: 9090
- - name: profiling
- containerPort: 8008
- # This must match the value of the environment variable WEBHOOK_PORT.
- - name: https-webhook
- containerPort: 8443
- # This must match the value of the environment variable PROBES_PORT.
- - name: probes
- containerPort: 8080
- livenessProbe:
- httpGet:
- path: /health
- port: probes
- scheme: HTTP
- initialDelaySeconds: 5
- periodSeconds: 10
- timeoutSeconds: 5
- readinessProbe:
- httpGet:
- path: /readiness
- port: probes
- scheme: HTTP
- initialDelaySeconds: 5
- periodSeconds: 10
- timeoutSeconds: 5
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "v0.53.2"
- app.kubernetes.io/part-of: tekton-pipelines
- # tekton.dev/release value replaced with inputs.params.versionTag in pipeline/tekton/publish.yaml
- pipeline.tekton.dev/release: "v0.53.2"
- # labels below are related to istio and should not be used for resource lookup
- app: tekton-pipelines-webhook
- version: "v0.53.2"
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
-spec:
- ports:
- # Define metrics and profiling for them to be accessible within service meshes.
- - name: http-metrics
- port: 9090
- targetPort: metrics
- - name: http-profiling
- port: 8008
- targetPort: profiling
- - name: https-webhook
- port: 443
- targetPort: https-webhook
- - name: probes
- port: 8080
- targetPort: probes
- selector:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-
----
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/Makefile b/charts/kubeflow/apps/kfp-tekton/upstream/v1/Makefile
deleted file mode 100644
index 531757c..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/Makefile
+++ /dev/null
@@ -1,29 +0,0 @@
-# This makefile is a quick test to verify all manifests can be hydrated.
-
-test: aws azure dev gcp platform-agnostic platform-agnostic-multi-user plain plain-multi-user
-
-aws: FORCE
- kubectl kustomize env/aws
-
-azure: FORCE
- kubectl kustomize env/azure
-
-dev: FORCE
- kubectl kustomize env/dev
-
-gcp: FORCE
- kubectl kustomize env/gcp
-
-platform-agnostic: FORCE
- kubectl kustomize env/platform-agnostic
-
-platform-agnostic-multi-user: FORCE
- kustomize build --load-restrictor LoadRestrictionsNone env/platform-agnostic-multi-user
-
-plain: FORCE
- kubectl kustomize env/plain
-
-plain-multi-user: FORCE
- kustomize build --load-restrictor LoadRestrictionsNone env/plain-multi-user
-
-FORCE: ;
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/README.md b/charts/kubeflow/apps/kfp-tekton/upstream/v1/README.md
deleted file mode 100644
index dbdcb24..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/README.md
+++ /dev/null
@@ -1,105 +0,0 @@
-# Install Kubeflow Pipelines Tekton Standalone using Kustomize Manifests
-
-This folder contains [Kubeflow Pipelines Standalone](https://www.kubeflow.org/docs/components/pipelines/installation/standalone-deployment/)
-Kustomize manifests.
-
-Kubeflow Pipelines Standalone is one option to install Kubeflow Pipelines. You can review all other options in
-[Installation Options for Kubeflow Pipelines](https://www.kubeflow.org/docs/components/pipelines/installation/overview/).
-
-## Install options for different envs
-
-To install Kubeflow Pipelines Standalone, follow [Kubeflow Pipelines Standalone Deployment documentation](https://www.kubeflow.org/docs/components/pipelines/installation/standalone-deployment/).
-
-There are environment specific installation instructions not covered in the official deployment documentation, they are listed below.
-
-### (env/platform-agnostic) install on any Kubernetes cluster
-
-Note: `kubectl` client version `v1.20.0`+ to support the new kustomize plugins.
-
-Install:
-
-```bash
-KFP_ENV=platform-agnostic
-kubectl apply -k cluster-scoped-resources/
-kubectl wait crd/applications.app.k8s.io --for condition=established --timeout=60s
-kubectl apply -k "env/${KFP_ENV}/"
-kubectl wait pods -l application-crd-id=kubeflow-pipelines -n kubeflow --for condition=Ready --timeout=1800s
-kubectl port-forward -n kubeflow svc/ml-pipeline-ui 8080:80
-```
-
-Now you can access Kubeflow Pipelines UI in your browser by .
-
-You can install them by changing `KFP_ENV` in above instructions to the variation you want.
-
-Data:
-
-Application data are persisted in in-cluster PersistentVolumeClaim storage.
-
-### (env/ibm) install on IBM Cloud with in-cluster PersistentVolumeClaim storage
-
-IBM Cloud uses the NFS storage with UID support to make sure all pods can run as non-root users.
-
-Please follow the [IKS group ID storage setup](https://www.kubeflow.org/docs/ibm/deploy/install-kubeflow-on-iks/#ibm-cloud-group-id-storage-setup)
-before running the above standalone install commands.
-
-### (env/gcp) install on Google Cloud with Cloud Storage and Cloud SQL
-
-Cloud Storage and Cloud SQL are better for operating a production cluster.
-
-Refer to [Google Cloud Instructions](sample/README.md) for installation.
-
-### (env/aws) install on AWS with S3 and RDS MySQL
-
-S3 and RDS MySQL are better for operating a production cluster.
-
-Refer to [AWS Instructions](env/aws/README.md) for installation.
-
-Note: Community maintains a different opinionated installation manifests for AWS, refer to [e2fyi/kubeflow-aws](https://github.com/e2fyi/kubeflow-aws/tree/master/pipelines).
-
-## Uninstall
-
-If the installation is based on CloudSQL/GCS, after the uninstall, the data is still there,
-reinstall a newer version can reuse the data.
-
-```bash
-### 1. namespace scoped
-# Depends on how you installed it:
-kubectl kustomize env/platform-agnostic/ | kubectl delete -f -
-# or
-kubectl kustomize env/dev | kubectl delete -f -
-# or
-kubectl kustomize env/gcp | kubectl delete -f -
-# or
-kubectl delete applications/pipeline -n kubeflow
-
-### 2. cluster scoped
-kubectl delete -k cluster-scoped-resources/
-```
-
-## Folder Structure
-
-### Overview
-
-* User facing manifest entrypoints are `cluster-scoped-resources` package and `env/` package.
- * `cluster-scoped-resources` should collect all cluster-scoped resources.
- * `env/` should collect env specific namespace-scoped resources.
- * Note, for multi-user envs, they already included cluster-scoped resources.
-* KFP core components live in `base/` folders.
- * If a component requires cluster-scoped resources, it should have a folder inside named `cluster-scoped` with related resources, but note that `base//kustomization.yaml` shouldn't include the `cluster-scoped` folder. `cluster-scoped` folders should be collected by top level `cluster-scoped-resources` folder.
-* KFP core installations are in `base/installs/`, they only include the core KFP components, not third party ones.
-* Third party components live in `third-party/` folders.
-
-### For direct deployments
-
-Env specific overlays live in `env/` folders, they compose above components to get ready for directly deploying.
-
-### For downstream consumers
-
-Please compose `base/installs/` and third party dependencies based on your own requirements.
-
-### Rationale
-
-Constraints for namespaced installation we need to comply with (that drove above structure):
-
-* CRDs must be applied separately, because if we apply CRs in the same `kubectl apply` command, the CRD may not have been accepted by k8s api server (e.g. Application CRD).
-* [A Kubeflow 1.0 constraint](https://github.com/kubeflow/pipelines/issues/2884#issuecomment-577158715) is that we should separate cluster scoped resources from namespace scoped resources, because sometimes different roles are required to deploy them. Cluster scoped resources usually need a cluster admin role, while namespaced resources can be deployed by individual teams managing a namespace.
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/application/application.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/application/application.yaml
deleted file mode 100644
index 1af2f9b..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/application/application.yaml
+++ /dev/null
@@ -1,49 +0,0 @@
-# Note, this application.yaml is not included by default for most environments.
-
-apiVersion: app.k8s.io/v1beta1
-kind: Application
-metadata:
- name: $(kfp-app-name)
- annotations:
- kubernetes-engine.cloud.google.com/icon: >-
- data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADMAAAAyCAYAAADx/eOPAAALuUlEQVRogd2afWxd9XnHP99bK4pS3yhiGUIRiiJUVVVqbq8ppdR20ibqpuIMtDRkUYERp29J57gMZVuxsrZiK7oZXVv5re1AiOuoG+N1DMkuytprsGPEVMouxqQZJVHEWIdQlGVxZlmZdb/747zcc869jpMO+seOdPz7nd/L83tev89zzjX8Bq795Rq9o17zXp+Tey+Ijkyboela29DRWkhffyT733pH/Z3este9F2cC6N0kNjxtjD+FdRD8UF9X7u97y7UbQFPAivC0BdllS381slun3s3z3xVhhqeds90tqR/oMB7u68z19ZZra0E/l1if3WOziPx3skrDPTr+bvDxfxImEIJbgX6gGBJ7EfHJX/ySReDHwO9KYAenyWCMFKw21GSeslwa2Z17+TcuzPBRr7B8m6Df5oOJqdPAR/u6cm/2lmv3At+IT3GiXZqbcaxSLsfRoTsvn7XL2jE87ZXGnwf+VGiDY86ETM1wU1+XjvSW/RlgTJADQ2QaCZKWcX1/aDIcjE8i3SdzZLjn0lm8pJXD02417BM+gLmq2Rqjr/d16Vu95dp6wc8Ra5O8NrPIcoZCvIR1H+KZkd2qLcfnRYUZOuorJO+3uQt0RerolGYZR7r5+C9ZATwPviGyQprd6Liszy3bnwVKwGMjPbnFyxJmeNpX2T4gaR/QmmSpyYZTho/2depMb9k/kNh3KawuJ1bWauHzUcyXRpZAv5Zmg7aHBLcmNN9ECAFeAO3s69KZ3nLtDuF9dnBs0IT9JO24rbPb0JfP2syCZpFfE5q1mRWcvlgMNcwMTRq9z/+OWXdx4AGjvX1deqC37DbwPwOrMgsufol5mWMWs1ivEbjTrOCtLNNb+udygqsNbUBtopR/NkuuwTJ6Hxsw67KSuvH5MPDA/nJttfGTdUFCMUlp/ALwOtIs9muBxpnFnBzuSQf21oP/BbXclVvumWuTaDN8WNBm2GizJkxPM0CDMA2WGZ72bbb/Njue2TRj9Il/PcG87SeBz4ZTNaSTsmctHcO8SqDp14d7dCFLZ2v/3OpQ023Ah4n65kohvETUCdcsfmuilD+bpNdgGZvOODuHqYGIVGCec9g7+7o031v2jaBTiD0ysxbHRnZrPktzyz1zK7f0z10nh5pWwLRhvZro1KqznVJhNB8UyDeSsU4zAOiIXV1OuEqQ2AR79nflXgcY6dGLwIvR8q39cy1b+uc2Emo6dI824BpMSxz8iVhy4m/2WiYHdV5UmOHp2mpwm52ESCdwRn+9v0tPAWzpn9sAFAQbMdc60PaHsFZEWd9uxk4z8G3seykECfObTEd2KmuZG4CWyLXkYLMwtiYt+hMsTUdAEZQzjs9apv66SHJRk73ZjBQ+iRu29s+1VEr5OImmXs4MHUahVoLWgK23wbv6OrU4OulcuHYehWsVHhpXwpE2FNRayTszX2cwDpQEzTB+QvrJHCXUaigk+c++aXZiE98YmUVgV19X7u3ypH/fgfUA5h2usY2jNjmWoGVn50nvC9T2NviA5OPBGPW91OlG+0Xa1WJhhqadk3WjpKCilQIQFP19XZocnfIHgIeFWyNh6goXyX6gdNWfU8aJ5tNjEheAHZVS/ruGj0s8k6VPhh6ms6kwgoLl1aGuCEuSpwXfHZ2qrTJ+HHkNCpOjmbdFcEcGUIhUSj/H65rPO6j+766U8i/QXV0z8cqJc4btwF8AtWgtMb1wj+j41Df/s1EYQwdEDiqM3hDes9quGY3IKoYOvCrU7HlCoZtEWapPkzEpsU8uq8b36a6uBqaBv5l45URLpZT/pmGH8LnkvlAdAOt1oeXqRsuYTjlEMJiXvWN/Z+5szfqioKcOKo7qr/nAEesKiOyv2A/q88rOx8+8bPhK5dUTAA8jbUT6MuKnbKteNVHKP23xCeD1LC0F2TWOmzoAKEiWxmC+sr8rN1OerF2HGaqXFcZhDWaYj11S4ZxcXxVqyKqPZOeNTwM7Jkr5BeDPQJ8NFQaoC/gZ26rXT5TyxxAfRx6P94d0gU0pYYama+tsbwix/AHM4fKUrwAeB68kRJ5AZsWWieGTjLipsVCgrKCwKHF7pZQ/RXf104j76i4ZMmquxkzRXb2zUsqfxdxsfCiA70hRjZbpCDHmJcRdeZPDHkVck0Ul5PeHZ81DgHxKtglXaHCxVN9fr5TyR9hW3QA8Amqp5526SyKtBEbZVv1eZeZkbqKU7xfsFJwPqRW29s+11oUxnUhnkHf2dWoB+R5Jv5dNaGHh1wog8d/ZAI+0GgVpFPTp4AfJT2Hup7u6EvMk0tpkboutEz0HMPzHyD+mu3pFpZR/Aug0Pgm0RLkvFzLWYfjDvs7cqfKUt2LuXTLhue5mdWhVDJdEzxDDcRKawceN9lRePVkDfgBcR/LKVqNpz/s08DO6q4VKKT8j8zHgJ1HyzA1P11YZjfV1arw85auBR4RalDB5lEjDKi0CgPPphKZ0QiNRwUQeg88B2ydKreew9yH1NCxe/r4GaZpt1Vsrh/JnDDcBLwPkbLVgf6s86RXYj4KvtJKJM8KsGLkSlsmUL6mSg1RJY1xD7KmU8sfprnYgBqJsGVsiEfupsca7FfMo26p/OfHKiVqllB8HyPV16VxfV66G/G1QBwY5xvCgTT7X3/MTaBbFVr0fJvqw2ASZ+yul/FN0V68CHsesiDl3UopM3CwhDZDD/Dnwj3S/sjoYAMqTtc1YX02jVqYOiuuqsAKIkqZCfFIz/IrfFY8gDrKt2gI8irSuwQezyTeNaOl+6qYb+fpYGKEXJE9GSTObK5ItrheaLHE5/XRKcHul+kYN8x2kzWlLNNuVtUqibzKW5CBjxUoszO7NWrS1E/xWvMeJjck2WQHEKJeMD+qH4gWCSvg00m3AVxv5TMRKsp9Cs0Q/Ka/1BOZQNBSXMz2b9Q5oO9JCKgkqg2aKofl8uvTPeE1w3t5KKf8y26pFxINhLRa5R9JV6huT/aZuFu7Ds+A9jBdj+VIvZz2b9BL2Xi5yJQEgUFqinI9SZBDx358o5Q/HiRGtquOEmxJu6DcbC/afQWxnvHg+Odrwm2bP5txh5OEYjOM3vaiu8qqHJw1mPmK/Xs7HJf0LRncDMF5cAL6NWUxDrX/duwbczljxjSzvTX+gtXU3MBlrRCltrsxBTgorACKrRGf5bczOiVLrhUL74B2F9oHVjBd/iLwTWEhr+CIWaLYumDjIWLHha+aSwvRs1iJmJ9Kb9ZJRETS3ACsMC8i1ZNwgXZDYWTmU/1WhfeAW8Cjo+UL7wDrGik8jfid0kYz/Z2ODepv+GPIY+FAznpcUJhAo9w5mh81CFtEsWieCTzwXkogmfKBSyh8ttA98EDPqoPouYqYLxYEPMVY8itmEeTM+KEaqZhVAkiPPIL6QDPhLFiYQSC9J7M3mGlF/24zWSvwIM1xoH2gF/sFiTcSPxQakqUJxsIPx4jGCr0AzCUYTbROJ7DPAdsbSAX9ZwgDs3qTDiMGUOxF/1DgfekLVsPf0sw8DPARsDNwy8iYBXov4p0L7wC2MF99CfBJ4rqmbJbO/qYE+x1jx5HK8Xtp/aFgHDM/FX+RM9FFjHjjj4NV3HvlPsP4g+SqQgm6zCuvJQnHgi4wVz2JuAj8RnLGEVaCf8Y8cuRQ2L0mYEBB2Gb8ZHKD4NQBx+0Qpf7LQPrAVVGqiiWTpCcEn4QcLxcF7C7+aXMDahT1YX5IS5DHE/ZfC4yULEwr0DtIOWwuuvwZ8rVLKP1soDqzHPGJoyRao9b4SXiQQ30A8eO1/PJ8D7gK+BtQSJcQM8AXGlg747LUkmi91lad8J3CuZ5OeBii0D64ET2FdH1N0omWJvgLPkvwM8LmZf7lrnm3VO4CHsM4DH2P8I8vGSfK67P9q8v9wWPAcQLH4PbBHbK6Pq+3M9+Ml+6FL2dyC+WmhOLiWseKPMDeDd12uIPBrWCZ5Xds++AHsAwGlBKnoB5747c2J+aSJEuvRL8CDv/2Zz+cqh/LL/gPD//vrfwFjcI5oX6jDBwAAAABJRU5ErkJggg==
- marketplace.cloud.google.com/deploy-info: '{"partner_id": "google-cloud-ai-platform", "product_id": "kubeflow-pipelines", "partner_name": "Google Cloud AI Platform"}'
-spec:
- addOwnerRef: true
- selector:
- matchLabels:
- application-crd-id: kubeflow-pipelines
- descriptor:
- version: $(kfp-app-version)
- type: Kubeflow Pipelines
- description: |-
- Reusable end-to-end ML workflow
- maintainers:
- - name: Google Cloud AI Platform
- url: https://cloud.google.com/ai-platform/
- - name: Kubeflow Pipelines
- url: https://github.com/kubeflow/pipelines
- links:
- - description: 'Kubeflow Pipelines Documentation'
- url: https://www.kubeflow.org/docs/pipelines/
- notes: |-
- Please go to [Hosted Kubeflow Pipelines Console](https://console.cloud.google.com/ai-platform/pipelines/clusters).
-
- info:
- - name: Console
- value: 'https://console.cloud.google.com/ai-platform/pipelines/clusters'
- componentKinds:
- - group: v1
- kind: ServiceAccount
- - group: rbac.authorization.k8s.io/v1
- kind: Role
- - group: rbac.authorization.k8s.io/v1
- kind: RoleBinding
- - group: v1
- kind: Service
- - group: v1
- kind: ConfigMap
- - group: v1
- kind: Secret
- - group: apps/v1
- kind: Deployment
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/application/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/application/kustomization.yaml
deleted file mode 100644
index 3ececef..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/application/kustomization.yaml
+++ /dev/null
@@ -1,5 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
- - application.yaml
-
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/cache-deployer/cache-deployer-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/cache-deployer/cache-deployer-deployment.yaml
deleted file mode 100644
index d4c3ae3..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/cache-deployer/cache-deployer-deployment.yaml
+++ /dev/null
@@ -1,29 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: cache-deployer-deployment
- labels:
- app: cache-deployer
-spec:
- replicas: 1
- selector:
- matchLabels:
- app: cache-deployer
- strategy:
- type: Recreate
- template:
- metadata:
- labels:
- app: cache-deployer
- spec:
- containers:
- - name: main
- image: gcr.io/ml-pipeline/cache-deployer:dummy
- imagePullPolicy: Always
- env:
- - name: NAMESPACE_TO_WATCH
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- serviceAccountName: kubeflow-pipelines-cache-deployer-sa
- restartPolicy: Always
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/cache-deployer/cache-deployer-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/cache-deployer/cache-deployer-role.yaml
deleted file mode 100644
index f853a32..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/cache-deployer/cache-deployer-role.yaml
+++ /dev/null
@@ -1,17 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata:
- labels:
- app: kubeflow-pipelines-cache-deployer-role
- name: kubeflow-pipelines-cache-deployer-role
-rules:
-- apiGroups:
- - ""
- resources:
- - secrets
- verbs:
- - create
- - delete
- - get
- - patch
- - list
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/cache-deployer/cache-deployer-rolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/cache-deployer/cache-deployer-rolebinding.yaml
deleted file mode 100644
index 824a957..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/cache-deployer/cache-deployer-rolebinding.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: kubeflow-pipelines-cache-deployer-rolebinding
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: kubeflow-pipelines-cache-deployer-role
-subjects:
-- kind: ServiceAccount
- name: kubeflow-pipelines-cache-deployer-sa
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/cache-deployer/cluster-scoped/cache-deployer-clusterrole.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/cache-deployer/cluster-scoped/cache-deployer-clusterrole.yaml
deleted file mode 100644
index 5e674b0..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/cache-deployer/cluster-scoped/cache-deployer-clusterrole.yaml
+++ /dev/null
@@ -1,35 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- labels:
- app: kubeflow-pipelines-cache-deployer-clusterrole
- name: kubeflow-pipelines-cache-deployer-clusterrole
-rules:
-- apiGroups:
- - certificates.k8s.io
- resources:
- - certificatesigningrequests
- - certificatesigningrequests/approval
- verbs:
- - create
- - delete
- - get
- - update
-- apiGroups:
- - admissionregistration.k8s.io
- resources:
- - mutatingwebhookconfigurations
- verbs:
- - create
- - delete
- - get
- - list
- - patch
-- apiGroups:
- - certificates.k8s.io
- resources:
- - signers
- resourceNames:
- - kubernetes.io/*
- verbs:
- - approve
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/cache-deployer/cluster-scoped/cache-deployer-clusterrolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/cache-deployer/cluster-scoped/cache-deployer-clusterrolebinding.yaml
deleted file mode 100644
index c0f19d7..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/cache-deployer/cluster-scoped/cache-deployer-clusterrolebinding.yaml
+++ /dev/null
@@ -1,12 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: kubeflow-pipelines-cache-deployer-clusterrolebinding
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: kubeflow-pipelines-cache-deployer-clusterrole
-subjects:
-- kind: ServiceAccount
- name: kubeflow-pipelines-cache-deployer-sa
-# namespace will be added by kustomize automatically according to the namespace field in kustomization.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/cache-deployer/cluster-scoped/cache-deployer-sa.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/cache-deployer/cluster-scoped/cache-deployer-sa.yaml
deleted file mode 100644
index affada3..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/cache-deployer/cluster-scoped/cache-deployer-sa.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: kubeflow-pipelines-cache-deployer-sa
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/cache-deployer/cluster-scoped/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/cache-deployer/cluster-scoped/kustomization.yaml
deleted file mode 100644
index 2b941ae..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/cache-deployer/cluster-scoped/kustomization.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
- - cache-deployer-clusterrole.yaml
- - cache-deployer-clusterrolebinding.yaml
- # HACK: although a service account(SA) is not a cluster-scoped resource.
- # Presence of a SA referred by a clusterrolebinding allows kustomize to auto-add
- # namespace for the clusterrolebinding's SA ref.
- - cache-deployer-sa.yaml
-
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/cache-deployer/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/cache-deployer/kustomization.yaml
deleted file mode 100644
index 6b57134..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/cache-deployer/kustomization.yaml
+++ /dev/null
@@ -1,12 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
- - cluster-scoped
- - cache-deployer-role.yaml
- - cache-deployer-rolebinding.yaml
- - cache-deployer-deployment.yaml
-commonLabels:
- app: cache-deployer
-images:
- - name: gcr.io/ml-pipeline/cache-deployer
- newTag: 1.8.4
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/cache/cache-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/cache/cache-deployment.yaml
deleted file mode 100644
index 58512e1..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/cache/cache-deployment.yaml
+++ /dev/null
@@ -1,82 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: cache-server
- labels:
- app: cache-server
-spec:
- replicas: 1
- selector:
- matchLabels:
- app: cache-server
- template:
- metadata:
- labels:
- app: cache-server
- spec:
- containers:
- - name: server
- image: gcr.io/ml-pipeline/cache-server:dummy
- env:
- - name: CACHE_IMAGE
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: cacheImage
- - name: CACHE_NODE_RESTRICTIONS
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: cacheNodeRestrictions
- - name: DBCONFIG_DRIVER
- value: mysql
- - name: DBCONFIG_DB_NAME
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: cacheDb
- - name: DBCONFIG_HOST_NAME
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: dbHost
- - name: DBCONFIG_PORT
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: dbPort
- - name: DBCONFIG_USER
- valueFrom:
- secretKeyRef:
- name: mysql-secret
- key: username
- - name: DBCONFIG_PASSWORD
- valueFrom:
- secretKeyRef:
- name: mysql-secret
- key: password
- - name: NAMESPACE_TO_WATCH
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- args: ["--db_driver=$(DBCONFIG_DRIVER)",
- "--db_host=$(DBCONFIG_HOST_NAME)",
- "--db_port=$(DBCONFIG_PORT)",
- "--db_name=$(DBCONFIG_DB_NAME)",
- "--db_user=$(DBCONFIG_USER)",
- "--db_password=$(DBCONFIG_PASSWORD)",
- "--namespace_to_watch=$(NAMESPACE_TO_WATCH)",
- ]
- imagePullPolicy: Always
- ports:
- - containerPort: 8443
- name: webhook-api
- volumeMounts:
- - name: webhook-tls-certs
- mountPath: /etc/webhook/certs
- readOnly: true
- volumes:
- - name: webhook-tls-certs
- secret:
- secretName: webhook-server-tls
- serviceAccountName: kubeflow-pipelines-cache
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/cache/cache-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/cache/cache-role.yaml
deleted file mode 100644
index d93b5d6..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/cache/cache-role.yaml
+++ /dev/null
@@ -1,44 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata:
- labels:
- app: kubeflow-pipelines-cache-role
- name: kubeflow-pipelines-cache-role
-rules:
-- apiGroups:
- - ""
- resources:
- - pods
- verbs:
- - get
- - list
- - watch
- - update
- - patch
-- apiGroups:
- - ""
- resources:
- - configmaps
- verbs:
- - get
-- apiGroups:
- - argoproj.io
- resources:
- - workflows
- verbs:
- - get
- - list
- - watch
- - update
- - patch
-- apiGroups:
- - tekton.dev
- resources:
- - taskruns
- - taskruns/status
- verbs:
- - get
- - list
- - watch
- - update
- - patch
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/cache/cache-rolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/cache/cache-rolebinding.yaml
deleted file mode 100644
index 9c89249..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/cache/cache-rolebinding.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: kubeflow-pipelines-cache-binding
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: kubeflow-pipelines-cache-role
-subjects:
-- kind: ServiceAccount
- name: kubeflow-pipelines-cache
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/cache/cache-sa.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/cache/cache-sa.yaml
deleted file mode 100644
index 232ddd1..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/cache/cache-sa.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: kubeflow-pipelines-cache
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/cache/cache-service.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/cache/cache-service.yaml
deleted file mode 100644
index 5916d54..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/cache/cache-service.yaml
+++ /dev/null
@@ -1,10 +0,0 @@
-apiVersion: v1
-kind: Service
-metadata:
- name: cache-server
-spec:
- selector:
- app: cache-server
- ports:
- - port: 443
- targetPort: webhook-api
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/cache/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/cache/kustomization.yaml
deleted file mode 100644
index 15cef97..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/cache/kustomization.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
- - cache-deployment.yaml
- - cache-service.yaml
- - cache-role.yaml
- - cache-rolebinding.yaml
- - cache-sa.yaml
-commonLabels:
- app: cache-server
-images:
- - name: gcr.io/ml-pipeline/cache-server
- newName: quay.io/aipipeline/cache-server
- newTag: 1.7.1
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/generic/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/generic/kustomization.yaml
deleted file mode 100644
index 9ff79b4..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/generic/kustomization.yaml
+++ /dev/null
@@ -1,61 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-namespace: kubeflow
-
-resources:
- - ../../pipeline
- - ../../cache
- - ../../cache-deployer
- - pipeline-install-config.yaml
- - mysql-secret.yaml
-
-
-# Used by Kustomize
-replacements:
-- source:
- name: pipeline-install-config
- kind: ConfigMap
- version: v1
- fieldpath: data.appName
- targets:
- - select:
- kind: Application
- version: app.k8s.io/v1beta1
- fieldPaths:
- - metadata.name
-- source:
- name: pipeline-install-config
- kind: ConfigMap
- version: v1
- fieldpath: data.appVersion
- targets:
- - select:
- kind: Application
- version: app.k8s.io/v1beta1
- fieldPaths:
- - spec.descriptor.version
-- source:
- name: pipeline-install-config
- kind: ConfigMap
- version: v1
- fieldpath: data.bucketName
- targets:
- - select:
- kind: ConfigMap
- name: workflow-controller-configmap
- fieldPaths:
- - data.artifactRepository.s3.bucket
-- source:
- name: pipeline-install-config
- kind: ConfigMap
- version: v1
- fieldpath: data.defaultPipelineRoot
- targets:
- - select:
- kind: ConfigMap
- name: kfp-launcher
- fieldPaths:
- - data.defaultPipelineRoot
-
-configurations:
-- params.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/generic/mysql-secret.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/generic/mysql-secret.yaml
deleted file mode 100644
index 576dce6..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/generic/mysql-secret.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-kind: Secret
-apiVersion: v1
-metadata:
- name: mysql-secret
-stringData:
- username: root
- password: ""
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/generic/params.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/generic/params.yaml
deleted file mode 100644
index 9b8a7ef..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/generic/params.yaml
+++ /dev/null
@@ -1,10 +0,0 @@
-# Allow Kustomize var to replace following fields.
-varReference:
-- path: data/config
- kind: ConfigMap
-- path: data/defaultPipelineRoot
- kind: ConfigMap
-- path: metadata/name
- kind: Application
-- path: spec/descriptor/version
- kind: Application
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/generic/pipeline-install-config.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/generic/pipeline-install-config.yaml
deleted file mode 100644
index 0a44ea9..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/generic/pipeline-install-config.yaml
+++ /dev/null
@@ -1,79 +0,0 @@
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: pipeline-install-config
-data:
- warning: |
- 1. Do not use kubectl to edit this configmap, because some values are used
- during kustomize build. Instead, change the configmap and apply the entire
- kustomize manifests again.
- 2. After updating the configmap, some deployments may need to be restarted
- until the changes take effect. A quick way to restart all deployments in a
- namespace: `kubectl rollout restart deployment -n `.
- appName: pipeline
- appVersion: 1.8.4
- dbHost: mysql
- dbPort: "3306"
- mlmdDb: metadb
- cacheDb: cachedb
- pipelineDb: mlpipeline
- objectStoreHost: minio-service
- objectStorePort: "9000"
- bucketName: mlpipeline
- ## defaultPipelineRoot: Optional. Default pipeline root in v2 compatible mode.
- ## https://www.kubeflow.org/docs/components/pipelines/sdk/v2/v2-compatibility/
- ##
- ## If the field is not set, kfp-launcher configmaps won't be created and
- ## v2 compatible mode defaults to minio://mlpipeline/v2/artifacts as pipeline
- ## root.
- ##
- ## When not in Kubeflow Pipelines multi-user mode, the config works as you
- ## would normally expect.
- ##
- ## In Kubeflow Pipelines multi-user mode, the config creates default
- ## kfp-launcher configmaps in each user's namespace. Users can edit the
- ## kfp-launcher configmap's defaultPipelineRoot field afterwards to configure
- ## namespace-specific default pipeline root. The namespace specific changes in
- ## kfp-launcher configmap won't be overridden by pipeline-install-config.
- ##
- ## Caveat: when you update the config from a non-empty value, only new
- ## namespaces get the updated config by default. Owners of existing namespaces
- ## must delete the kfp-launcher configmap to get the new default config value.
- ##
- ## Examples:
- ## defaultPipelineRoot: minio://mlpipeline/v2/artifacts
- ## defaultPipelineRoot: gs://your-bucket/path/to/artifacts
- ## defaultPipelineRoot: s3://your-bucket/path/to/artifacts
- ##
- ## V2 Compatible Mode Feature stage:
- ## [Beta](https://github.com/kubeflow/pipelines/blob/master/docs/release/feature-stages.md#beta)
- defaultPipelineRoot: ""
- ## autoUpdatePipelineDefaultVersion: States if the pipeline version
- ## should be updated by defult for a versioned pipeline or not when a new
- ## version is uploaded. This sets the deployment wide definition.
- autoUpdatePipelineDefaultVersion: "true"
- ## cronScheduleTimezone: States the timezone which should be used for
- ## the cron scheduler. If not specified the local timezone of the
- ## cluster will be used. Valid values are UTC, Local or values according to
- ## the IANA Time Zone database, such as "America/New_York" and "Asia/Shanghai".
- ## Feature stage:
- ## [Alpha](https://github.com/kubeflow/pipelines/blob/master/docs/release/feature-stages.md#alpha)
- cronScheduleTimezone: "UTC"
- ## cacheImage is the image that the mutating webhook will use to patch
- ## cached steps with. Will be used to echo a message announcing that
- ## the cached step result will be used. If not set it will default to
- ## 'registry.access.redhat.com/ubi8/ubi-minimal'
- cacheImage: "registry.access.redhat.com/ubi8/ubi-minimal"
- ## cacheNodeRestrictions the dummy container runing if output is cached
- ## will run with the same affinity and node selector as the default pipeline
- ## step. This is defaulted to 'false' to allow the pod to be scheduled on
- ## any node and avoid defaulting to specific nodes. Allowed values are:
- ## 'false' and 'true'.
- cacheNodeRestrictions: "false"
- ## ConMaxLifeTime will set the connection max lifetime for MySQL
- ## this is very important to setup when using external databases.
- ## See this issue for more details: https://github.com/kubeflow/pipelines/issues/5329
- ## Note: this value should be a string that can be parsed by `time.ParseDuration`.
- ## If this value doesn't include a unit abbreviation, the units will be assumed
- ## to be nanoseconds.
- ConMaxLifeTime: "120s"
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/api-service/cluster-role-binding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/api-service/cluster-role-binding.yaml
deleted file mode 100644
index 0d9d185..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/api-service/cluster-role-binding.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: ml-pipeline
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: ml-pipeline
-subjects:
-- kind: ServiceAccount
- name: ml-pipeline
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/api-service/cluster-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/api-service/cluster-role.yaml
deleted file mode 100644
index bf69003..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/api-service/cluster-role.yaml
+++ /dev/null
@@ -1,78 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- name: ml-pipeline
-rules:
-- apiGroups:
- - ""
- resources:
- - pods
- - pods/log
- verbs:
- - get
- - list
- - delete
-- apiGroups:
- - argoproj.io
- resources:
- - workflows
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
-- apiGroups:
- - kubeflow.org
- resources:
- - scheduledworkflows
- verbs:
- - create
- - get
- - list
- - update
- - patch
- - delete
-- apiGroups:
- - authorization.k8s.io
- resources:
- - subjectaccessreviews
- verbs:
- - create
-- apiGroups:
- - authentication.k8s.io
- resources:
- - tokenreviews
- verbs:
- - create
-- apiGroups:
- - tekton.dev
- resources:
- - pipelineruns
- - taskruns
- - conditions
- - runs
- - customruns
- - tasks
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
-- apiGroups:
- - custom.tekton.dev
- resources:
- - pipelineloops
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/api-service/deployment-patch.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/api-service/deployment-patch.yaml
deleted file mode 100644
index 4f283cd..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/api-service/deployment-patch.yaml
+++ /dev/null
@@ -1,17 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: ml-pipeline
-spec:
- template:
- spec:
- containers:
- - name: ml-pipeline-api-server
- envFrom:
- - configMapRef:
- name: pipeline-api-server-config
- env:
- - name: KUBEFLOW_USERID_HEADER
- value: kubeflow-userid
- - name: KUBEFLOW_USERID_PREFIX
- value: ""
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/api-service/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/api-service/kustomization.yaml
deleted file mode 100644
index 20141b3..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/api-service/kustomization.yaml
+++ /dev/null
@@ -1,9 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
-- cluster-role-binding.yaml
-- cluster-role.yaml
-configMapGenerator:
-- name: pipeline-api-server-config
- envs:
- - params.env
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/api-service/params.env b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/api-service/params.env
deleted file mode 100644
index 5bb1e0a..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/api-service/params.env
+++ /dev/null
@@ -1,4 +0,0 @@
-MULTIUSER=true
-DEFAULTPIPELINERUNNERSERVICEACCOUNT=default-editor
-VISUALIZATIONSERVICE_NAME=ml-pipeline-visualizationserver
-VISUALIZATIONSERVICE_PORT=8888
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/cache/cluster-role-binding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/cache/cluster-role-binding.yaml
deleted file mode 100644
index 4e80257..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/cache/cluster-role-binding.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: kubeflow-pipelines-cache-binding
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: kubeflow-pipelines-cache-role
-subjects:
-- kind: ServiceAccount
- name: kubeflow-pipelines-cache
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/cache/cluster-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/cache/cluster-role.yaml
deleted file mode 100644
index 35681a2..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/cache/cluster-role.yaml
+++ /dev/null
@@ -1,42 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- name: kubeflow-pipelines-cache-role
-rules:
-- apiGroups:
- - ""
- resources:
- - pods
- verbs:
- - get
- - list
- - watch
- - update
- - patch
-- apiGroups:
- - ""
- resources:
- - configmaps
- verbs:
- - get
-- apiGroups:
- - argoproj.io
- resources:
- - workflows
- verbs:
- - get
- - list
- - watch
- - update
- - patch
-- apiGroups:
- - tekton.dev
- resources:
- - taskruns
- - taskruns/status
- verbs:
- - get
- - list
- - watch
- - update
- - patch
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/cache/deployment-patch.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/cache/deployment-patch.yaml
deleted file mode 100644
index 5f98ee1..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/cache/deployment-patch.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: cache-server
-spec:
- template:
- spec:
- containers:
- - name: server
- env:
- - name: NAMESPACE_TO_WATCH
- value: ''
- valueFrom: null
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/cache/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/cache/kustomization.yaml
deleted file mode 100644
index ec4dfa8..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/cache/kustomization.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-commonLabels:
- app: cache-server
-resources:
-- cluster-role.yaml
-- cluster-role-binding.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/istio-authorization-config.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/istio-authorization-config.yaml
deleted file mode 100644
index 8b3144a..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/istio-authorization-config.yaml
+++ /dev/null
@@ -1,106 +0,0 @@
-apiVersion: security.istio.io/v1beta1
-kind: AuthorizationPolicy
-metadata:
- name: ml-pipeline-ui
- namespace: kubeflow
-spec:
- selector:
- matchLabels:
- app: ml-pipeline-ui
- rules:
- - from:
- - source:
- namespaces:
- - istio-system
----
-apiVersion: security.istio.io/v1beta1
-kind: AuthorizationPolicy
-metadata:
- name: ml-pipeline
- namespace: kubeflow
-spec:
- selector:
- matchLabels:
- app: ml-pipeline
- rules:
- - from:
- - source:
- principals:
- - cluster.local/ns/kubeflow/sa/ml-pipeline
- - cluster.local/ns/kubeflow/sa/ml-pipeline-ui
- - cluster.local/ns/kubeflow/sa/ml-pipeline-persistenceagent
- - cluster.local/ns/kubeflow/sa/ml-pipeline-scheduledworkflow
- - cluster.local/ns/kubeflow/sa/ml-pipeline-viewer-crd-service-account
- - cluster.local/ns/kubeflow/sa/kubeflow-pipelines-cache
- # allow access by any trusted principal
- - from:
- - source:
- requestPrincipals: ["*"]
- # For user workloads, which cannot user http headers for authentication
- - when:
- - key: request.headers[kubeflow-userid]
- notValues: ['*']
----
-apiVersion: security.istio.io/v1beta1
-kind: AuthorizationPolicy
-metadata:
- name: ml-pipeline-visualizationserver
- namespace: kubeflow
-spec:
- selector:
- matchLabels:
- app: ml-pipeline-visualizationserver
- rules:
- - from:
- - source:
- principals:
- - cluster.local/ns/kubeflow/sa/ml-pipeline
- - cluster.local/ns/kubeflow/sa/ml-pipeline-ui
- - cluster.local/ns/kubeflow/sa/ml-pipeline-persistenceagent
- - cluster.local/ns/kubeflow/sa/ml-pipeline-scheduledworkflow
- - cluster.local/ns/kubeflow/sa/ml-pipeline-viewer-crd-service-account
- - cluster.local/ns/kubeflow/sa/kubeflow-pipelines-cache
-
----
-apiVersion: security.istio.io/v1beta1
-kind: AuthorizationPolicy
-metadata:
- name: service-cache-server
- namespace: kubeflow
-spec:
- selector:
- matchLabels:
- app: cache-server
- rules:
- - {}
-
----
-apiVersion: "networking.istio.io/v1alpha3"
-kind: DestinationRule
-metadata:
- name: ml-pipeline-ui
-spec:
- host: ml-pipeline-ui.kubeflow.svc.cluster.local
- trafficPolicy:
- tls:
- mode: ISTIO_MUTUAL
----
-apiVersion: "networking.istio.io/v1alpha3"
-kind: DestinationRule
-metadata:
- name: ml-pipeline
-spec:
- host: ml-pipeline.kubeflow.svc.cluster.local
- trafficPolicy:
- tls:
- mode: ISTIO_MUTUAL
----
-apiVersion: "networking.istio.io/v1alpha3"
-kind: DestinationRule
-metadata:
- name: ml-pipeline-visualizationserver
-spec:
- host: ml-pipeline-visualizationserver.kubeflow.svc.cluster.local
- trafficPolicy:
- tls:
- mode: ISTIO_MUTUAL
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/kustomization.yaml
deleted file mode 100644
index a405bf5..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/kustomization.yaml
+++ /dev/null
@@ -1,46 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-namespace: kubeflow
-commonLabels:
- app.kubernetes.io/name: kubeflow-pipelines
- app.kubernetes.io/component: ml-pipeline
-resources:
-- ../generic
-- view-edit-cluster-roles.yaml
-- api-service
-- pipelines-ui
-- pipelines-profile-controller
-- scheduled-workflow
-- viewer-controller
-- persistence-agent
-- cache
-- metadata-writer
-- istio-authorization-config.yaml
-- virtual-service.yaml
-patches:
-- path: api-service/deployment-patch.yaml
-- path: pipelines-ui/deployment-patch.yaml
-- path: pipelines-ui/configmap-patch.yaml
-- path: scheduled-workflow/deployment-patch.yaml
-- path: viewer-controller/deployment-patch.yaml
-- path: persistence-agent/deployment-patch.yaml
-- path: metadata-writer/deployment-patch.yaml
-- path: cache/deployment-patch.yaml
-
-replacements:
-- source:
- name: ml-pipeline
- kind: Deployment
- fieldpath: metadata.namespace
- targets:
- - select:
- kind: VirtualService
- name: ml-pipeline-ui
- fieldPaths:
- - spec.http.0.route.0.destination.host
- options:
- delimiter: .
- index: 1
-
-configurations:
-- params.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/metadata-writer/cluster-role-binding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/metadata-writer/cluster-role-binding.yaml
deleted file mode 100644
index 605f1ff..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/metadata-writer/cluster-role-binding.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: kubeflow-pipelines-metadata-writer-binding
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: kubeflow-pipelines-metadata-writer-role
-subjects:
-- kind: ServiceAccount
- name: kubeflow-pipelines-metadata-writer
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/metadata-writer/deployment-patch.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/metadata-writer/deployment-patch.yaml
deleted file mode 100644
index 2babe9f..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/metadata-writer/deployment-patch.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: metadata-writer
-spec:
- template:
- spec:
- containers:
- - name: main
- env:
- - name: NAMESPACE_TO_WATCH
- value: ''
- valueFrom: null
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/metadata-writer/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/metadata-writer/kustomization.yaml
deleted file mode 100644
index b1f6546..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/metadata-writer/kustomization.yaml
+++ /dev/null
@@ -1,5 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
-- cluster-role.yaml
-- cluster-role-binding.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/params.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/params.yaml
deleted file mode 100644
index 0cb3a00..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/params.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-# Allow Kustomize var to replace following fields.
-varReference:
-- path: spec/http/route/destination/host
- kind: VirtualService
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/persistence-agent/cluster-role-binding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/persistence-agent/cluster-role-binding.yaml
deleted file mode 100644
index e030bd8..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/persistence-agent/cluster-role-binding.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: ml-pipeline-persistenceagent-binding
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: ml-pipeline-persistenceagent-role
-subjects:
-- kind: ServiceAccount
- name: ml-pipeline-persistenceagent
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/persistence-agent/cluster-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/persistence-agent/cluster-role.yaml
deleted file mode 100644
index f03998b..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/persistence-agent/cluster-role.yaml
+++ /dev/null
@@ -1,38 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- name: ml-pipeline-persistenceagent-role
-rules:
-- apiGroups:
- - argoproj.io
- resources:
- - workflows
- verbs:
- - get
- - list
- - watch
-- apiGroups:
- - kubeflow.org
- resources:
- - scheduledworkflows
- verbs:
- - get
- - list
- - watch
-- apiGroups:
- - tekton.dev
- resources:
- - pipelineruns
- - taskruns
- - conditions
- - runs
- - customruns
- - tasks
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/persistence-agent/deployment-patch.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/persistence-agent/deployment-patch.yaml
deleted file mode 100644
index 1e165de..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/persistence-agent/deployment-patch.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: ml-pipeline-persistenceagent
-spec:
- template:
- spec:
- containers:
- - name: ml-pipeline-persistenceagent
- env:
- - name: NAMESPACE
- value: ''
- valueFrom: null
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/persistence-agent/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/persistence-agent/kustomization.yaml
deleted file mode 100644
index b1f6546..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/persistence-agent/kustomization.yaml
+++ /dev/null
@@ -1,5 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
-- cluster-role.yaml
-- cluster-role-binding.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/pipelines-profile-controller/deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/pipelines-profile-controller/deployment.yaml
deleted file mode 100644
index 99dd9e2..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/pipelines-profile-controller/deployment.yaml
+++ /dev/null
@@ -1,49 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: kubeflow-pipelines-profile-controller
-spec:
- replicas: 1
- template:
- metadata:
- annotations:
- sidecar.istio.io/inject: "false"
- spec:
- containers:
- - name: profile-controller
- image: python:3.7
- command: ["python", "/hooks/sync.py"]
- envFrom:
- - configMapRef:
- name: kubeflow-pipelines-profile-controller-env
- env:
- - name: KFP_VERSION
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: appVersion
- - name: KFP_DEFAULT_PIPELINE_ROOT
- valueFrom:
- configMapKeyRef:
- optional: true
- name: pipeline-install-config
- key: defaultPipelineRoot
- - name: MINIO_ACCESS_KEY
- valueFrom:
- secretKeyRef:
- name: mlpipeline-minio-artifact
- key: accesskey
- - name: MINIO_SECRET_KEY
- valueFrom:
- secretKeyRef:
- name: mlpipeline-minio-artifact
- key: secretkey
- volumeMounts:
- - name: hooks
- mountPath: /hooks
- ports:
- - containerPort: 8080
- volumes:
- - name: hooks
- configMap:
- name: kubeflow-pipelines-profile-controller-code
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/pipelines-profile-controller/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/pipelines-profile-controller/kustomization.yaml
deleted file mode 100644
index 6ed73f1..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/pipelines-profile-controller/kustomization.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-namespace: kubeflow
-commonLabels:
- app: kubeflow-pipelines-profile-controller
-resources:
-- service.yaml
-- deployment.yaml
-- composite-controller.yaml
-configMapGenerator:
-- name: kubeflow-pipelines-profile-controller-code
- files:
- - sync.py
-- name: kubeflow-pipelines-profile-controller-env
- envs:
- - params.env
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/pipelines-profile-controller/params.env b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/pipelines-profile-controller/params.env
deleted file mode 100644
index 86706b9..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/pipelines-profile-controller/params.env
+++ /dev/null
@@ -1 +0,0 @@
-DISABLE_ISTIO_SIDECAR=false
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/pipelines-profile-controller/requirements-dev.txt b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/pipelines-profile-controller/requirements-dev.txt
deleted file mode 100644
index dc27cb5..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/pipelines-profile-controller/requirements-dev.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-pytest
-pytest-lazy-fixture
-requests
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/pipelines-profile-controller/run_tests.sh b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/pipelines-profile-controller/run_tests.sh
deleted file mode 100755
index 4933ec7..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/pipelines-profile-controller/run_tests.sh
+++ /dev/null
@@ -1,9 +0,0 @@
-# Build venv with required packages
-VENV=".venv"
-PYTHON_VENV="${VENV}/bin/python"
-python -m venv $VENV
-$PYTHON_VENV -m pip install -U pip
-$PYTHON_VENV -m pip install -r requirements-dev.txt
-
-# Run tests
-$PYTHON_VENV -m pytest ./test_sync.py
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/pipelines-profile-controller/service.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/pipelines-profile-controller/service.yaml
deleted file mode 100644
index 9c5316d..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/pipelines-profile-controller/service.yaml
+++ /dev/null
@@ -1,10 +0,0 @@
-apiVersion: v1
-kind: Service
-metadata:
- name: kubeflow-pipelines-profile-controller
-spec:
- ports:
- - name: http
- port: 80
- protocol: TCP
- targetPort: 8080
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/pipelines-profile-controller/sync.py b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/pipelines-profile-controller/sync.py
deleted file mode 100644
index 7caecb8..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/pipelines-profile-controller/sync.py
+++ /dev/null
@@ -1,396 +0,0 @@
-# Copyright 2020-2021 The Kubeflow Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-from http.server import BaseHTTPRequestHandler, HTTPServer
-import json
-import os
-import base64
-
-
-def main():
- settings = get_settings_from_env()
- server = server_factory(**settings)
- server.serve_forever()
-
-
-def get_settings_from_env(controller_port=None,
- visualization_server_image=None, frontend_image=None,
- visualization_server_tag=None, frontend_tag=None, disable_istio_sidecar=None,
- minio_access_key=None, minio_secret_key=None, kfp_default_pipeline_root=None):
- """
- Returns a dict of settings from environment variables relevant to the controller
-
- Environment settings can be overridden by passing them here as arguments.
-
- Settings are pulled from the all-caps version of the setting name. The
- following defaults are used if those environment variables are not set
- to enable backwards compatibility with previous versions of this script:
- visualization_server_image: gcr.io/ml-pipeline/visualization-server
- visualization_server_tag: value of KFP_VERSION environment variable
- frontend_image: gcr.io/ml-pipeline/frontend
- frontend_tag: value of KFP_VERSION environment variable
- disable_istio_sidecar: Required (no default)
- minio_access_key: Required (no default)
- minio_secret_key: Required (no default)
- """
- settings = dict()
- settings["controller_port"] = \
- controller_port or \
- os.environ.get("CONTROLLER_PORT", "8080")
-
- settings["visualization_server_image"] = \
- visualization_server_image or \
- os.environ.get("VISUALIZATION_SERVER_IMAGE", "gcr.io/ml-pipeline/visualization-server")
-
- settings["frontend_image"] = \
- frontend_image or \
- os.environ.get("FRONTEND_IMAGE", "gcr.io/ml-pipeline/frontend")
-
- # Look for specific tags for each image first, falling back to
- # previously used KFP_VERSION environment variable for backwards
- # compatibility
- settings["visualization_server_tag"] = \
- visualization_server_tag or \
- os.environ.get("VISUALIZATION_SERVER_TAG") or \
- os.environ["KFP_VERSION"]
-
- settings["frontend_tag"] = \
- frontend_tag or \
- os.environ.get("FRONTEND_TAG") or \
- os.environ["KFP_VERSION"]
-
- settings["disable_istio_sidecar"] = \
- disable_istio_sidecar if disable_istio_sidecar is not None \
- else os.environ.get("DISABLE_ISTIO_SIDECAR") == "true"
-
- settings["minio_access_key"] = \
- minio_access_key or \
- base64.b64encode(bytes(os.environ.get("MINIO_ACCESS_KEY"), 'utf-8')).decode('utf-8')
-
- settings["minio_secret_key"] = \
- minio_secret_key or \
- base64.b64encode(bytes(os.environ.get("MINIO_SECRET_KEY"), 'utf-8')).decode('utf-8')
-
- # KFP_DEFAULT_PIPELINE_ROOT is optional
- settings["kfp_default_pipeline_root"] = \
- kfp_default_pipeline_root or \
- os.environ.get("KFP_DEFAULT_PIPELINE_ROOT")
-
- return settings
-
-
-def server_factory(visualization_server_image,
- visualization_server_tag, frontend_image, frontend_tag,
- disable_istio_sidecar, minio_access_key,
- minio_secret_key, kfp_default_pipeline_root=None,
- url="", controller_port=8080):
- """
- Returns an HTTPServer populated with Handler with customized settings
- """
- class Controller(BaseHTTPRequestHandler):
- def sync(self, parent, children):
- # parent is a namespace
- namespace = parent.get("metadata", {}).get("name")
-
- pipeline_enabled = parent.get("metadata", {}).get(
- "labels", {}).get("pipelines.kubeflow.org/enabled")
-
- if pipeline_enabled != "true":
- return {"status": {}, "children": []}
-
- desired_configmap_count = 1
- desired_resources = []
- if kfp_default_pipeline_root:
- desired_configmap_count = 2
- desired_resources += [{
- "apiVersion": "v1",
- "kind": "ConfigMap",
- "metadata": {
- "name": "kfp-launcher",
- "namespace": namespace,
- },
- "data": {
- "defaultPipelineRoot": kfp_default_pipeline_root,
- },
- }]
-
-
- # Compute status based on observed state.
- desired_status = {
- "kubeflow-pipelines-ready":
- len(children["Secret.v1"]) == 1 and
- len(children["ConfigMap.v1"]) == desired_configmap_count and
- len(children["Deployment.apps/v1"]) == 2 and
- len(children["Service.v1"]) == 2 and
- len(children["DestinationRule.networking.istio.io/v1alpha3"]) == 1 and
- len(children["AuthorizationPolicy.security.istio.io/v1beta1"]) == 1 and
- "True" or "False"
- }
-
- # Generate the desired child object(s).
- desired_resources += [
- {
- "apiVersion": "v1",
- "kind": "ConfigMap",
- "metadata": {
- "name": "metadata-grpc-configmap",
- "namespace": namespace,
- },
- "data": {
- "METADATA_GRPC_SERVICE_HOST":
- "metadata-grpc-service.kubeflow",
- "METADATA_GRPC_SERVICE_PORT": "8080",
- },
- },
- # Visualization server related manifests below
- {
- "apiVersion": "apps/v1",
- "kind": "Deployment",
- "metadata": {
- "labels": {
- "app": "ml-pipeline-visualizationserver"
- },
- "name": "ml-pipeline-visualizationserver",
- "namespace": namespace,
- },
- "spec": {
- "selector": {
- "matchLabels": {
- "app": "ml-pipeline-visualizationserver"
- },
- },
- "template": {
- "metadata": {
- "labels": {
- "app": "ml-pipeline-visualizationserver"
- },
- "annotations": disable_istio_sidecar and {
- "sidecar.istio.io/inject": "false"
- } or {},
- },
- "spec": {
- "containers": [{
- "image": f"{visualization_server_image}:{visualization_server_tag}",
- "imagePullPolicy":
- "IfNotPresent",
- "name":
- "ml-pipeline-visualizationserver",
- "ports": [{
- "containerPort": 8888
- }],
- "resources": {
- "requests": {
- "cpu": "50m",
- "memory": "200Mi"
- },
- "limits": {
- "cpu": "500m",
- "memory": "1Gi"
- },
- }
- }],
- "serviceAccountName":
- "default-editor",
- },
- },
- },
- },
- {
- "apiVersion": "networking.istio.io/v1alpha3",
- "kind": "DestinationRule",
- "metadata": {
- "name": "ml-pipeline-visualizationserver",
- "namespace": namespace,
- },
- "spec": {
- "host": "ml-pipeline-visualizationserver",
- "trafficPolicy": {
- "tls": {
- "mode": "ISTIO_MUTUAL"
- }
- }
- }
- },
- {
- "apiVersion": "security.istio.io/v1beta1",
- "kind": "AuthorizationPolicy",
- "metadata": {
- "name": "ml-pipeline-visualizationserver",
- "namespace": namespace,
- },
- "spec": {
- "selector": {
- "matchLabels": {
- "app": "ml-pipeline-visualizationserver"
- }
- },
- "rules": [{
- "from": [{
- "source": {
- "principals": ["cluster.local/ns/kubeflow/sa/ml-pipeline"]
- }
- }]
- }]
- }
- },
- {
- "apiVersion": "v1",
- "kind": "Service",
- "metadata": {
- "name": "ml-pipeline-visualizationserver",
- "namespace": namespace,
- },
- "spec": {
- "ports": [{
- "name": "http",
- "port": 8888,
- "protocol": "TCP",
- "targetPort": 8888,
- }],
- "selector": {
- "app": "ml-pipeline-visualizationserver",
- },
- },
- },
- # Artifact fetcher related resources below.
- {
- "apiVersion": "apps/v1",
- "kind": "Deployment",
- "metadata": {
- "labels": {
- "app": "ml-pipeline-ui-artifact"
- },
- "name": "ml-pipeline-ui-artifact",
- "namespace": namespace,
- },
- "spec": {
- "selector": {
- "matchLabels": {
- "app": "ml-pipeline-ui-artifact"
- }
- },
- "template": {
- "metadata": {
- "labels": {
- "app": "ml-pipeline-ui-artifact"
- },
- "annotations": disable_istio_sidecar and {
- "sidecar.istio.io/inject": "false"
- } or {},
- },
- "spec": {
- "containers": [{
- "name":
- "ml-pipeline-ui-artifact",
- "image": f"{frontend_image}:{frontend_tag}",
- "imagePullPolicy":
- "IfNotPresent",
- "ports": [{
- "containerPort": 3000
- }],
- "env": [
- {
- "name": "MINIO_ACCESS_KEY",
- "valueFrom": {
- "secretKeyRef": {
- "key": "accesskey",
- "name": "mlpipeline-minio-artifact"
- }
- }
- },
- {
- "name": "MINIO_SECRET_KEY",
- "valueFrom": {
- "secretKeyRef": {
- "key": "secretkey",
- "name": "mlpipeline-minio-artifact"
- }
- }
- }
- ],
- "resources": {
- "requests": {
- "cpu": "10m",
- "memory": "70Mi"
- },
- "limits": {
- "cpu": "100m",
- "memory": "500Mi"
- },
- }
- }],
- "serviceAccountName":
- "default-editor"
- }
- }
- }
- },
- {
- "apiVersion": "v1",
- "kind": "Service",
- "metadata": {
- "name": "ml-pipeline-ui-artifact",
- "namespace": namespace,
- "labels": {
- "app": "ml-pipeline-ui-artifact"
- }
- },
- "spec": {
- "ports": [{
- "name":
- "http", # name is required to let istio understand request protocol
- "port": 80,
- "protocol": "TCP",
- "targetPort": 3000
- }],
- "selector": {
- "app": "ml-pipeline-ui-artifact"
- }
- }
- },
- ]
- print('Received request:\n', json.dumps(parent, indent=2, sort_keys=True))
- print('Desired resources except secrets:\n', json.dumps(desired_resources, indent=2, sort_keys=True))
- # Moved after the print argument because this is sensitive data.
- desired_resources.append({
- "apiVersion": "v1",
- "kind": "Secret",
- "metadata": {
- "name": "mlpipeline-minio-artifact",
- "namespace": namespace,
- },
- "data": {
- "accesskey": minio_access_key,
- "secretkey": minio_secret_key,
- },
- })
-
- return {"status": desired_status, "children": desired_resources}
-
- def do_POST(self):
- # Serve the sync() function as a JSON webhook.
- observed = json.loads(
- self.rfile.read(int(self.headers.get("content-length"))))
- desired = self.sync(observed["parent"], observed["children"])
-
- self.send_response(200)
- self.send_header("Content-type", "application/json")
- self.end_headers()
- self.wfile.write(bytes(json.dumps(desired), 'utf-8'))
-
- return HTTPServer((url, int(controller_port)), Controller)
-
-
-if __name__ == "__main__":
- main()
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/pipelines-profile-controller/test_sync.py b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/pipelines-profile-controller/test_sync.py
deleted file mode 100644
index 6158e3f..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/pipelines-profile-controller/test_sync.py
+++ /dev/null
@@ -1,286 +0,0 @@
-import os
-from unittest import mock
-import threading
-from sync import get_settings_from_env, server_factory
-import json
-
-import pytest
-import requests
-
-# Data sets passed to server
-DATA_INCORRECT_CHILDREN = {
- "parent": {
- "metadata": {
- "labels": {
- "pipelines.kubeflow.org/enabled": "true"
- },
- "name": "myName"
- }
- },
- "children": {
- "Secret.v1": [],
- "ConfigMap.v1": [],
- "Deployment.apps/v1": [],
- "Service.v1": [],
- "DestinationRule.networking.istio.io/v1alpha3": [],
- "AuthorizationPolicy.security.istio.io/v1beta1": [],
- }
-}
-
-DATA_CORRECT_CHILDREN = {
- "parent": {
- "metadata": {
- "labels": {
- "pipelines.kubeflow.org/enabled": "true"
- },
- "name": "myName"
- }
- },
- "children": {
- "Secret.v1": [1],
- "ConfigMap.v1": [1],
- "Deployment.apps/v1": [1, 1],
- "Service.v1": [1, 1],
- "DestinationRule.networking.istio.io/v1alpha3": [1],
- "AuthorizationPolicy.security.istio.io/v1beta1": [1],
- }
-}
-
-DATA_MISSING_PIPELINE_ENABLED = {"parent": {}, "children": {}}
-
-# Default values when environments are not explicit
-DEFAULT_FRONTEND_IMAGE = "gcr.io/ml-pipeline/frontend"
-DEFAULT_VISUALIZATION_IMAGE = "gcr.io/ml-pipeline/visualization-server"
-
-# Variables used for environment variable sets
-VISUALIZATION_SERVER_IMAGE = "vis-image"
-VISUALIZATION_SERVER_TAG = "somenumber.1.2.3"
-FRONTEND_IMAGE = "frontend-image"
-FRONTEND_TAG = "somehash"
-
-KFP_VERSION = "x.y.z"
-
-MINIO_ACCESS_KEY = "abcdef"
-MINIO_SECRET_KEY = "uvwxyz"
-
-# "Environments" used in tests
-ENV_VARIABLES_BASE = {
- "MINIO_ACCESS_KEY": MINIO_ACCESS_KEY,
- "MINIO_SECRET_KEY": MINIO_SECRET_KEY,
- "CONTROLLER_PORT": "0", # HTTPServer randomly assigns the port to a free port
-}
-
-ENV_KFP_VERSION_ONLY = dict(ENV_VARIABLES_BASE,
- **{
- "KFP_VERSION": KFP_VERSION,
- }
- )
-
-ENV_IMAGES_NO_TAGS = dict(ENV_VARIABLES_BASE,
- **{
- "KFP_VERSION": KFP_VERSION,
- "VISUALIZATION_SERVER_IMAGE": VISUALIZATION_SERVER_IMAGE,
- "FRONTEND_IMAGE": FRONTEND_IMAGE,
- }
- )
-
-ENV_IMAGES_WITH_TAGS = dict(ENV_VARIABLES_BASE,
- **{
- "VISUALIZATION_SERVER_IMAGE": VISUALIZATION_SERVER_IMAGE,
- "FRONTEND_IMAGE": FRONTEND_IMAGE,
- "VISUALIZATION_SERVER_TAG": VISUALIZATION_SERVER_TAG,
- "FRONTEND_TAG": FRONTEND_TAG,
- }
- )
-
-ENV_IMAGES_WITH_TAGS_AND_ISTIO = dict(ENV_IMAGES_WITH_TAGS,
- **{
- "DISABLE_ISTIO_SIDECAR": "false",
- }
- )
-
-
-def generate_image_name(imagename, tag):
- return f"{str(imagename)}:{str(tag)}"
-
-
-@pytest.fixture(
- scope="function",
-)
-def sync_server(request):
- """
- Starts the sync HTTP server for a given set of environment variables on a separate thread
-
- Yields:
- * the server (useful to interrogate for the server address)
- * environment variables (useful to interrogate for correct responses)
- """
- environ = request.param
- with mock.patch.dict(os.environ, environ):
- # Create a server at an available port and serve it on a thread as a daemon
- # This will result in a collection of servers being active - not a great way
- # if this fixture is run many times during a test, but ok for now
- settings = get_settings_from_env()
- server = server_factory(**settings)
- server_thread = threading.Thread(target=server.serve_forever)
- # Put on daemon so it doesn't keep pytest from ending
- server_thread.daemon = True
- server_thread.start()
- yield server, environ
-
-
-@pytest.fixture(
- scope="function",
-)
-def sync_server_from_arguments(request):
- """
- Starts the sync HTTP server for a given set of parameters passed as arguments, with server on a separate thread
-
- Yields:
- * the server (useful to interrogate for the server address)
- * environment variables (useful to interrogate for correct responses)
- """
- environ = {k.lower(): v for k, v in request.param.items()}
- settings = environ
- server = server_factory(**settings)
- server_thread = threading.Thread(target=server.serve_forever)
- # Put on daemon so it doesn't keep pytest from ending
- server_thread.daemon = True
- server_thread.start()
- yield server, environ
-
-
-@pytest.mark.parametrize(
- "sync_server, data, expected_status, expected_visualization_server_image, expected_frontend_server_image",
- [
- (
- ENV_KFP_VERSION_ONLY,
- DATA_INCORRECT_CHILDREN,
- {"kubeflow-pipelines-ready": "False"},
- generate_image_name(DEFAULT_VISUALIZATION_IMAGE, KFP_VERSION),
- generate_image_name(DEFAULT_FRONTEND_IMAGE, KFP_VERSION),
- ),
- (
- ENV_IMAGES_NO_TAGS,
- DATA_INCORRECT_CHILDREN,
- {"kubeflow-pipelines-ready": "False"},
- generate_image_name(ENV_IMAGES_NO_TAGS["VISUALIZATION_SERVER_IMAGE"], KFP_VERSION),
- generate_image_name(ENV_IMAGES_NO_TAGS["FRONTEND_IMAGE"], KFP_VERSION),
- ),
- (
- ENV_IMAGES_WITH_TAGS,
- DATA_INCORRECT_CHILDREN,
- {"kubeflow-pipelines-ready": "False"},
- generate_image_name(ENV_IMAGES_WITH_TAGS["VISUALIZATION_SERVER_IMAGE"],
- ENV_IMAGES_WITH_TAGS["VISUALIZATION_SERVER_TAG"]),
- generate_image_name(ENV_IMAGES_WITH_TAGS["FRONTEND_IMAGE"], ENV_IMAGES_WITH_TAGS["FRONTEND_TAG"]),
- ),
- (
- ENV_IMAGES_WITH_TAGS,
- DATA_CORRECT_CHILDREN,
- {"kubeflow-pipelines-ready": "True"},
- generate_image_name(ENV_IMAGES_WITH_TAGS["VISUALIZATION_SERVER_IMAGE"],
- ENV_IMAGES_WITH_TAGS["VISUALIZATION_SERVER_TAG"]),
- generate_image_name(ENV_IMAGES_WITH_TAGS["FRONTEND_IMAGE"], ENV_IMAGES_WITH_TAGS["FRONTEND_TAG"]),
- ),
- ],
- indirect=["sync_server"]
-)
-def test_sync_server_with_pipeline_enabled(sync_server, data, expected_status,
- expected_visualization_server_image, expected_frontend_server_image):
- """
- Nearly end-to-end test of how Controller serves .sync as a POST
-
- Tests case where metadata.labels.pipelines.kubeflow.org/enabled exists, and thus
- we should produce children
-
- Only does spot checks on children to see if key properties are correct
- """
- server, environ = sync_server
-
- # server.server_address = (url, port_as_integer)
- url = f"http://{server.server_address[0]}:{str(server.server_address[1])}"
- print("url: ", url)
- print("data")
- print(json.dumps(data, indent=2))
- x = requests.post(url, data=json.dumps(data))
- results = json.loads(x.text)
-
- # Test overall status of whether children are ok
- assert results['status'] == expected_status
-
- # Poke a few children to test things that can vary by environment variable
- assert results['children'][1]["spec"]["template"]["spec"]["containers"][0][
- "image"] == expected_visualization_server_image
- assert results['children'][5]["spec"]["template"]["spec"]["containers"][0][
- "image"] == expected_frontend_server_image
-
-
-@pytest.mark.parametrize(
- "sync_server_from_arguments, data, expected_status, expected_visualization_server_image, "
- "expected_frontend_server_image",
- [
- (
- ENV_IMAGES_WITH_TAGS_AND_ISTIO,
- DATA_CORRECT_CHILDREN,
- {"kubeflow-pipelines-ready": "True"},
- generate_image_name(ENV_IMAGES_WITH_TAGS["VISUALIZATION_SERVER_IMAGE"],
- ENV_IMAGES_WITH_TAGS["VISUALIZATION_SERVER_TAG"]),
- generate_image_name(ENV_IMAGES_WITH_TAGS["FRONTEND_IMAGE"], ENV_IMAGES_WITH_TAGS["FRONTEND_TAG"]),
- ),
- ],
- indirect=["sync_server_from_arguments"]
-)
-def test_sync_server_with_direct_passing_of_settings(
- sync_server_from_arguments, data, expected_status, expected_visualization_server_image,
- expected_frontend_server_image):
- """
- Nearly end-to-end test of how Controller serves .sync as a POST, taking variables as arguments
-
- Only does spot checks on children to see if key properties are correct
- """
- server, environ = sync_server_from_arguments
-
- # server.server_address = (url, port_as_integer)
- url = f"http://{server.server_address[0]}:{str(server.server_address[1])}"
- print("url: ", url)
- print("data")
- print(json.dumps(data, indent=2))
- x = requests.post(url, data=json.dumps(data))
- results = json.loads(x.text)
-
- # Test overall status of whether children are ok
- assert results['status'] == expected_status
-
- # Poke a few children to test things that can vary by environment variable
- assert results['children'][1]["spec"]["template"]["spec"]["containers"][0][
- "image"] == expected_visualization_server_image
- assert results['children'][5]["spec"]["template"]["spec"]["containers"][0][
- "image"] == expected_frontend_server_image
-
-
-@pytest.mark.parametrize(
- "sync_server, data, expected_status, expected_children",
- [
- (ENV_IMAGES_WITH_TAGS, DATA_MISSING_PIPELINE_ENABLED, {}, []),
- ],
- indirect=["sync_server"]
-)
-def test_sync_server_without_pipeline_enabled(sync_server, data, expected_status,
- expected_children):
- """
- Nearly end-to-end test of how Controller serves .sync as a POST
-
- Tests case where metadata.labels.pipelines.kubeflow.org/enabled does not
- exist and thus server returns an empty reply
- """
- server, environ = sync_server
-
- # server.server_address = (url, port_as_integer)
- url = f"http://{server.server_address[0]}:{str(server.server_address[1])}"
- x = requests.post(url, data=json.dumps(data))
- results = json.loads(x.text)
-
- # Test overall status of whether children are ok
- assert results['status'] == expected_status
- assert results['children'] == expected_children
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/pipelines-ui/cluster-role-binding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/pipelines-ui/cluster-role-binding.yaml
deleted file mode 100644
index 3539ff1..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/pipelines-ui/cluster-role-binding.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: ml-pipeline-ui
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: ml-pipeline-ui
-subjects:
-- kind: ServiceAccount
- name: ml-pipeline-ui
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/pipelines-ui/cluster-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/pipelines-ui/cluster-role.yaml
deleted file mode 100644
index a53f02c..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/pipelines-ui/cluster-role.yaml
+++ /dev/null
@@ -1,57 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- name: ml-pipeline-ui
-rules:
-- apiGroups:
- - ""
- resources:
- - pods
- - pods/log
- verbs:
- - get
-- apiGroups:
- - ""
- resources:
- - events
- verbs:
- - list
-- apiGroups:
- - ""
- resources:
- - secrets
- verbs:
- - get
- - list
-- apiGroups:
- - "kubeflow.org"
- resources:
- - viewers
- verbs:
- - create
- - get
- - list
- - watch
- - delete
-- apiGroups:
- - "argoproj.io"
- resources:
- - workflows
- verbs:
- - get
- - list
-- apiGroups:
- - tekton.dev
- resources:
- - pipelineruns
- - taskruns
- - conditions
- - tasks
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/pipelines-ui/configmap-patch.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/pipelines-ui/configmap-patch.yaml
deleted file mode 100644
index 11f1f55..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/pipelines-ui/configmap-patch.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: ml-pipeline-ui-configmap
-data:
- # Temporary workarounds:
- # 1. Using default-editor because default-viewer isn't bound to workload identity
- viewer-pod-template.json: |-
- {
- "spec": {
- "serviceAccountName": "default-editor"
- }
- }
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/pipelines-ui/deployment-patch.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/pipelines-ui/deployment-patch.yaml
deleted file mode 100644
index 0403cc3..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/pipelines-ui/deployment-patch.yaml
+++ /dev/null
@@ -1,34 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: ml-pipeline-ui
-spec:
- template:
- spec:
- volumes:
- - name: config-volume
- configMap:
- name: ml-pipeline-ui-configmap
- containers:
- - name: ml-pipeline-ui
- env:
- - name: VIEWER_TENSORBOARD_POD_TEMPLATE_SPEC_PATH
- value: /etc/config/viewer-pod-template.json
- - name: DEPLOYMENT
- value: KUBEFLOW
- - name: ARTIFACTS_SERVICE_PROXY_NAME
- value: ml-pipeline-ui-artifact
- - name: ARTIFACTS_SERVICE_PROXY_PORT
- value: '80'
- - name: ARTIFACTS_SERVICE_PROXY_ENABLED
- value: 'true'
- - name: ENABLE_AUTHZ
- value: 'true'
- - name: KUBEFLOW_USERID_HEADER
- value: kubeflow-userid
- - name: KUBEFLOW_USERID_PREFIX
- value: ""
- volumeMounts:
- - name: config-volume
- mountPath: /etc/config
- readOnly: true
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/pipelines-ui/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/pipelines-ui/kustomization.yaml
deleted file mode 100644
index c84d97c..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/pipelines-ui/kustomization.yaml
+++ /dev/null
@@ -1,8 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-namespace: kubeflow
-commonLabels:
- app: ml-pipeline-ui
-resources:
-- cluster-role.yaml
-- cluster-role-binding.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/scheduled-workflow/cluster-role-binding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/scheduled-workflow/cluster-role-binding.yaml
deleted file mode 100644
index 0495d00..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/scheduled-workflow/cluster-role-binding.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: ml-pipeline-scheduledworkflow-binding
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: ml-pipeline-scheduledworkflow-role
-subjects:
-- kind: ServiceAccount
- name: ml-pipeline-scheduledworkflow
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/scheduled-workflow/cluster-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/scheduled-workflow/cluster-role.yaml
deleted file mode 100644
index 6f55878..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/scheduled-workflow/cluster-role.yaml
+++ /dev/null
@@ -1,66 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- name: ml-pipeline-scheduledworkflow-role
-rules:
-- apiGroups:
- - argoproj.io
- resources:
- - workflows
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
-- apiGroups:
- - kubeflow.org
- resources:
- - scheduledworkflows
- - scheduledworkflows/finalizers
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
-- apiGroups:
- - ''
- resources:
- - events
- verbs:
- - create
- - patch
-- apiGroups:
- - tekton.dev
- resources:
- - pipelineruns
- - taskruns
- - conditions
- - runs
- - customruns
- - tasks
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
-- apiGroups:
- - custom.tekton.dev
- resources:
- - pipelineloops
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/scheduled-workflow/deployment-patch.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/scheduled-workflow/deployment-patch.yaml
deleted file mode 100644
index ea35690..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/scheduled-workflow/deployment-patch.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: ml-pipeline-scheduledworkflow
-spec:
- template:
- spec:
- containers:
- - name: ml-pipeline-scheduledworkflow
- env:
- - name: NAMESPACE
- value: '' # Empty namespace let viewer controller watch all namespaces
- valueFrom: null # HACK: https://github.com/kubernetes-sigs/kustomize/issues/2606
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/scheduled-workflow/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/scheduled-workflow/kustomization.yaml
deleted file mode 100644
index ad2710f..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/scheduled-workflow/kustomization.yaml
+++ /dev/null
@@ -1,6 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-namespace: kubeflow
-resources:
-- cluster-role.yaml
-- cluster-role-binding.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/view-edit-cluster-roles.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/view-edit-cluster-roles.yaml
deleted file mode 100644
index 626e005..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/view-edit-cluster-roles.yaml
+++ /dev/null
@@ -1,132 +0,0 @@
-# NOTE: IMPORTANT
-# We need to separate out actual rules from aggregation rules due to
-# https://github.com/kubernetes/kubernetes/issues/65171
-# TL;DR: We can't have both aggregation and rules in a [Cluster]Role. When that
-# is the case, the rules get ignored.
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- labels:
- rbac.authorization.kubeflow.org/aggregate-to-kubeflow-edit: "true"
- name: kubeflow-pipelines-edit
-aggregationRule:
- clusterRoleSelectors:
- - matchLabels:
- rbac.authorization.kubeflow.org/aggregate-to-kubeflow-pipelines-edit: "true"
-rules: []
-
----
-
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- labels:
- rbac.authorization.kubeflow.org/aggregate-to-kubeflow-pipelines-edit: "true"
- rbac.authorization.kubeflow.org/aggregate-to-kubeflow-view: "true"
- name: kubeflow-pipelines-view
-aggregationRule:
- clusterRoleSelectors:
- - matchLabels:
- rbac.authorization.kubeflow.org/aggregate-to-kubeflow-pipelines-view: "true"
-rules: []
-
----
-
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- labels:
- rbac.authorization.kubeflow.org/aggregate-to-kubeflow-pipelines-edit: "true"
- name: aggregate-to-kubeflow-pipelines-edit
-rules:
-- apiGroups:
- - pipelines.kubeflow.org
- resources:
- - pipelines
- - pipelines/versions
- verbs:
- - create
- - delete
- - update
-- apiGroups:
- - pipelines.kubeflow.org
- resources:
- - experiments
- verbs:
- - archive
- - create
- - delete
- - unarchive
-- apiGroups:
- - pipelines.kubeflow.org
- resources:
- - runs
- verbs:
- - archive
- - create
- - delete
- - retry
- - terminate
- - unarchive
-- apiGroups:
- - pipelines.kubeflow.org
- resources:
- - jobs
- verbs:
- - create
- - delete
- - disable
- - enable
-- apiGroups:
- - kubeflow.org
- verbs:
- - '*'
- resources:
- - scheduledworkflows
-- apiGroups:
- - argoproj.io
- verbs:
- - '*'
- resources:
- - cronworkflows
- - cronworkflows/finalizers
- - workflows
- - workflows/finalizers
- - workfloweventbindings
- - workflowtemplates
-
----
-
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- labels:
- rbac.authorization.kubeflow.org/aggregate-to-kubeflow-pipelines-view: "true"
- name: aggregate-to-kubeflow-pipelines-view
-rules:
-- apiGroups:
- - pipelines.kubeflow.org
- resources:
- - pipelines
- - pipelines/versions
- - experiments
- - runs
- - jobs
- verbs:
- - get
- - list
-- apiGroups:
- - kubeflow.org
- resources:
- - viewers
- verbs:
- - create
- - get
- - delete
-- apiGroups:
- - pipelines.kubeflow.org
- resources:
- - visualizations
- verbs:
- - create
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/viewer-controller/cluster-role-binding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/viewer-controller/cluster-role-binding.yaml
deleted file mode 100644
index 5e325bf..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/viewer-controller/cluster-role-binding.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: ml-pipeline-viewer-crd-binding
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: ml-pipeline-viewer-controller-role
-subjects:
-- kind: ServiceAccount
- name: ml-pipeline-viewer-crd-service-account
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/viewer-controller/cluster-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/viewer-controller/cluster-role.yaml
deleted file mode 100644
index 9e9b68a..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/viewer-controller/cluster-role.yaml
+++ /dev/null
@@ -1,31 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- name: ml-pipeline-viewer-controller-role
-rules:
-- apiGroups:
- - '*'
- resources:
- - deployments
- - services
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
-- apiGroups:
- - kubeflow.org
- resources:
- - viewers
- - viewers/finalizers
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/viewer-controller/deployment-patch.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/viewer-controller/deployment-patch.yaml
deleted file mode 100644
index 73e5d10..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/viewer-controller/deployment-patch.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: ml-pipeline-viewer-crd
-spec:
- template:
- spec:
- containers:
- - name: ml-pipeline-viewer-crd
- env:
- - name: NAMESPACE
- value: '' # Empty namespace let viewer controller watch all namespaces
- valueFrom: null
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/viewer-controller/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/viewer-controller/kustomization.yaml
deleted file mode 100644
index b1f6546..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/viewer-controller/kustomization.yaml
+++ /dev/null
@@ -1,5 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
-- cluster-role.yaml
-- cluster-role-binding.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/base/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/base/kustomization.yaml
deleted file mode 100644
index 4a8ea63..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/base/kustomization.yaml
+++ /dev/null
@@ -1,12 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
- - metadata-grpc-configmap.yaml
- - metadata-grpc-deployment.yaml
- - metadata-grpc-service.yaml
- - metadata-envoy-deployment.yaml
- - metadata-envoy-service.yaml
- - metadata-grpc-sa.yaml
-images:
- - name: gcr.io/ml-pipeline/metadata-envoy
- newTag: 1.8.4
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/base/metadata-envoy-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/base/metadata-envoy-deployment.yaml
deleted file mode 100644
index e087d80..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/base/metadata-envoy-deployment.yaml
+++ /dev/null
@@ -1,26 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: metadata-envoy-deployment
- labels:
- component: metadata-envoy
-spec:
- replicas: 1
- selector:
- matchLabels:
- component: metadata-envoy
- template:
- metadata:
- labels:
- component: metadata-envoy
- annotations:
- sidecar.istio.io/inject: "false"
- spec:
- containers:
- - name: container
- image: gcr.io/ml-pipeline/metadata-envoy:dummy
- ports:
- - name: md-envoy
- containerPort: 9090
- - name: envoy-admin
- containerPort: 9901
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/base/metadata-envoy-service.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/base/metadata-envoy-service.yaml
deleted file mode 100644
index 42166c8..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/base/metadata-envoy-service.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-kind: Service
-apiVersion: v1
-metadata:
- labels:
- app: metadata-envoy
- name: metadata-envoy-service
-spec:
- selector:
- component: metadata-envoy
- type: ClusterIP
- ports:
- - port: 9090
- protocol: TCP
- name: md-envoy
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/base/metadata-grpc-configmap.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/base/metadata-grpc-configmap.yaml
deleted file mode 100644
index 08cc7e6..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/base/metadata-grpc-configmap.yaml
+++ /dev/null
@@ -1,9 +0,0 @@
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: metadata-grpc-configmap
- labels:
- component: metadata-grpc-server
-data:
- METADATA_GRPC_SERVICE_HOST: "metadata-grpc-service"
- METADATA_GRPC_SERVICE_PORT: "8080"
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/base/metadata-grpc-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/base/metadata-grpc-deployment.yaml
deleted file mode 100644
index 92dbd3d..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/base/metadata-grpc-deployment.yaml
+++ /dev/null
@@ -1,76 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: metadata-grpc-deployment
- labels:
- component: metadata-grpc-server
-spec:
- replicas: 1
- selector:
- matchLabels:
- component: metadata-grpc-server
- template:
- metadata:
- labels:
- component: metadata-grpc-server
- spec:
- containers:
- - name: container
- # ! Sync to the same MLMD version:
- # * backend/metadata_writer/requirements.in and requirements.txt
- # * @kubeflow/frontend/src/mlmd/generated
- # * .cloudbuild.yaml and .release.cloudbuild.yaml
- # * manifests/kustomize/base/metadata/base/metadata-grpc-deployment.yaml
- # * test/tag_for_hosted.sh
- image: gcr.io/tfx-oss-public/ml_metadata_store_server:1.5.0
- env:
- - name: DBCONFIG_USER
- valueFrom:
- secretKeyRef:
- name: mysql-secret
- key: username
- - name: DBCONFIG_PASSWORD
- valueFrom:
- secretKeyRef:
- name: mysql-secret
- key: password
- - name: MYSQL_DATABASE
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: mlmdDb
- - name: MYSQL_HOST
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: dbHost
- - name: MYSQL_PORT
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: dbPort
- command: ["/bin/metadata_store_server"]
- args: ["--grpc_port=8080",
- "--mysql_config_database=$(MYSQL_DATABASE)",
- "--mysql_config_host=$(MYSQL_HOST)",
- "--mysql_config_port=$(MYSQL_PORT)",
- "--mysql_config_user=$(DBCONFIG_USER)",
- "--mysql_config_password=$(DBCONFIG_PASSWORD)",
- "--enable_database_upgrade=true"
- ]
- ports:
- - name: grpc-api
- containerPort: 8080
- livenessProbe:
- tcpSocket:
- port: grpc-api
- initialDelaySeconds: 3
- periodSeconds: 5
- timeoutSeconds: 2
- readinessProbe:
- tcpSocket:
- port: grpc-api
- initialDelaySeconds: 3
- periodSeconds: 5
- timeoutSeconds: 2
- serviceAccountName: metadata-grpc-server
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/base/metadata-grpc-sa.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/base/metadata-grpc-sa.yaml
deleted file mode 100644
index c8e8d1f..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/base/metadata-grpc-sa.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: metadata-grpc-server
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/base/metadata-grpc-service.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/base/metadata-grpc-service.yaml
deleted file mode 100644
index 7e7b73b..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/base/metadata-grpc-service.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-kind: Service
-apiVersion: v1
-metadata:
- labels:
- app: metadata
- name: metadata-grpc-service
-spec:
- selector:
- component: metadata-grpc-server
- type: ClusterIP
- ports:
- - port: 8080
- protocol: TCP
- name: grpc-api
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/options/istio/istio-authorization-policy.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/options/istio/istio-authorization-policy.yaml
deleted file mode 100644
index 8f41789..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/options/istio/istio-authorization-policy.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: security.istio.io/v1beta1
-kind: AuthorizationPolicy
-metadata:
- name: metadata-grpc-service
-spec:
- action: ALLOW
- selector:
- matchLabels:
- component: metadata-grpc-server
- rules:
- - {}
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/options/istio/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/options/istio/kustomization.yaml
deleted file mode 100644
index 029a693..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/options/istio/kustomization.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
-- istio-authorization-policy.yaml
-- destination-rule.yaml
-- virtual-service.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/options/istio/virtual-service.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/options/istio/virtual-service.yaml
deleted file mode 100644
index 01e000b..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/options/istio/virtual-service.yaml
+++ /dev/null
@@ -1,21 +0,0 @@
-apiVersion: networking.istio.io/v1alpha3
-kind: VirtualService
-metadata:
- name: metadata-grpc
- namespace: kubeflow
-spec:
- gateways:
- - kubeflow-gateway
- hosts:
- - '*'
- http:
- - match:
- - uri:
- prefix: /ml_metadata
- rewrite:
- uri: /ml_metadata
- route:
- - destination:
- host: metadata-envoy-service.kubeflow.svc.cluster.local
- port:
- number: 9090
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/overlays/db/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/overlays/db/kustomization.yaml
deleted file mode 100644
index 2918b17..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/overlays/db/kustomization.yaml
+++ /dev/null
@@ -1,45 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-namespace: kubeflow
-
-resources:
-- ../../base
-- metadata-db-pvc.yaml
-- metadata-db-deployment.yaml
-- metadata-db-service.yaml
-
-
-configMapGenerator:
-- envs:
- - params.env
- name: metadata-db-parameters
-secretGenerator:
-- envs:
- - secrets.env
- name: metadata-db-secrets
-generatorOptions:
- disableNameSuffixHash: true
-
-
-images:
-- name: mysql
- newName: mysql
- newTag: 8.0.3
-
-replacements:
-- source:
- name: metadata-db
- kind: Service
- version: v1
- targets:
- - select:
- kind: Deployment
- name: metadata-grpc-deployment
- fieldPaths:
- - spec.template.spec.containers.[name=container].args.2
- options:
- delimiter: =
- index: 1
-
-patches:
-- path: patches/metadata-grpc-deployment.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/overlays/db/metadata-db-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/overlays/db/metadata-db-deployment.yaml
deleted file mode 100644
index 360512d..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/overlays/db/metadata-db-deployment.yaml
+++ /dev/null
@@ -1,51 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: metadata-db
- labels:
- component: db
-spec:
- selector:
- matchLabels:
- component: db
- replicas: 1
- strategy:
- type: Recreate
- template:
- metadata:
- name: db
- labels:
- component: db
- annotations:
- sidecar.istio.io/inject: "false"
- spec:
- containers:
- - name: db-container
- image: mysql:8.0.3
- args:
- - --datadir
- - /var/lib/mysql/datadir
- envFrom:
- - configMapRef:
- name: metadata-db-parameters
- - secretRef:
- name: metadata-db-secrets
- ports:
- - name: dbapi
- containerPort: 3306
- readinessProbe:
- exec:
- command:
- - "/bin/bash"
- - "-c"
- - "mysql -D $$MYSQL_DATABASE -p$$MYSQL_ROOT_PASSWORD -e 'SELECT 1'"
- initialDelaySeconds: 5
- periodSeconds: 2
- timeoutSeconds: 1
- volumeMounts:
- - name: metadata-mysql
- mountPath: /var/lib/mysql
- volumes:
- - name: metadata-mysql
- persistentVolumeClaim:
- claimName: metadata-mysql
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/overlays/db/metadata-db-pvc.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/overlays/db/metadata-db-pvc.yaml
deleted file mode 100644
index b1c083d..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/overlays/db/metadata-db-pvc.yaml
+++ /dev/null
@@ -1,10 +0,0 @@
-apiVersion: v1
-kind: PersistentVolumeClaim
-metadata:
- name: metadata-mysql
-spec:
- accessModes:
- - ReadWriteOnce
- resources:
- requests:
- storage: 10Gi
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/overlays/db/metadata-db-service.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/overlays/db/metadata-db-service.yaml
deleted file mode 100644
index b7a6401..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/overlays/db/metadata-db-service.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: v1
-kind: Service
-metadata:
- name: metadata-db
- labels:
- component: db
-spec:
- type: ClusterIP
- ports:
- - port: 3306
- protocol: TCP
- name: dbapi
- selector:
- component: db
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/overlays/db/params.env b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/overlays/db/params.env
deleted file mode 100644
index 5ab2adb..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/overlays/db/params.env
+++ /dev/null
@@ -1,3 +0,0 @@
-MYSQL_DATABASE=metadb
-MYSQL_PORT=3306
-MYSQL_ALLOW_EMPTY_PASSWORD=true
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/overlays/db/patches/metadata-grpc-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/overlays/db/patches/metadata-grpc-deployment.yaml
deleted file mode 100644
index 03023a3..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/overlays/db/patches/metadata-grpc-deployment.yaml
+++ /dev/null
@@ -1,25 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: metadata-grpc-deployment
-spec:
- template:
- spec:
- containers:
- - name: container
- # Remove existing environment variables
- env:
- - $patch: replace
- envFrom:
- - configMapRef:
- name: metadata-db-parameters
- - secretRef:
- name: metadata-db-secrets
- - configMapRef:
- name: metadata-grpc-configmap
- args: ["--grpc_port=$(METADATA_GRPC_SERVICE_PORT)",
- "--mysql_config_host=$(MLMD_DB_HOST)",
- "--mysql_config_database=$(MYSQL_DATABASE)",
- "--mysql_config_port=$(MYSQL_PORT)",
- "--mysql_config_user=$(MYSQL_USER_NAME)",
- "--mysql_config_password=$(MYSQL_ROOT_PASSWORD)"]
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/overlays/db/secrets.env b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/overlays/db/secrets.env
deleted file mode 100644
index 44ac2ee..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/overlays/db/secrets.env
+++ /dev/null
@@ -1,2 +0,0 @@
-MYSQL_USER_NAME=root
-MYSQL_ROOT_PASSWORD=test
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/apiserver-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/apiserver-deployment.yaml
deleted file mode 100644
index 09ae34a..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/apiserver-deployment.yaml
+++ /dev/null
@@ -1,132 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: ml-pipeline
-spec:
- template:
- spec:
- containers:
- - name: ml-pipeline-api-server
- env:
- - name: POD_NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- - name: OBJECTSTORECONFIG_HOST
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: objectStoreHost
- - name: OBJECTSTORECONFIG_PORT
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: objectStorePort
- - name: OBJECTSTORECONFIG_SECURE
- value: "false"
- - name: CLIENTQPS
- value: "50"
- - name: CLIENTBURST
- value: "50"
- - name: OBJECTSTORECONFIG_BUCKETNAME
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: bucketName
- - name: DBCONFIG_USER
- valueFrom:
- secretKeyRef:
- name: mysql-secret
- key: username
- - name: DBCONFIG_PASSWORD
- valueFrom:
- secretKeyRef:
- name: mysql-secret
- key: password
- - name: DBCONFIG_DBNAME
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: pipelineDb
- - name: DBCONFIG_HOST
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: dbHost
- - name: DBCONFIG_PORT
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: dbPort
- - name: OBJECTSTORECONFIG_ACCESSKEY
- valueFrom:
- secretKeyRef:
- name: mlpipeline-minio-artifact
- key: accesskey
- - name: OBJECTSTORECONFIG_SECRETACCESSKEY
- valueFrom:
- secretKeyRef:
- name: mlpipeline-minio-artifact
- key: secretkey
- - name: PIPELINE_RUNTIME
- value: tekton
- - name: ARTIFACT_BUCKET
- valueFrom:
- configMapKeyRef:
- name: kfp-tekton-config
- key: artifact_bucket
- - name: ARTIFACT_ENDPOINT
- valueFrom:
- configMapKeyRef:
- name: kfp-tekton-config
- key: artifact_endpoint
- - name: ARTIFACT_ENDPOINT_SCHEME
- valueFrom:
- configMapKeyRef:
- name: kfp-tekton-config
- key: artifact_endpoint_scheme
- - name: ARCHIVE_LOGS
- valueFrom:
- configMapKeyRef:
- name: kfp-tekton-config
- key: archive_logs
- - name: TRACK_ARTIFACTS
- valueFrom:
- configMapKeyRef:
- name: kfp-tekton-config
- key: track_artifacts
- - name: STRIP_EOF
- valueFrom:
- configMapKeyRef:
- name: kfp-tekton-config
- key: strip_eof
- - name: ARTIFACT_SCRIPT
- valueFrom:
- configMapKeyRef:
- name: kfp-tekton-config
- key: artifact_script
- - name: ARTIFACT_IMAGE
- valueFrom:
- configMapKeyRef:
- name: kfp-tekton-config
- key: artifact_image
- - name: MOVERESULTS_IMAGE
- valueFrom:
- configMapKeyRef:
- name: kfp-tekton-config
- key: moveresults_image
- - name: INJECT_DEFAULT_SCRIPT
- valueFrom:
- configMapKeyRef:
- name: kfp-tekton-config
- key: inject_default_script
- - name: APPLY_TEKTON_CUSTOM_RESOURCE
- valueFrom:
- configMapKeyRef:
- name: kfp-tekton-config
- key: apply_tekton_custom_resource
- - name: TERMINATE_STATUS
- valueFrom:
- configMapKeyRef:
- name: kfp-tekton-config
- key: terminate_status
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/cluster-scoped/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/cluster-scoped/kustomization.yaml
deleted file mode 100644
index 9a92c2c..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/cluster-scoped/kustomization.yaml
+++ /dev/null
@@ -1,5 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
-- scheduled-workflow-crd.yaml
-- viewer-crd.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/cluster-scoped/scheduled-workflow-crd.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/cluster-scoped/scheduled-workflow-crd.yaml
deleted file mode 100644
index 6df6557..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/cluster-scoped/scheduled-workflow-crd.yaml
+++ /dev/null
@@ -1,39 +0,0 @@
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- name: scheduledworkflows.kubeflow.org
-spec:
- group: kubeflow.org
- names:
- kind: ScheduledWorkflow
- listKind: ScheduledWorkflowList
- plural: scheduledworkflows
- singular: scheduledworkflow
- shortNames:
- - swf
- scope: Namespaced
- versions:
- - name: v1beta1
- schema:
- openAPIV3Schema:
- properties:
- apiVersion:
- type: string
- kind:
- type: string
- metadata:
- type: object
- spec:
- type: object
- x-kubernetes-preserve-unknown-fields: true
- x-kubernetes-map-type: atomic
- status:
- type: object
- x-kubernetes-preserve-unknown-fields: true
- x-kubernetes-map-type: atomic
- required:
- - spec
- - status
- type: object
- served: true
- storage: true
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/cluster-scoped/viewer-crd.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/cluster-scoped/viewer-crd.yaml
deleted file mode 100644
index 083a9e6..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/cluster-scoped/viewer-crd.yaml
+++ /dev/null
@@ -1,34 +0,0 @@
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- name: viewers.kubeflow.org
-spec:
- group: kubeflow.org
- names:
- kind: Viewer
- listKind: ViewerList
- plural: viewers
- singular: viewer
- shortNames:
- - vi
- scope: Namespaced
- versions:
- - name: v1beta1
- schema:
- openAPIV3Schema:
- properties:
- apiVersion:
- type: string
- kind:
- type: string
- metadata:
- type: object
- spec:
- type: object
- x-kubernetes-preserve-unknown-fields: true
- x-kubernetes-map-type: atomic
- required:
- - spec
- type: object
- served: true
- storage: true
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/container-builder-sa.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/container-builder-sa.yaml
deleted file mode 100644
index aa65bd9..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/container-builder-sa.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: kubeflow-pipelines-container-builder
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/kfp-launcher-configmap.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/kfp-launcher-configmap.yaml
deleted file mode 100644
index 13f6051..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/kfp-launcher-configmap.yaml
+++ /dev/null
@@ -1,6 +0,0 @@
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: kfp-launcher
-data:
- defaultPipelineRoot: $(kfp-default-pipeline-root)
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/kfp-pipeline-config.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/kfp-pipeline-config.yaml
deleted file mode 100644
index cd3c231..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/kfp-pipeline-config.yaml
+++ /dev/null
@@ -1,35 +0,0 @@
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: kfp-tekton-config
-data:
- artifact_bucket: "mlpipeline"
- artifact_endpoint: "minio-service.kubeflow:9000"
- artifact_endpoint_scheme: "http://"
- artifact_image: "minio/mc:RELEASE.2020-11-25T23-04-07Z"
- archive_logs: "true"
- moveresults_image: "busybox:1.34.1"
- track_artifacts: "true"
- strip_eof: "true"
- inject_default_script: "true"
- apply_tekton_custom_resource: "true"
- terminate_status: "Cancelled"
- artifact_script: |-
- push_artifact() {
- if [ -f "$2" ] || [ -d "$2" ]; then
- tar -cvzf $1.tgz -C $(dirname $2) $(basename $2)
- mc cp $1.tgz storage/$ARTIFACT_BUCKET/artifacts/$PIPELINERUN/$PIPELINETASK/$1.tgz
- else
- echo "$2 file does not exist. Skip artifact tracking for $1"
- fi
- }
- push_log() {
- cat /var/log/containers/$PODNAME*$NAMESPACE*step-main*.log > step-main.log
- push_artifact main-log step-main.log
- }
- strip_eof() {
- if [ -f "$2" ]; then
- awk 'NF' $2 | head -c -1 > $1_temp_save && cp $1_temp_save $2
- fi
- }
- mc config host add storage ${ARTIFACT_ENDPOINT_SCHEME}${ARTIFACT_ENDPOINT} $AWS_ACCESS_KEY_ID $AWS_SECRET_ACCESS_KEY
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/kustomization.yaml
deleted file mode 100644
index 3bd8a52..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/kustomization.yaml
+++ /dev/null
@@ -1,61 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
- - metadata-writer
- - cluster-scoped
- - ml-pipeline-apiserver-deployment.yaml
- - ml-pipeline-apiserver-role.yaml
- - ml-pipeline-apiserver-rolebinding.yaml
- - ml-pipeline-apiserver-sa.yaml
- - ml-pipeline-apiserver-service.yaml
- - ml-pipeline-persistenceagent-deployment.yaml
- - ml-pipeline-persistenceagent-role.yaml
- - ml-pipeline-persistenceagent-rolebinding.yaml
- - ml-pipeline-persistenceagent-sa.yaml
- - ml-pipeline-scheduledworkflow-deployment.yaml
- - ml-pipeline-scheduledworkflow-role.yaml
- - ml-pipeline-scheduledworkflow-rolebinding.yaml
- - ml-pipeline-scheduledworkflow-sa.yaml
- - ml-pipeline-ui-deployment.yaml
- - ml-pipeline-ui-configmap.yaml
- - ml-pipeline-ui-role.yaml
- - ml-pipeline-ui-rolebinding.yaml
- - ml-pipeline-ui-sa.yaml
- - ml-pipeline-ui-service.yaml
- - ml-pipeline-viewer-crd-role.yaml
- - ml-pipeline-viewer-crd-rolebinding.yaml
- - ml-pipeline-viewer-crd-deployment.yaml
- - ml-pipeline-viewer-crd-sa.yaml
- - ml-pipeline-visualization-deployment.yaml
- - ml-pipeline-visualization-sa.yaml
- - ml-pipeline-visualization-service.yaml
- - pipeline-runner-role.yaml
- - pipeline-runner-rolebinding.yaml
- - pipeline-runner-sa.yaml
- - container-builder-sa.yaml
- - viewer-sa.yaml
- - kfp-pipeline-config.yaml
- - kfp-launcher-configmap.yaml
-patches:
- - path: apiserver-deployment.yaml
- - path: metadata-writer-deployment.yaml
-images:
- - name: gcr.io/ml-pipeline/api-server
- newName: quay.io/aipipeline/api-server
- newTag: 1.7.1
- - name: gcr.io/ml-pipeline/persistenceagent
- newName: quay.io/aipipeline/persistenceagent
- newTag: 1.7.1
- - name: gcr.io/ml-pipeline/scheduledworkflow
- newName: quay.io/aipipeline/scheduledworkflow
- newTag: 1.7.1
- - name: gcr.io/ml-pipeline/frontend
- newName: quay.io/aipipeline/frontend
- newTag: 1.7.1
- - name: gcr.io/ml-pipeline/viewer-crd-controller
- newTag: 1.8.4
- - name: gcr.io/ml-pipeline/visualization-server
- newTag: 1.8.4
- - name: gcr.io/ml-pipeline/metadata-writer
- newName: quay.io/aipipeline/metadata-writer
- newTag: 1.7.1
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/metadata-writer-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/metadata-writer-deployment.yaml
deleted file mode 100644
index 4ebd45a..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/metadata-writer-deployment.yaml
+++ /dev/null
@@ -1,31 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: metadata-writer
- labels:
- app: metadata-writer
-spec:
- replicas: 1
- selector:
- matchLabels:
- app: metadata-writer
- template:
- metadata:
- labels:
- app: metadata-writer
- spec:
- containers:
- - name: main
- env:
- - name: NAMESPACE_TO_WATCH
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- - name: PIPELINE_RUNTIME
- value: tekton
- - name: ARCHIVE_LOGS
- valueFrom:
- configMapKeyRef:
- name: kfp-tekton-config
- key: archive_logs
- serviceAccountName: kubeflow-pipelines-metadata-writer
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/metadata-writer/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/metadata-writer/kustomization.yaml
deleted file mode 100644
index aaf34a5..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/metadata-writer/kustomization.yaml
+++ /dev/null
@@ -1,10 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
- - metadata-writer-deployment.yaml
- - metadata-writer-role.yaml
- - metadata-writer-rolebinding.yaml
- - metadata-writer-sa.yaml
-images:
- - name: gcr.io/ml-pipeline/metadata-writer
- newTag: 1.8.4
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/metadata-writer/metadata-writer-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/metadata-writer/metadata-writer-deployment.yaml
deleted file mode 100644
index 7cf254c..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/metadata-writer/metadata-writer-deployment.yaml
+++ /dev/null
@@ -1,27 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: metadata-writer
- labels:
- app: metadata-writer
-spec:
- replicas: 1
- selector:
- matchLabels:
- app: metadata-writer
- template:
- metadata:
- labels:
- app: metadata-writer
- spec:
- containers:
- - name: main
- image: gcr.io/ml-pipeline/metadata-writer:dummy
- env:
- - name: NAMESPACE_TO_WATCH
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- - name: PIPELINE_RUNTIME
- value: tekton
- serviceAccountName: kubeflow-pipelines-metadata-writer
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/metadata-writer/metadata-writer-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/metadata-writer/metadata-writer-role.yaml
deleted file mode 100644
index 924e8f8..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/metadata-writer/metadata-writer-role.yaml
+++ /dev/null
@@ -1,45 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata:
- labels:
- app: kubeflow-pipelines-metadata-writer-role
- name: kubeflow-pipelines-metadata-writer-role
-rules:
-- apiGroups:
- - ""
- resources:
- - pods
- verbs:
- - get
- - list
- - watch
- - update
- - patch
-- apiGroups:
- - ""
- resources:
- - configmaps
- verbs:
- - get
-- apiGroups:
- - argoproj.io
- resources:
- - workflows
- verbs:
- - get
- - list
- - watch
- - update
- - patch
-- apiGroups:
- - tekton.dev
- resources:
- - pipelineruns
- - taskruns
- - conditions
- verbs:
- - get
- - list
- - watch
- - update
- - patch
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/metadata-writer/metadata-writer-rolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/metadata-writer/metadata-writer-rolebinding.yaml
deleted file mode 100644
index 5a6c1fe..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/metadata-writer/metadata-writer-rolebinding.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: kubeflow-pipelines-metadata-writer-binding
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: kubeflow-pipelines-metadata-writer-role
-subjects:
-- kind: ServiceAccount
- name: kubeflow-pipelines-metadata-writer
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/metadata-writer/metadata-writer-sa.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/metadata-writer/metadata-writer-sa.yaml
deleted file mode 100644
index 7781294..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/metadata-writer/metadata-writer-sa.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: kubeflow-pipelines-metadata-writer
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-apiserver-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-apiserver-deployment.yaml
deleted file mode 100644
index 021d7bd..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-apiserver-deployment.yaml
+++ /dev/null
@@ -1,114 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- labels:
- app: ml-pipeline
- name: ml-pipeline
-spec:
- selector:
- matchLabels:
- app: ml-pipeline
- template:
- metadata:
- labels:
- app: ml-pipeline
- annotations:
- cluster-autoscaler.kubernetes.io/safe-to-evict: "true"
- spec:
- containers:
- - env:
- - name: AUTO_UPDATE_PIPELINE_DEFAULT_VERSION
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: autoUpdatePipelineDefaultVersion
- - name: POD_NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- - name: OBJECTSTORECONFIG_SECURE
- value: "false"
- - name: OBJECTSTORECONFIG_BUCKETNAME
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: bucketName
- - name: DBCONFIG_USER
- valueFrom:
- secretKeyRef:
- name: mysql-secret
- key: username
- - name: DBCONFIG_PASSWORD
- valueFrom:
- secretKeyRef:
- name: mysql-secret
- key: password
- - name: DBCONFIG_DBNAME
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: pipelineDb
- - name: DBCONFIG_HOST
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: dbHost
- - name: DBCONFIG_PORT
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: dbPort
- - name: DBCONFIG_CONMAXLIFETIME
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: ConMaxLifeTime
- - name: OBJECTSTORECONFIG_ACCESSKEY
- valueFrom:
- secretKeyRef:
- name: mlpipeline-minio-artifact
- key: accesskey
- - name: OBJECTSTORECONFIG_SECRETACCESSKEY
- valueFrom:
- secretKeyRef:
- name: mlpipeline-minio-artifact
- key: secretkey
- - name: PIPELINE_RUNTIME
- value: tekton
- image: gcr.io/ml-pipeline/api-server:dummy
- imagePullPolicy: Always
- name: ml-pipeline-api-server
- ports:
- - name: http
- containerPort: 8888
- - name: grpc
- containerPort: 8887
- readinessProbe:
- exec:
- command:
- - wget
- - -q # quiet
- - -S # show server response
- - -O
- - "-" # Redirect output to stdout
- - http://localhost:8888/apis/v1/healthz
- initialDelaySeconds: 3
- periodSeconds: 5
- timeoutSeconds: 2
- livenessProbe:
- exec:
- command:
- - wget
- - -q # quiet
- - -S # show server response
- - -O
- - "-" # Redirect output to stdout
- - http://localhost:8888/apis/v1/healthz
- initialDelaySeconds: 3
- periodSeconds: 5
- timeoutSeconds: 2
- resources:
- requests:
- cpu: 250m
- memory: 500Mi
- serviceAccountName: ml-pipeline
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-apiserver-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-apiserver-role.yaml
deleted file mode 100644
index 7c97dfc..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-apiserver-role.yaml
+++ /dev/null
@@ -1,80 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata:
- labels:
- app: ml-pipeline
- name: ml-pipeline
-rules:
-- apiGroups:
- - ""
- resources:
- - pods
- - pods/log
- verbs:
- - get
- - list
- - delete
-- apiGroups:
- - argoproj.io
- resources:
- - workflows
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
-- apiGroups:
- - tekton.dev
- resources:
- - pipelineruns
- - taskruns
- - conditions
- - runs
- - customruns
- - tasks
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
-- apiGroups:
- - kubeflow.org
- resources:
- - scheduledworkflows
- verbs:
- - create
- - get
- - list
- - update
- - patch
- - delete
-- apiGroups:
- - authorization.k8s.io
- resources:
- - subjectaccessreviews
- verbs:
- - create
-- apiGroups:
- - authentication.k8s.io
- resources:
- - tokenreviews
- verbs:
- - create
-- apiGroups:
- - custom.tekton.dev
- resources:
- - pipelineloops
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-apiserver-rolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-apiserver-rolebinding.yaml
deleted file mode 100644
index c4ef4f5..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-apiserver-rolebinding.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- labels:
- app: ml-pipeline
- name: ml-pipeline
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: ml-pipeline
-subjects:
-- kind: ServiceAccount
- name: ml-pipeline
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-apiserver-sa.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-apiserver-sa.yaml
deleted file mode 100644
index 95ff314..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-apiserver-sa.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: ml-pipeline
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-apiserver-service.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-apiserver-service.yaml
deleted file mode 100644
index 51c4f85..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-apiserver-service.yaml
+++ /dev/null
@@ -1,20 +0,0 @@
-apiVersion: v1
-kind: Service
-metadata:
- name: ml-pipeline
- annotations:
- prometheus.io/port: "8888"
- prometheus.io/scheme: http
- prometheus.io/scrape: "true"
-spec:
- ports:
- - name: http
- port: 8888
- protocol: TCP
- targetPort: 8888
- - name: grpc
- port: 8887
- protocol: TCP
- targetPort: 8887
- selector:
- app: ml-pipeline
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-persistenceagent-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-persistenceagent-deployment.yaml
deleted file mode 100644
index 6b71258..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-persistenceagent-deployment.yaml
+++ /dev/null
@@ -1,90 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- labels:
- app: ml-pipeline-persistenceagent
- name: ml-pipeline-persistenceagent
-spec:
- selector:
- matchLabels:
- app: ml-pipeline-persistenceagent
- template:
- metadata:
- labels:
- app: ml-pipeline-persistenceagent
- annotations:
- cluster-autoscaler.kubernetes.io/safe-to-evict: "true"
- spec:
- containers:
- - env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- - name: TTL_SECONDS_AFTER_WORKFLOW_FINISH
- value: "86400"
- - name: NUM_WORKERS
- value: "2"
- - name: CHILDREFERENCES_KINDS
- value: "PipelineLoop"
- - name: LEGACY_STATUS_UPDATE
- value: "false"
- - name: POD_NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- - name: OBJECTSTORECONFIG_SECURE
- value: "false"
- - name: OBJECTSTORECONFIG_BUCKETNAME
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: bucketName
- - name: DBCONFIG_USER
- valueFrom:
- secretKeyRef:
- name: mysql-secret
- key: username
- - name: DBCONFIG_PASSWORD
- valueFrom:
- secretKeyRef:
- name: mysql-secret
- key: password
- - name: DBCONFIG_DBNAME
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: pipelineDb
- - name: DBCONFIG_HOST
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: dbHost
- - name: DBCONFIG_PORT
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: dbPort
- - name: DBCONFIG_CONMAXLIFETIME
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: ConMaxLifeTime
- - name: OBJECTSTORECONFIG_ACCESSKEY
- valueFrom:
- secretKeyRef:
- name: mlpipeline-minio-artifact
- key: accesskey
- - name: OBJECTSTORECONFIG_SECRETACCESSKEY
- valueFrom:
- secretKeyRef:
- name: mlpipeline-minio-artifact
- key: secretkey
- image: gcr.io/ml-pipeline/persistenceagent:dummy
- imagePullPolicy: IfNotPresent
- name: ml-pipeline-persistenceagent
- resources:
- requests:
- cpu: 120m
- memory: 500Mi
- serviceAccountName: ml-pipeline-persistenceagent
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-persistenceagent-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-persistenceagent-role.yaml
deleted file mode 100644
index 9d1321a..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-persistenceagent-role.yaml
+++ /dev/null
@@ -1,37 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata:
- name: ml-pipeline-persistenceagent-role
-rules:
-- apiGroups:
- - argoproj.io
- resources:
- - workflows
- verbs:
- - get
- - list
- - watch
-- apiGroups:
- - kubeflow.org
- resources:
- - scheduledworkflows
- verbs:
- - get
- - list
- - watch
-- apiGroups:
- - tekton.dev
- resources:
- - pipelineruns
- - taskruns
- - conditions
- - runs
- - customruns
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-persistenceagent-rolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-persistenceagent-rolebinding.yaml
deleted file mode 100644
index a690f20..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-persistenceagent-rolebinding.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: ml-pipeline-persistenceagent-binding
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: ml-pipeline-persistenceagent-role
-subjects:
-- kind: ServiceAccount
- name: ml-pipeline-persistenceagent
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-persistenceagent-sa.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-persistenceagent-sa.yaml
deleted file mode 100644
index 4725287..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-persistenceagent-sa.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: ml-pipeline-persistenceagent
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-scheduledworkflow-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-scheduledworkflow-deployment.yaml
deleted file mode 100644
index ac20e57..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-scheduledworkflow-deployment.yaml
+++ /dev/null
@@ -1,32 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- labels:
- app: ml-pipeline-scheduledworkflow
- name: ml-pipeline-scheduledworkflow
-spec:
- selector:
- matchLabels:
- app: ml-pipeline-scheduledworkflow
- template:
- metadata:
- labels:
- app: ml-pipeline-scheduledworkflow
- annotations:
- cluster-autoscaler.kubernetes.io/safe-to-evict: "true"
- spec:
- containers:
- - image: gcr.io/ml-pipeline/scheduledworkflow:dummy
- imagePullPolicy: IfNotPresent
- name: ml-pipeline-scheduledworkflow
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- - name: CRON_SCHEDULE_TIMEZONE
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: cronScheduleTimezone
- serviceAccountName: ml-pipeline-scheduledworkflow
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-scheduledworkflow-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-scheduledworkflow-role.yaml
deleted file mode 100644
index 6c28f6e..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-scheduledworkflow-role.yaml
+++ /dev/null
@@ -1,68 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata:
- labels:
- app: ml-pipeline-scheduledworkflow-role
- name: ml-pipeline-scheduledworkflow-role
-rules:
-- apiGroups:
- - argoproj.io
- resources:
- - workflows
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
-- apiGroups:
- - kubeflow.org
- resources:
- - scheduledworkflows
- - scheduledworkflows/finalizers
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
-- apiGroups:
- - ''
- resources:
- - events
- verbs:
- - create
- - patch
-- apiGroups:
- - tekton.dev
- resources:
- - pipelineruns
- - taskruns
- - conditions
- - runs
- - customruns
- - tasks
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
-- apiGroups:
- - custom.tekton.dev
- resources:
- - pipelineloops
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-scheduledworkflow-rolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-scheduledworkflow-rolebinding.yaml
deleted file mode 100644
index e9429f3..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-scheduledworkflow-rolebinding.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: ml-pipeline-scheduledworkflow-binding
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: ml-pipeline-scheduledworkflow-role
-subjects:
-- kind: ServiceAccount
- name: ml-pipeline-scheduledworkflow
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-scheduledworkflow-sa.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-scheduledworkflow-sa.yaml
deleted file mode 100644
index 285c137..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-scheduledworkflow-sa.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: ml-pipeline-scheduledworkflow
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-ui-configmap.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-ui-configmap.yaml
deleted file mode 100644
index 85b6422..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-ui-configmap.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: ml-pipeline-ui-configmap
-data:
- viewer-pod-template.json: |-
- {
- "spec": {
- "serviceAccountName": "kubeflow-pipelines-viewer"
- }
- }
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-ui-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-ui-deployment.yaml
deleted file mode 100644
index 82fe725..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-ui-deployment.yaml
+++ /dev/null
@@ -1,81 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- labels:
- app: ml-pipeline-ui
- name: ml-pipeline-ui
-spec:
- selector:
- matchLabels:
- app: ml-pipeline-ui
- template:
- metadata:
- labels:
- app: ml-pipeline-ui
- annotations:
- cluster-autoscaler.kubernetes.io/safe-to-evict: "true"
- spec:
- volumes:
- - name: config-volume
- configMap:
- name: ml-pipeline-ui-configmap
- containers:
- - image: gcr.io/ml-pipeline/frontend:dummy
- imagePullPolicy: IfNotPresent
- name: ml-pipeline-ui
- ports:
- - containerPort: 3000
- volumeMounts:
- - name: config-volume
- mountPath: /etc/config
- readOnly: true
- env:
- - name: VIEWER_TENSORBOARD_POD_TEMPLATE_SPEC_PATH
- value: /etc/config/viewer-pod-template.json
- - name: MINIO_NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- - name: MINIO_ACCESS_KEY
- valueFrom:
- secretKeyRef:
- name: mlpipeline-minio-artifact
- key: accesskey
- - name: MINIO_SECRET_KEY
- valueFrom:
- secretKeyRef:
- name: mlpipeline-minio-artifact
- key: secretkey
- - name: ALLOW_CUSTOM_VISUALIZATIONS
- value: "true"
- - name: ARGO_ARCHIVE_LOGS
- value: "true"
- readinessProbe:
- exec:
- command:
- - wget
- - -q # quiet
- - -S # show server response
- - -O
- - "-" # Redirect output to stdout
- - http://localhost:3000/apis/v1/healthz
- initialDelaySeconds: 3
- periodSeconds: 5
- timeoutSeconds: 2
- livenessProbe:
- exec:
- command:
- - wget
- - -q # quiet
- - -S # show server response
- - -O
- - "-" # Redirect output to stdout
- - http://localhost:3000/apis/v1/healthz
- initialDelaySeconds: 3
- periodSeconds: 5
- timeoutSeconds: 2
- resources:
- requests:
- cpu: 10m
- memory: 70Mi
- serviceAccountName: ml-pipeline-ui
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-ui-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-ui-role.yaml
deleted file mode 100644
index 5ff1eeb..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-ui-role.yaml
+++ /dev/null
@@ -1,59 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata:
- labels:
- app: ml-pipeline-ui
- name: ml-pipeline-ui
-rules:
-- apiGroups:
- - ""
- resources:
- - pods
- - pods/log
- verbs:
- - get
-- apiGroups:
- - ""
- resources:
- - events
- verbs:
- - list
-- apiGroups:
- - ""
- resources:
- - secrets
- verbs:
- - get
- - list
-- apiGroups:
- - "kubeflow.org"
- resources:
- - viewers
- verbs:
- - create
- - get
- - list
- - watch
- - delete
-- apiGroups:
- - "argoproj.io"
- resources:
- - workflows
- verbs:
- - get
- - list
-- apiGroups:
- - tekton.dev
- resources:
- - pipelineruns
- - taskruns
- - conditions
- - tasks
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-ui-rolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-ui-rolebinding.yaml
deleted file mode 100644
index e829835..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-ui-rolebinding.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- labels:
- app: ml-pipeline-ui
- name: ml-pipeline-ui
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: ml-pipeline-ui
-subjects:
-- kind: ServiceAccount
- name: ml-pipeline-ui
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-ui-sa.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-ui-sa.yaml
deleted file mode 100644
index 06bc445..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-ui-sa.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: ml-pipeline-ui
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-ui-service.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-ui-service.yaml
deleted file mode 100644
index 093ad8c..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-ui-service.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: ml-pipeline-ui
- name: ml-pipeline-ui
-spec:
- ports:
- - name: http
- protocol: TCP
- port: 80
- targetPort: 3000
- selector:
- app: ml-pipeline-ui
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-viewer-crd-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-viewer-crd-deployment.yaml
deleted file mode 100644
index 617801d..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-viewer-crd-deployment.yaml
+++ /dev/null
@@ -1,29 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- labels:
- app: ml-pipeline-viewer-crd
- name: ml-pipeline-viewer-crd
-spec:
- selector:
- matchLabels:
- app: ml-pipeline-viewer-crd
- template:
- metadata:
- labels:
- app: ml-pipeline-viewer-crd
- annotations:
- cluster-autoscaler.kubernetes.io/safe-to-evict: "true"
- spec:
- containers:
- - image: gcr.io/ml-pipeline/viewer-crd-controller:dummy
- imagePullPolicy: Always
- name: ml-pipeline-viewer-crd
- env:
- - name: MAX_NUM_VIEWERS
- value: "50"
- - name: MINIO_NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- serviceAccountName: ml-pipeline-viewer-crd-service-account
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-viewer-crd-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-viewer-crd-role.yaml
deleted file mode 100644
index fa3e321..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-viewer-crd-role.yaml
+++ /dev/null
@@ -1,31 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata:
- name: ml-pipeline-viewer-controller-role
-rules:
-- apiGroups:
- - '*'
- resources:
- - deployments
- - services
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
-- apiGroups:
- - kubeflow.org
- resources:
- - viewers
- - viewers/finalizers
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-viewer-crd-rolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-viewer-crd-rolebinding.yaml
deleted file mode 100644
index bd1f77a..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-viewer-crd-rolebinding.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: ml-pipeline-viewer-crd-binding
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: ml-pipeline-viewer-controller-role
-subjects:
-- kind: ServiceAccount
- name: ml-pipeline-viewer-crd-service-account
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-viewer-crd-sa.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-viewer-crd-sa.yaml
deleted file mode 100644
index 5dd08f8..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-viewer-crd-sa.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: ml-pipeline-viewer-crd-service-account
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-visualization-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-visualization-deployment.yaml
deleted file mode 100644
index b6d1e11..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-visualization-deployment.yaml
+++ /dev/null
@@ -1,53 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- labels:
- app: ml-pipeline-visualizationserver
- name: ml-pipeline-visualizationserver
-spec:
- selector:
- matchLabels:
- app: ml-pipeline-visualizationserver
- template:
- metadata:
- labels:
- app: ml-pipeline-visualizationserver
- annotations:
- cluster-autoscaler.kubernetes.io/safe-to-evict: "true"
- spec:
- containers:
- - image: gcr.io/ml-pipeline/visualization-server:dummy
- imagePullPolicy: IfNotPresent
- name: ml-pipeline-visualizationserver
- ports:
- - name: http
- containerPort: 8888
- readinessProbe:
- exec:
- command:
- - wget
- - -q # quiet
- - -S # show server response
- - -O
- - "-" # Redirect output to stdout
- - http://localhost:8888/
- initialDelaySeconds: 3
- periodSeconds: 5
- timeoutSeconds: 2
- livenessProbe:
- exec:
- command:
- - wget
- - -q # quiet
- - -S # show server response
- - -O
- - "-" # Redirect output to stdout
- - http://localhost:8888/
- initialDelaySeconds: 3
- periodSeconds: 5
- timeoutSeconds: 2
- resources:
- requests:
- cpu: 30m
- memory: 500Mi
- serviceAccountName: ml-pipeline-visualizationserver
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-visualization-sa.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-visualization-sa.yaml
deleted file mode 100644
index e1bbc6a..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-visualization-sa.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: ml-pipeline-visualizationserver
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-visualization-service.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-visualization-service.yaml
deleted file mode 100644
index 83c7dd6..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/ml-pipeline-visualization-service.yaml
+++ /dev/null
@@ -1,12 +0,0 @@
-apiVersion: v1
-kind: Service
-metadata:
- name: ml-pipeline-visualizationserver
-spec:
- ports:
- - name: http
- port: 8888
- protocol: TCP
- targetPort: 8888
- selector:
- app: ml-pipeline-visualizationserver
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/pipeline-runner-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/pipeline-runner-role.yaml
deleted file mode 100644
index 9178ee4..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/pipeline-runner-role.yaml
+++ /dev/null
@@ -1,96 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata:
- name: pipeline-runner
-rules:
-- apiGroups:
- - ""
- resources:
- - secrets
- verbs:
- - get
-- apiGroups:
- - ""
- resources:
- - configmaps
- verbs:
- - get
- - watch
- - list
-- apiGroups:
- - ""
- resources:
- - persistentvolumes
- - persistentvolumeclaims
- verbs:
- - '*'
-- apiGroups:
- - snapshot.storage.k8s.io
- resources:
- - volumesnapshots
- verbs:
- - create
- - delete
- - get
-- apiGroups:
- - argoproj.io
- resources:
- - workflows
- verbs:
- - get
- - list
- - watch
- - update
- - patch
-- apiGroups:
- - ""
- resources:
- - pods
- - pods/exec
- - pods/log
- - services
- verbs:
- - '*'
-- apiGroups:
- - ""
- - apps
- - extensions
- resources:
- - deployments
- - replicasets
- verbs:
- - '*'
-- apiGroups:
- - kubeflow.org
- resources:
- - '*'
- verbs:
- - '*'
-- apiGroups:
- - batch
- resources:
- - jobs
- verbs:
- - '*'
-- apiGroups:
- - machinelearning.seldon.io
- resources:
- - seldondeployments
- verbs:
- - '*'
-- apiGroups:
- - tekton.dev
- resources:
- - pipelineruns
- - taskruns
- - conditions
- - runs
- - tasks
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/pipeline-runner-rolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/pipeline-runner-rolebinding.yaml
deleted file mode 100644
index 9adae61..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/pipeline-runner-rolebinding.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: pipeline-runner-binding
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: pipeline-runner
-subjects:
-- kind: ServiceAccount
- name: pipeline-runner
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/pipeline-runner-sa.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/pipeline-runner-sa.yaml
deleted file mode 100644
index 8cb2c66..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/pipeline-runner-sa.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: pipeline-runner
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/viewer-sa.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/viewer-sa.yaml
deleted file mode 100644
index 932133c..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/pipeline/viewer-sa.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: kubeflow-pipelines-viewer
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/cluster-scoped-resources/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/cluster-scoped-resources/kustomization.yaml
deleted file mode 100644
index 936b2d7..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/cluster-scoped-resources/kustomization.yaml
+++ /dev/null
@@ -1,26 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-namespace: kubeflow
-
-resources:
-- namespace.yaml
-bases:
-- ../third-party/application/cluster-scoped
-- ../base/pipeline/cluster-scoped
-- ../base/cache-deployer/cluster-scoped
-vars:
-# NOTE: var name must be unique globally to allow composition of multiple kustomize
-# packages. Therefore, we added prefix `kfp-cluster-scoped-` to distinguish it from
-# others.
-- name: kfp-cluster-scoped-namespace
- objref:
- # cache deployer sa's metadata.namespace will be first transformed by namespace field in kustomization.yaml
- # so that we only need to change kustomization.yaml's namespace field for namespace customization.
- kind: ServiceAccount
- name: kubeflow-pipelines-cache-deployer-sa
- apiVersion: v1
- fieldref:
- fieldpath: metadata.namespace
-configurations:
-- params.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/cluster-scoped-resources/namespace.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/cluster-scoped-resources/namespace.yaml
deleted file mode 100644
index 3c65856..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/cluster-scoped-resources/namespace.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: Namespace
-metadata:
- name: '$(kfp-cluster-scoped-namespace)'
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/cluster-scoped-resources/params.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/cluster-scoped-resources/params.yaml
deleted file mode 100644
index cc253fe..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/cluster-scoped-resources/params.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-# Allow Kustomize var to replace following fields.
-varReference:
-- path: metadata/name
- kind: Namespace
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/aws/README.md b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/aws/README.md
deleted file mode 100644
index fc0a643..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/aws/README.md
+++ /dev/null
@@ -1,56 +0,0 @@
-# Sample installation
-
-1. Create an EKS cluster
-
-Run this command to create EKS cluster
-```
-eksctl create cluster \
---name AWS-KFP \
---version 1.17 \
---region us-west-2 \
---nodegroup-name linux-nodes \
---node-type m5.xlarge \
---nodes 2 \
---nodes-min 1 \
---nodes-max 4 \
---managed
-```
-
-2. Prepare S3
-
-Create S3 bucket. [Console](https://console.aws.amazon.com/s3/home).
-
-Run this command to create S3 bucket by changing `` to your prefer s3 bucket name.
-
-```
-export S3_BUCKET=
-export AWS_REGION=us-west-2
-aws s3 mb s3://$S3_BUCKET --region $AWS_REGION
-```
-
-3. Prepare RDS
-
-Follow this [doc](https://www.kubeflow.org/docs/aws/rds/#deploy-amazon-rds-mysql-in-your-environment) to set up AWS RDS instance.
-
-4. Customize your values
-- Edit [params.env](params.env), [secret.env](secret.env) and [minio-artifact-secret-patch.env](minio-artifact-secret-patch.env)
-
-5. Install
-
-```
-kubectl apply -k ../../cluster-scoped-resources
-# If upper one action got failed, e.x. you used wrong value, try delete, fix and apply again
-# kubectl delete -k ../../cluster-scoped-resources
-
-kubectl wait crd/applications.app.k8s.io --for condition=established --timeout=60s
-
-kubectl apply -k ./
-# If upper one action got failed, e.x. you used wrong value, try delete, fix and apply again
-# kubectl delete -k ./
-
-kubectl wait applications/pipeline -n kubeflow --for condition=Ready --timeout=1800s
-
-kubectl port-forward -n kubeflow svc/ml-pipeline-ui 8080:80
-```
-
-Now you can access via `localhost:8080`
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/aws/aws-configuration-patch.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/aws/aws-configuration-patch.yaml
deleted file mode 100644
index d008e3b..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/aws/aws-configuration-patch.yaml
+++ /dev/null
@@ -1,61 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: ml-pipeline-ui
-spec:
- template:
- metadata:
- labels:
- app: ml-pipeline-ui
- spec:
- volumes:
- - name: config-volume
- configMap:
- name: ml-pipeline-ui-configmap
- containers:
- - name: ml-pipeline-ui
- env:
- - name: AWS_ACCESS_KEY_ID
- valueFrom:
- secretKeyRef:
- name: mlpipeline-minio-artifact
- key: accesskey
- - name: AWS_SECRET_ACCESS_KEY
- valueFrom:
- secretKeyRef:
- name: mlpipeline-minio-artifact
- key: secretkey
-
----
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: ml-pipeline
-spec:
- template:
- metadata:
- labels:
- app: ml-pipeline
- spec:
- containers:
- - env:
- - name: OBJECTSTORECONFIG_SECURE
- value: "true"
- - name: OBJECTSTORECONFIG_BUCKETNAME
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: bucketName
- - name: OBJECTSTORECONFIG_HOST
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: minioServiceHost
- - name: OBJECTSTORECONFIG_REGION
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: minioServiceRegion
- - name: OBJECTSTORECONFIG_PORT
- value: ""
- name: ml-pipeline-api-server
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/aws/config b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/aws/config
deleted file mode 100644
index ebf0553..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/aws/config
+++ /dev/null
@@ -1,20 +0,0 @@
-{
-artifactRepository:
-{
- s3: {
- bucket: $(kfp-artifact-bucket-name),
- keyPrefix: artifacts,
- endpoint: s3.amazonaws.com,
- insecure: true,
- accessKeySecret: {
- name: mlpipeline-minio-artifact,
- key: accesskey
- },
- secretKeySecret: {
- name: mlpipeline-minio-artifact,
- key: secretkey
- }
- },
- archiveLogs: true
-}
-}
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/aws/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/aws/kustomization.yaml
deleted file mode 100644
index 50bb9d3..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/aws/kustomization.yaml
+++ /dev/null
@@ -1,33 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-namespace: kubeflow
-bases:
-- ../../env/platform-agnostic
-configMapGenerator:
-- name: pipeline-install-config
- env: params.env
- behavior: merge
-- name: workflow-controller-configmap
- behavior: replace
- files:
- - config
-- name: ml-pipeline-ui-configmap
- behavior: replace
- files:
- - viewer-pod-template.json
-secretGenerator:
-- name: mysql-secret
- env: secret.env
- behavior: merge
-- name: mlpipeline-minio-artifact
- env: minio-artifact-secret-patch.env
- behavior: merge
-generatorOptions:
- disableNameSuffixHash: true
-patchesStrategicMerge:
-- aws-configuration-patch.yaml
-# Identifier for application manager to apply ownerReference.
-# The ownerReference ensures the resources get garbage collected
-# when application is deleted.
-commonLabels:
- application-crd-id: kubeflow-pipelines
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/aws/minio-artifact-secret-patch.env b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/aws/minio-artifact-secret-patch.env
deleted file mode 100644
index 3f11b74..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/aws/minio-artifact-secret-patch.env
+++ /dev/null
@@ -1,2 +0,0 @@
-accesskey=YOUR_AWS_ACCESS_ID
-secretkey=YOUR_AWS_SECRET_KEY
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/aws/params.env b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/aws/params.env
deleted file mode 100644
index 30e9665..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/aws/params.env
+++ /dev/null
@@ -1,5 +0,0 @@
-dbHost=YOUR_RDS_ENDPOINT
-
-bucketName=YOUR_S3_BUCKET_NAME
-minioServiceHost=s3.amazonaws.com
-minioServiceRegion=YOUR_AWS_REGION
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/aws/secret.env b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/aws/secret.env
deleted file mode 100644
index cdd7b0a..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/aws/secret.env
+++ /dev/null
@@ -1,2 +0,0 @@
-username=YOUR_RDS_USERNAME
-password=YOUR_RDS_PASSWORD
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/aws/viewer-pod-template.json b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/aws/viewer-pod-template.json
deleted file mode 100644
index 5cce566..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/aws/viewer-pod-template.json
+++ /dev/null
@@ -1,37 +0,0 @@
-{
- "spec": {
- "containers": [
- {
- "env": [
- {
- "name": "AWS_ACCESS_KEY_ID",
- "valueFrom": {
- "secretKeyRef": {
- "name": "mlpipeline-minio-artifact",
- "key": "accesskey"
- }
- }
- },
- {
- "name": "AWS_SECRET_ACCESS_KEY",
- "valueFrom": {
- "secretKeyRef": {
- "name": "mlpipeline-minio-artifact",
- "key": "secretkey"
- }
- }
- },
- {
- "name": "AWS_REGION",
- "valueFrom": {
- "configMapKeyRef": {
- "name": "pipeline-install-config",
- "key": "minioServiceRegion"
- }
- }
- }
- ]
- }
- ]
- }
-}
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/azure/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/azure/kustomization.yaml
deleted file mode 100644
index 39b9c7d..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/azure/kustomization.yaml
+++ /dev/null
@@ -1,25 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-namespace: kubeflow
-
-bases:
-- ../../base/installs/generic
-- ../../base/metadata/base
-- ../../third-party/argo/installs/namespace
-- minio-azure-gateway
-
-configMapGenerator:
-- name: pipeline-install-config
- env: params.env
- behavior: merge
-
-secretGenerator:
-- name: mysql-secret
- env: mysql-secret.env
- behavior: merge
-
-# Identifier for application manager to apply ownerReference.
-# The ownerReference ensures the resources get garbage collected
-# when application is deleted.
-commonLabels:
- application-crd-id: kubeflow-pipelines
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/azure/minio-azure-gateway/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/azure/minio-azure-gateway/kustomization.yaml
deleted file mode 100644
index db350a6..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/azure/minio-azure-gateway/kustomization.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
-- minio-azure-gateway-deployment.yaml
-- minio-azure-gateway-service.yaml
-
-secretGenerator:
-- name: mlpipeline-minio-artifact
- env: minio-artifact-secret.env
-generatorOptions:
- # mlpipeline-minio-artifact needs to be referred by exact name
- disableNameSuffixHash: true
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/azure/minio-azure-gateway/minio-artifact-secret.env b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/azure/minio-azure-gateway/minio-artifact-secret.env
deleted file mode 100644
index 7d9d25d..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/azure/minio-azure-gateway/minio-artifact-secret.env
+++ /dev/null
@@ -1,2 +0,0 @@
-accesskey=[STORAGEACCOUNTNAME]
-secretkey=[STORAGEACCOUNTKEY]
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/azure/minio-azure-gateway/minio-azure-gateway-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/azure/minio-azure-gateway/minio-azure-gateway-deployment.yaml
deleted file mode 100644
index 56979c4..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/azure/minio-azure-gateway/minio-azure-gateway-deployment.yaml
+++ /dev/null
@@ -1,40 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: minio
- labels:
- app: minio
-spec:
- selector:
- matchLabels:
- app: minio
- strategy:
- type: Recreate
- template:
- metadata:
- labels:
- app: minio
- spec:
- containers:
- - name: minio
- image: gcr.io/ml-pipeline/minio:RELEASE.2019-08-14T20-37-41Z-license-compliance
- args:
- - gateway
- - azure
- env:
- - name: MINIO_ACCESS_KEY
- valueFrom:
- secretKeyRef:
- name: mlpipeline-minio-artifact
- key: accesskey
- - name: MINIO_SECRET_KEY
- valueFrom:
- secretKeyRef:
- name: mlpipeline-minio-artifact
- key: secretkey
- ports:
- - containerPort: 9000
- resources:
- requests:
- cpu: 20m
- memory: 25Mi
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/azure/minio-azure-gateway/minio-azure-gateway-service.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/azure/minio-azure-gateway/minio-azure-gateway-service.yaml
deleted file mode 100644
index 7dd1817..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/azure/minio-azure-gateway/minio-azure-gateway-service.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: v1
-kind: Service
-metadata:
- name: minio-service
-spec:
- ports:
- - port: 9000
- targetPort: 9000
- protocol: TCP
- selector:
- app: minio
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/azure/mysql-secret.env b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/azure/mysql-secret.env
deleted file mode 100644
index 93f6075..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/azure/mysql-secret.env
+++ /dev/null
@@ -1,2 +0,0 @@
-username=[SQLUSER]@[SQLSERVERNAME]
-password=[SQLPASS]
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/azure/params.env b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/azure/params.env
deleted file mode 100644
index 44ed717..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/azure/params.env
+++ /dev/null
@@ -1 +0,0 @@
-dbHost=[SQLSERVERNAME].mysql.database.azure.com
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/azure/readme.md b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/azure/readme.md
deleted file mode 100644
index 5487d6a..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/azure/readme.md
+++ /dev/null
@@ -1,15 +0,0 @@
-# KFP customizations for Azure
-
-This template provides a starting point to configure KFP to use an Azure hosted MySQL database, as well as an Azure Blob backed MinIO service.
-
-## MySQL
-
-1. [Create an Azure Database for MySQL](https://docs.microsoft.com/azure/mysql/quickstart-create-mysql-server-database-using-azure-portal). Ensure that it will allow connections from the Kubernetes cluster.
-
-2. Substitute the server name into [params.env](./params.env), and the username and password into [mysql-secret.env](./mysql-secret.env)
-
-## MinIO Gateway for Azure Blobstore
-
-1. [Create an Azure Storage account](https://docs.microsoft.com/azure/storage/common/storage-account-create). Ensure that it will allow connections from the Kubernetes cluster.
-
-2. Substitute the storage name and access key into [minio-artifact-secret.env](./minio-azure-gateway/minio-artifact-secret.env).
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/cert-manager/base/cache-cert-issuer.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/cert-manager/base/cache-cert-issuer.yaml
deleted file mode 100644
index 1c0ba59..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/cert-manager/base/cache-cert-issuer.yaml
+++ /dev/null
@@ -1,6 +0,0 @@
-apiVersion: cert-manager.io/v1
-kind: Issuer
-metadata:
- name: kfp-cache-selfsigned-issuer
-spec:
- selfSigned: {}
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/cert-manager/base/cache-cert.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/cert-manager/base/cache-cert.yaml
deleted file mode 100644
index 7d11367..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/cert-manager/base/cache-cert.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
-apiVersion: cert-manager.io/v1
-kind: Certificate
-metadata:
- name: kfp-cache-cert
-spec:
- commonName: kfp-cache-cert
- isCA: true
- dnsNames:
- - cache-server
- - cache-server.$(kfp-namespace)
- - cache-server.$(kfp-namespace).svc
- issuerRef:
- kind: Issuer
- name: kfp-cache-selfsigned-issuer
- secretName: webhook-server-tls
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/cert-manager/base/cache-webhook-config.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/cert-manager/base/cache-webhook-config.yaml
deleted file mode 100644
index 0f6b43c..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/cert-manager/base/cache-webhook-config.yaml
+++ /dev/null
@@ -1,25 +0,0 @@
-apiVersion: admissionregistration.k8s.io/v1
-kind: MutatingWebhookConfiguration
-metadata:
- name: cache-webhook-kubeflow
- annotations:
- cert-manager.io/inject-ca-from: $(kfp-namespace)/kfp-cache-cert
-webhooks:
- - name: cache-server.$(kfp-namespace).svc
- clientConfig:
- service:
- name: cache-server
- namespace: $(kfp-namespace)
- path: "/mutate"
- failurePolicy: Ignore
- rules:
- - operations: [ "CREATE" ]
- apiGroups: [""]
- apiVersions: ["v1"]
- resources: ["pods"]
- sideEffects: None
- timeoutSeconds: 5
- objectSelector:
- matchLabels:
- pipelines.kubeflow.org/cache_enabled: "true"
- admissionReviewVersions: ["v1beta1"]
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/cert-manager/base/params.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/cert-manager/base/params.yaml
deleted file mode 100644
index 8ee2b1b..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/cert-manager/base/params.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-varReference:
- - path: spec/commonName
- kind: Certificate
- - path: spec/dnsNames
- kind: Certificate
- - path: spec/issuerRef/name
- kind: Certificate
- - path: metadata/annotations
- kind: MutatingWebhookConfiguration
- - path: webhooks/clientConfig/service/namespace
- kind: MutatingWebhookConfiguration
- - path: webhooks/name
- kind: MutatingWebhookConfiguration
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/cert-manager/cluster-scoped-resources/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/cert-manager/cluster-scoped-resources/kustomization.yaml
deleted file mode 100644
index c5df9e9..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/cert-manager/cluster-scoped-resources/kustomization.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-bases:
-- ../../../third-party/application/cluster-scoped
-- ../../../third-party/argo/installs/namespace/cluster-scoped
-- ../../../base/pipeline/cluster-scoped
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/cert-manager/dev/delete-cache-deployer.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/cert-manager/dev/delete-cache-deployer.yaml
deleted file mode 100644
index 3a71d7d..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/cert-manager/dev/delete-cache-deployer.yaml
+++ /dev/null
@@ -1,18 +0,0 @@
-# Delete cache deployer related resources as we use the cert-manager instead
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: cache-deployer-deployment
-$patch: delete
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata:
- name: kubeflow-pipelines-cache-deployer-role
-$patch: delete
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: kubeflow-pipelines-cache-deployer-rolebinding
-$patch: delete
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/cert-manager/dev/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/cert-manager/dev/kustomization.yaml
deleted file mode 100644
index 90738fe..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/cert-manager/dev/kustomization.yaml
+++ /dev/null
@@ -1,47 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-bases:
- - ../../dev
- - ../base
-namespace: kubeflow
-
-# Delete the cache deployer as we use the cert-manager instead
-patchesStrategicMerge:
- - ./delete-cache-deployer.yaml
-
-resources:
-- namespace.yaml
-
-vars:
-# NOTE: var name must be unique globally to allow composition of multiple kustomize
-# packages. Therefore, we added prefix `kfp-dev-` to distinguish it from
-# others.
-- name: kfp-dev-namespace
- objref:
- # ml-pipeline sa's metadata.namespace will be first transformed by namespace field in kustomization.yaml
- # so that we only need to change kustomization.yaml's namespace field for namespace customization.
- kind: ServiceAccount
- name: ml-pipeline
- apiVersion: v1
- fieldref:
- fieldpath: metadata.namespace
-configurations:
-- params.yaml
-
-# Pass proper arguments to cache-server to use cert-manager certificate
-patches:
-- patch: |-
- - op: add
- path: /spec/template/spec/containers/0/args/-
- value: "--tls_cert_filename=tls.crt"
- target:
- kind: Deployment
- name: cache-server
-- patch: |-
- - op: add
- path: /spec/template/spec/containers/0/args/-
- value: "--tls_key_filename=tls.key"
- target:
- kind: Deployment
- name: cache-server
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/cert-manager/dev/namespace.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/cert-manager/dev/namespace.yaml
deleted file mode 100644
index 51de7ac..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/cert-manager/dev/namespace.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: Namespace
-metadata:
- name: '$(kfp-dev-namespace)'
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/cert-manager/dev/params.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/cert-manager/dev/params.yaml
deleted file mode 100644
index cc253fe..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/cert-manager/dev/params.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-# Allow Kustomize var to replace following fields.
-varReference:
-- path: metadata/name
- kind: Namespace
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/cert-manager/platform-agnostic-multi-user/delete-cache-deployer.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/cert-manager/platform-agnostic-multi-user/delete-cache-deployer.yaml
deleted file mode 100644
index 6e05a9e..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/cert-manager/platform-agnostic-multi-user/delete-cache-deployer.yaml
+++ /dev/null
@@ -1,36 +0,0 @@
-# Delete cache deployer as we use the cert-manager instead
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- name: kubeflow-pipelines-cache-deployer-clusterrole
-$patch: delete
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: kubeflow-pipelines-cache-deployer-clusterrolebinding
-$patch: delete
----
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: kubeflow-pipelines-cache-deployer-sa
-$patch: delete
----
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: cache-deployer-deployment
-$patch: delete
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata:
- name: kubeflow-pipelines-cache-deployer-role
-$patch: delete
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: kubeflow-pipelines-cache-deployer-rolebinding
-$patch: delete
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/cert-manager/platform-agnostic-multi-user/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/cert-manager/platform-agnostic-multi-user/kustomization.yaml
deleted file mode 100644
index 00a522d..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/cert-manager/platform-agnostic-multi-user/kustomization.yaml
+++ /dev/null
@@ -1,28 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-bases:
- - ../../platform-agnostic-multi-user
- - ../base
-namespace: kubeflow
-
-# Delete the cache deployer as we use the cert-manager instead
-patchesStrategicMerge:
- - ./delete-cache-deployer.yaml
-
-# Pass proper arguments to cache-server to use cert-manager certificate
-patches:
-- patch: |-
- - op: add
- path: /spec/template/spec/containers/0/args/-
- value: "--tls_cert_filename=tls.crt"
- target:
- kind: Deployment
- name: cache-server
-- patch: |-
- - op: add
- path: /spec/template/spec/containers/0/args/-
- value: "--tls_key_filename=tls.key"
- target:
- kind: Deployment
- name: cache-server
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/dev/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/dev/kustomization.yaml
deleted file mode 100644
index 23030ce..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/dev/kustomization.yaml
+++ /dev/null
@@ -1,19 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-bases:
- # Application controller is used to provide Google Cloud Console integration.
- - ../../third-party/application
- - ../../base/application
- - ../platform-agnostic
- - ../gcp/inverse-proxy
-
-# Identifier for application manager to apply ownerReference.
-# The ownerReference ensures the resources get garbage collected
-# when application is deleted.
-commonLabels:
- application-crd-id: kubeflow-pipelines
-
-# !!! If you want to customize the namespace,
-# please refer sample/cluster-scoped-resources to update the namespace for cluster-scoped-resources
-namespace: kubeflow
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/cloudsql-proxy/cloudsql-proxy-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/cloudsql-proxy/cloudsql-proxy-deployment.yaml
deleted file mode 100644
index 42d3bf1..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/cloudsql-proxy/cloudsql-proxy-deployment.yaml
+++ /dev/null
@@ -1,89 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: cloudsqlproxy
- labels:
- app: cloudsqlproxy
-spec:
- selector:
- matchLabels:
- app: cloudsqlproxy
- replicas: 1
- template:
- metadata:
- labels:
- app: cloudsqlproxy
- spec:
- serviceAccountName: kubeflow-pipelines-cloudsql-proxy
- containers:
- - image: gcr.io/cloudsql-docker/gce-proxy:1.25.0
- name: cloudsqlproxy
- env:
- - name: GCP_CLOUDSQL_INSTANCE_NAME
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: gcsCloudSqlInstanceName
- command: ["/cloud_sql_proxy",
- "-dir=/cloudsql",
- "-instances=$(GCP_CLOUDSQL_INSTANCE_NAME)=tcp:0.0.0.0:3306",
- "-use_http_health_check",
- "term_timeout=10s"]
- # set term_timeout if require graceful handling of shutdown
- # NOTE: proxy will stop accepting new connections; only wait on existing connections
- lifecycle:
- preStop:
- exec:
- # (optional) add a preStop hook so that termination is delayed
- # this is required if your server still require new connections (e.g., connection pools)
- command: ['sleep', '10']
- # Liveness probe configuration is adviced by Cloud SQL Proxy examples:
- # https://github.com/GoogleCloudPlatform/cloudsql-proxy/tree/main/examples/k8s-health-check
- # For details, see https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/
- livenessProbe:
- httpGet:
- path: /liveness
- port: 8090
- # Number of seconds after the container has started before the first probe is scheduled. Defaults to 0.
- # Not necessary when the startup probe is in use.
- initialDelaySeconds: 0
- # Frequency of the probe.
- periodSeconds: 60
- # Number of seconds after which the probe times out.
- timeoutSeconds: 30
- # Number of times the probe is allowed to fail before the transition
- # from healthy to failure state.
- #
- # If periodSeconds = 60, 5 tries will result in five minutes of
- # checks. The proxy starts to refresh a certificate five minutes
- # before its expiration. If those five minutes lapse without a
- # successful refresh, the liveness probe will fail and the pod will be
- # restarted.
- failureThreshold: 5
- readinessProbe:
- httpGet:
- path: /readiness
- port: 8090
- initialDelaySeconds: 0
- periodSeconds: 10
- timeoutSeconds: 5
- # Number of times the probe must report success to transition from failure to healthy state.
- # Defaults to 1 for readiness probe.
- successThreshold: 1
- failureThreshold: 1
- startupProbe:
- httpGet:
- path: /startup
- port: 8090
- periodSeconds: 1
- timeoutSeconds: 5
- failureThreshold: 20
- ports:
- - name: mysql
- containerPort: 3306
- volumeMounts:
- - mountPath: /cloudsql
- name: cloudsql
- volumes:
- - name: cloudsql
- emptyDir:
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/cloudsql-proxy/cloudsql-proxy-sa.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/cloudsql-proxy/cloudsql-proxy-sa.yaml
deleted file mode 100644
index a4cc9c4..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/cloudsql-proxy/cloudsql-proxy-sa.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: kubeflow-pipelines-cloudsql-proxy
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/cloudsql-proxy/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/cloudsql-proxy/kustomization.yaml
deleted file mode 100644
index a336cb5..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/cloudsql-proxy/kustomization.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
-- cloudsql-proxy-deployment.yaml
-- cloudsql-proxy-sa.yaml
-- mysql-service.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/cloudsql-proxy/mysql-service.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/cloudsql-proxy/mysql-service.yaml
deleted file mode 100644
index f97dbc3..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/cloudsql-proxy/mysql-service.yaml
+++ /dev/null
@@ -1,9 +0,0 @@
-apiVersion: v1
-kind: Service
-metadata:
- name: mysql
-spec:
- ports:
- - port: 3306
- selector:
- app: cloudsqlproxy
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/gcp-configurations-patch.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/gcp-configurations-patch.yaml
deleted file mode 100644
index 5e725b5..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/gcp-configurations-patch.yaml
+++ /dev/null
@@ -1,22 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: ml-pipeline
-spec:
- template:
- spec:
- containers:
- - name: ml-pipeline-api-server
- env:
- - name: HAS_DEFAULT_BUCKET
- value: 'true'
- - name: BUCKET_NAME
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: bucketName
- - name: PROJECT_ID
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: gcsProjectId
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/inverse-proxy/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/inverse-proxy/kustomization.yaml
deleted file mode 100644
index f837e97..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/inverse-proxy/kustomization.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-images:
- - name: gcr.io/ml-pipeline/inverse-proxy-agent
- newTag: 1.8.4
-resources:
- - proxy-configmap.yaml
- - proxy-deployment.yaml
- - proxy-role.yaml
- - proxy-rolebinding.yaml
- - proxy-sa.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/inverse-proxy/proxy-configmap.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/inverse-proxy/proxy-configmap.yaml
deleted file mode 100644
index c469f7a..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/inverse-proxy/proxy-configmap.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: inverse-proxy-config
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/inverse-proxy/proxy-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/inverse-proxy/proxy-deployment.yaml
deleted file mode 100644
index faf3e47..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/inverse-proxy/proxy-deployment.yaml
+++ /dev/null
@@ -1,21 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- labels:
- app: proxy-agent
- name: proxy-agent
-spec:
- selector:
- matchLabels:
- app: proxy-agent
- template:
- metadata:
- labels:
- app: proxy-agent
- spec:
- hostNetwork: true
- containers:
- - image: gcr.io/ml-pipeline/inverse-proxy-agent:dummy
- imagePullPolicy: IfNotPresent
- name: proxy-agent
- serviceAccountName: proxy-agent-runner
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/inverse-proxy/proxy-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/inverse-proxy/proxy-role.yaml
deleted file mode 100644
index d6c03d5..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/inverse-proxy/proxy-role.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata:
- labels:
- app: proxy-agent-runner
- name: proxy-agent-runner
-rules:
-- apiGroups:
- - ""
- resources:
- - configmaps
- verbs:
- - '*'
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/inverse-proxy/proxy-rolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/inverse-proxy/proxy-rolebinding.yaml
deleted file mode 100644
index 72f1fc0..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/inverse-proxy/proxy-rolebinding.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- labels:
- app: proxy-agent-runner
- name: proxy-agent-runner
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: proxy-agent-runner
-subjects:
-- kind: ServiceAccount
- name: proxy-agent-runner
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/inverse-proxy/proxy-sa.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/inverse-proxy/proxy-sa.yaml
deleted file mode 100644
index af8b0c3..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/inverse-proxy/proxy-sa.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: proxy-agent-runner
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/kustomization.yaml
deleted file mode 100644
index e96b884..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/kustomization.yaml
+++ /dev/null
@@ -1,32 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-bases:
- # Application controller is used to provide Google Cloud Console integration.
- - ../../third-party/application
- - ../../base/application
- - ../../base/installs/generic
- - ../../base/metadata/base
- - ../../third-party/argo/installs/namespace
- - inverse-proxy
- - minio-gcs-gateway
- - cloudsql-proxy
-
-# Identifier for application manager to apply ownerReference.
-# The ownerReference ensures the resources get garbage collected
-# when application is deleted.
-commonLabels:
- application-crd-id: kubeflow-pipelines
-
-# !!! If you want to customize the namespace,
-# please also update base/cache-deployer/cluster-scoped/cache-deployer-clusterrolebinding.yaml
-namespace: kubeflow
-
-patchesStrategicMerge:
- - gcp-configurations-patch.yaml
-
-# Used by Kustomize
-configMapGenerator:
- - name: pipeline-install-config
- env: params.env
- behavior: merge
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/minio-gcs-gateway/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/minio-gcs-gateway/kustomization.yaml
deleted file mode 100644
index 877ad81..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/minio-gcs-gateway/kustomization.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
-- minio-gcs-gateway-deployment.yaml
-- minio-gcs-gateway-sa.yaml
-- minio-gcs-gateway-service.yaml
-
-secretGenerator:
-- name: mlpipeline-minio-artifact
- env: minio-artifact-secret.env
-generatorOptions:
- # mlpipeline-minio-artifact needs to be referred by exact name
- disableNameSuffixHash: true
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/minio-gcs-gateway/minio-artifact-secret.env b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/minio-gcs-gateway/minio-artifact-secret.env
deleted file mode 100644
index bc8613c..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/minio-gcs-gateway/minio-artifact-secret.env
+++ /dev/null
@@ -1,2 +0,0 @@
-accesskey=minio
-secretkey=minio123
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/minio-gcs-gateway/minio-gcs-gateway-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/minio-gcs-gateway/minio-gcs-gateway-deployment.yaml
deleted file mode 100644
index bb85c95..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/minio-gcs-gateway/minio-gcs-gateway-deployment.yaml
+++ /dev/null
@@ -1,47 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: minio
- labels:
- app: minio
-spec:
- selector:
- matchLabels:
- app: minio
- strategy:
- type: Recreate
- template:
- metadata:
- labels:
- app: minio
- spec:
- serviceAccountName: kubeflow-pipelines-minio-gcs-gateway
- containers:
- - name: minio
- image: gcr.io/ml-pipeline/minio:RELEASE.2019-08-14T20-37-41Z-license-compliance
- args:
- - gateway
- - gcs
- - $(GCP_PROJECT_ID)
- env:
- - name: GCP_PROJECT_ID
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: gcsProjectId
- - name: MINIO_ACCESS_KEY
- valueFrom:
- secretKeyRef:
- name: mlpipeline-minio-artifact
- key: accesskey
- - name: MINIO_SECRET_KEY
- valueFrom:
- secretKeyRef:
- name: mlpipeline-minio-artifact
- key: secretkey
- resources:
- requests:
- cpu: 20m
- memory: 25Mi
- ports:
- - containerPort: 9000
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/minio-gcs-gateway/minio-gcs-gateway-sa.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/minio-gcs-gateway/minio-gcs-gateway-sa.yaml
deleted file mode 100644
index 2aa4f93..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/minio-gcs-gateway/minio-gcs-gateway-sa.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: kubeflow-pipelines-minio-gcs-gateway
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/minio-gcs-gateway/minio-gcs-gateway-service.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/minio-gcs-gateway/minio-gcs-gateway-service.yaml
deleted file mode 100644
index 7dd1817..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/minio-gcs-gateway/minio-gcs-gateway-service.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: v1
-kind: Service
-metadata:
- name: minio-service
-spec:
- ports:
- - port: 9000
- targetPort: 9000
- protocol: TCP
- selector:
- app: minio
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/params.env b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/params.env
deleted file mode 100644
index 0c1d077..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/gcp/params.env
+++ /dev/null
@@ -1,6 +0,0 @@
-pipelineDb=pipelinedb
-mlmdDb=metadb
-cacheDb=cachedb
-bucketName=yourGcsBucketName
-gcsProjectId=yourGcsProjectId
-gcsCloudSqlInstanceName=yourCloudSqlInstanceName
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/kfp-template-openshift-pipelines/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/kfp-template-openshift-pipelines/kustomization.yaml
deleted file mode 100644
index b6b74c5..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/kfp-template-openshift-pipelines/kustomization.yaml
+++ /dev/null
@@ -1,12 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
- - ../plain
- - ../../third-party/openshift-pipelines-custom-task
- - ../../third-party/openshift/standalone
- - namespace.yaml
-
-patches:
- - path: scheduled-workflow-crd.yaml
- - path: viewer-crd.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/kfp-template-openshift-pipelines/scheduled-workflow-crd.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/kfp-template-openshift-pipelines/scheduled-workflow-crd.yaml
deleted file mode 100644
index 3056439..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/kfp-template-openshift-pipelines/scheduled-workflow-crd.yaml
+++ /dev/null
@@ -1,6 +0,0 @@
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- name: scheduledworkflows.kubeflow.org
- labels:
- kubeflow/crd-install: "true"
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/kfp-template-openshift-pipelines/viewer-crd.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/kfp-template-openshift-pipelines/viewer-crd.yaml
deleted file mode 100644
index 73329cd..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/kfp-template-openshift-pipelines/viewer-crd.yaml
+++ /dev/null
@@ -1,6 +0,0 @@
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- name: viewers.kubeflow.org
- labels:
- kubeflow/crd-install: "true"
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/kfp-template/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/kfp-template/kustomization.yaml
deleted file mode 100644
index 7796faa..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/kfp-template/kustomization.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
- - ../plain
- - ../../third-party/tekton-custom-task
- - namespace.yaml
-
-patches:
- - path: scheduled-workflow-crd.yaml
- - path: viewer-crd.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/kfp-template/namespace.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/kfp-template/namespace.yaml
deleted file mode 100644
index 7a940e4..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/kfp-template/namespace.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: Namespace
-metadata:
- name: kubeflow
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/kfp-template/scheduled-workflow-crd.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/kfp-template/scheduled-workflow-crd.yaml
deleted file mode 100644
index 3056439..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/kfp-template/scheduled-workflow-crd.yaml
+++ /dev/null
@@ -1,6 +0,0 @@
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- name: scheduledworkflows.kubeflow.org
- labels:
- kubeflow/crd-install: "true"
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/kfp-template/viewer-crd.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/kfp-template/viewer-crd.yaml
deleted file mode 100644
index 73329cd..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/kfp-template/viewer-crd.yaml
+++ /dev/null
@@ -1,6 +0,0 @@
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- name: viewers.kubeflow.org
- labels:
- kubeflow/crd-install: "true"
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/plain-multi-user/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/plain-multi-user/kustomization.yaml
deleted file mode 100644
index 12e8aa1..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/plain-multi-user/kustomization.yaml
+++ /dev/null
@@ -1,23 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
- - ../../base/installs/multi-user
- - ../../base/metadata/base
- - ../../base/metadata/options/istio
- - ../../third-party/mysql/base
- - ../../third-party/mysql/options/istio
- - ../../third-party/minio/base
- - ../../third-party/minio/options/istio
- - ../../third-party/metacontroller/base
- - ../../third-party/kfp-csi-s3
-
-# Identifier for application manager to apply ownerReference.
-# The ownerReference ensures the resources get garbage collected
-# when application is deleted.
-commonLabels:
- application-crd-id: kubeflow-pipelines
-
-# !!! If you want to customize the namespace,
-# please also update base/cache-deployer/cluster-scoped/cache-deployer-clusterrolebinding.yaml
-namespace: kubeflow
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/plain/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/plain/kustomization.yaml
deleted file mode 100644
index 41b9a23..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/plain/kustomization.yaml
+++ /dev/null
@@ -1,19 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
- - ../../base/installs/generic
- - ../../base/metadata/base
- - ../../third-party/minio/base
- - ../../third-party/mysql/base
- - ../../third-party/kfp-csi-s3
-
-# Identifier for application manager to apply ownerReference.
-# The ownerReference ensures the resources get garbage collected
-# when application is deleted.
-commonLabels:
- application-crd-id: kubeflow-pipelines
-
-# !!! If you want to customize the namespace,
-# please also update base/cache-deployer/cluster-scoped/cache-deployer-clusterrolebinding.yaml
-namespace: kubeflow
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/platform-agnostic-emissary/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/platform-agnostic-emissary/kustomization.yaml
deleted file mode 100644
index 6e37d9c..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/platform-agnostic-emissary/kustomization.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
-- ../platform-agnostic
-
-patches:
-- path: workflow-controller-configmap-patch.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/platform-agnostic-emissary/workflow-controller-configmap-patch.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/platform-agnostic-emissary/workflow-controller-configmap-patch.yaml
deleted file mode 100644
index 87b8fda..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/platform-agnostic-emissary/workflow-controller-configmap-patch.yaml
+++ /dev/null
@@ -1,12 +0,0 @@
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: workflow-controller-configmap
-data:
- # References:
- # * https://github.com/argoproj/argo-workflows/blob/v3.1.5/config/config.go
- # * https://github.com/argoproj/argo-workflows/blob/v3.1.5/docs/workflow-controller-configmap.md
- # * https://github.com/argoproj/argo-workflows/blob/v3.1.5/docs/workflow-controller-configmap.yaml
-
- # Emissary Executor: https://argoproj.github.io/argo-workflows/workflow-executors/#emissary-emissary
- containerRuntimeExecutor: emissary
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/platform-agnostic-kind/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/platform-agnostic-kind/kustomization.yaml
deleted file mode 100644
index bed4144..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/platform-agnostic-kind/kustomization.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
- - ../../third-party/tekton/installs/cluster
- - ../../third-party/tekton-custom-task
- - ./plain-kind
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/platform-agnostic-kind/plain-kind/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/platform-agnostic-kind/plain-kind/kustomization.yaml
deleted file mode 100644
index b34c7c4..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/platform-agnostic-kind/plain-kind/kustomization.yaml
+++ /dev/null
@@ -1,18 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
- - ../../../base/installs/generic
- - ../../../base/metadata/base
- - ../../../third-party/minio/base
- - ../../../third-party/mysql/base
-
-# Identifier for application manager to apply ownerReference.
-# The ownerReference ensures the resources get garbage collected
-# when application is deleted.
-commonLabels:
- application-crd-id: kubeflow-pipelines
-
-# !!! If you want to customize the namespace,
-# please also update base/cache-deployer/cluster-scoped/cache-deployer-clusterrolebinding.yaml
-namespace: kubeflow
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/platform-agnostic-multi-user-emissary/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/platform-agnostic-multi-user-emissary/kustomization.yaml
deleted file mode 100644
index fac1669..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/platform-agnostic-multi-user-emissary/kustomization.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
-- ../platform-agnostic-multi-user
-
-patches:
-- path: workflow-controller-configmap-patch.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/platform-agnostic-multi-user-emissary/workflow-controller-configmap-patch.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/platform-agnostic-multi-user-emissary/workflow-controller-configmap-patch.yaml
deleted file mode 100644
index 410a8f4..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/platform-agnostic-multi-user-emissary/workflow-controller-configmap-patch.yaml
+++ /dev/null
@@ -1,12 +0,0 @@
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: workflow-controller-configmap
-data:
- # References:
- # * https://github.com/argoproj/argo-workflows/blob/v3.3.8/config/config.go
- # * https://github.com/argoproj/argo-workflows/blob/v3.3.8/docs/workflow-controller-configmap.md
- # * https://github.com/argoproj/argo-workflows/blob/v3.3.8/docs/workflow-controller-configmap.yaml
-
- # Emissary Executor: https://argoproj.github.io/argo-workflows/workflow-executors/#emissary-emissary
- containerRuntimeExecutor: emissary
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/platform-agnostic-multi-user/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/platform-agnostic-multi-user/kustomization.yaml
deleted file mode 100644
index b470895..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/platform-agnostic-multi-user/kustomization.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
- - ../../third-party/tekton/installs/cluster
- - ../../third-party/tekton-custom-task
- - ../plain-multi-user
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/platform-agnostic/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/platform-agnostic/kustomization.yaml
deleted file mode 100644
index d93ccea..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/platform-agnostic/kustomization.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
- - ../../third-party/tekton/installs/cluster
- - ../../third-party/tekton-custom-task
- - ../plain
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/gcp-workload-identity-setup.sh b/charts/kubeflow/apps/kfp-tekton/upstream/v1/gcp-workload-identity-setup.sh
deleted file mode 100755
index 79f86c9..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/gcp-workload-identity-setup.sh
+++ /dev/null
@@ -1,202 +0,0 @@
-#!/bin/bash
-#
-# Copyright 2019 The Kubeflow Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-set -e
-
-# Kubernetes Namespace
-NAMESPACE=${NAMESPACE:-kubeflow}
-
-# Google service Account (GSA)
-SYSTEM_GSA=${SYSTEM_GSA:-$RESOURCE_PREFIX-kfp-system}
-USER_GSA=${USER_GSA:-$RESOURCE_PREFIX-kfp-user}
-
-# Kubernetes Service Account (KSA)
-# Note, if deploying manifests/kustomize/env/gcp, you can add the following KSAs
-# to the array of SYSTEM_KSA:
-# * kubeflow-pipelines-minio-gcs-gateway needs gcs permissions
-# * kubeflow-pipelines-cloudsql-proxy needs cloudsql permissions
-SYSTEM_KSA=(ml-pipeline-ui ml-pipeline-visualizationserver)
-USER_KSA=(pipeline-runner kubeflow-pipelines-container-builder kubeflow-pipelines-viewer)
-
-if [ -n $USE_GCP_MANAGED_STORAGE ]; then
- SYSTEM_KSA+=(kubeflow-pipelines-minio-gcs-gateway)
- SYSTEM_KSA+=(kubeflow-pipelines-cloudsql-proxy)
-fi
-
-cat < RESOURCE_PREFIX= NAMESPACE= ./gcp-workload-identity-setup.sh
-```
-
-PROJECT_ID: GCP project ID your cluster belongs to.
-RESOURCE_PREFIX: Your preferred resource prefix for GCP resources this script creates.
-NAMESPACE: Optional. Kubernetes namespace your Kubeflow Pipelines standalone deployment belongs to. (Defaults to kubeflow)
-USE_GCP_MANAGED_STORAGE: Optional. Defaults to "false", specify "true" if you intend to use GCP managed storage (Google Cloud Storage and Cloud SQL) following instructions in:
-https://github.com/kubeflow/pipelines/tree/master/manifests/kustomize/sample
-EOF
-}
-if [ -z "$PROJECT_ID" ]; then
- usage
- echo
- echo "Error: PROJECT_ID env variable is empty!"
- exit 1
-fi
-if [ -z "$RESOURCE_PREFIX" ]; then
- usage
- echo
- echo "Error: RESOURCE_PREFIX env variable is empty!"
- exit 1
-fi
-echo "Env variables set:"
-echo "* PROJECT_ID=$PROJECT_ID"
-echo "* RESOURCE_PREFIX=$RESOURCE_PREFIX"
-echo "* NAMESPACE=$NAMESPACE"
-echo "* USE_GCP_MANAGED_STORAGE=${USE_GCP_MANAGED_STORAGE:-false}"
-echo
-
-SYSTEM_GSA_FULL="$SYSTEM_GSA@$PROJECT_ID.iam.gserviceaccount.com"
-USER_GSA_FULL="$USER_GSA@$PROJECT_ID.iam.gserviceaccount.com"
-
-cat </dev/null; then
- echo "KSA $name already exists"
- else
- kubectl create serviceaccount $name -n $NAMESPACE --save-config
- echo "KSA $name created"
- fi
-}
-
-# Bind KSA to GSA through workload identity.
-# Documentation: https://cloud.google.com/kubernetes-engine/docs/how-to/workload-identity
-function bind_gsa_and_ksa {
- local gsa=${1}
- local ksa=${2}
-
- gcloud iam service-accounts add-iam-policy-binding $gsa@$PROJECT_ID.iam.gserviceaccount.com \
- --member="serviceAccount:$PROJECT_ID.svc.id.goog[$NAMESPACE/$ksa]" \
- --role="roles/iam.workloadIdentityUser" \
- > /dev/null # hide verbose output
-
- create_ksa_if_not_present $ksa
- kubectl annotate serviceaccount \
- --namespace $NAMESPACE \
- --overwrite \
- $ksa \
- iam.gke.io/gcp-service-account=$gsa@$PROJECT_ID.iam.gserviceaccount.com
- echo "* Bound KSA $ksa to GSA $gsa"
-}
-
-echo "Binding each kfp system KSA to $SYSTEM_GSA"
-for ksa in ${SYSTEM_KSA[@]}; do
- bind_gsa_and_ksa $SYSTEM_GSA $ksa
-done
-
-echo "Binding each kfp user KSA to $USER_GSA"
-for ksa in ${USER_KSA[@]}; do
- bind_gsa_and_ksa $USER_GSA $ksa
-done
-
-echo
-echo "All the workload identity bindings have succeeded!"
-cat < /dev/null && pwd)"
-
-function format_yaml {
- local path=$1
- local tmp=$(mktemp)
- yq r "$path" > "$tmp"
- cp "$tmp" "$path"
-}
-echo "This formatting script uses yq, it can be downloaded at https://github.com/mikefarah/yq/releases/tag/3.3.0"
-kustomization_yamls_with_images=(
- "base/cache-deployer/kustomization.yaml"
- "base/cache/kustomization.yaml"
- "base/metadata/base/kustomization.yaml"
- "base/pipeline/metadata-writer/kustomization.yaml"
- "base/pipeline/kustomization.yaml"
- "env/gcp/inverse-proxy/kustomization.yaml"
-)
-for path in "${kustomization_yamls_with_images[@]}"
-do
- format_yaml "$DIR/../$path"
-done
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/hack/presubmit.sh b/charts/kubeflow/apps/kfp-tekton/upstream/v1/hack/presubmit.sh
deleted file mode 100755
index 99cb0da..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/hack/presubmit.sh
+++ /dev/null
@@ -1,49 +0,0 @@
-#!/bin/bash
-#
-# Copyright 2021 The Kubeflow Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-# This is a wrapper script on top of test.sh, it installs required dependencies.
-
-set -ex
-
-DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" > /dev/null && pwd)"
-TMP="$(mktemp -d)"
-
-pushd "${TMP}"
-# Install Kustomize
-KUSTOMIZE_VERSION=3.10.0
-# Reference: https://kubectl.docs.kubernetes.io/installation/kustomize/binaries/
-curl -s -O "https://raw.githubusercontent.com/\
-kubernetes-sigs/kustomize/master/hack/install_kustomize.sh"
-chmod +x install_kustomize.sh
-./install_kustomize.sh "${KUSTOMIZE_VERSION}" /usr/local/bin/
-
-# Reference: https://github.com/mikefarah/yq/releases/tag/3.4.1
-curl -s -LO "https://github.com/mikefarah/yq/releases/download/3.4.1/yq_linux_amd64"
-chmod +x yq_linux_amd64
-mv yq_linux_amd64 /usr/local/bin/yq
-popd
-
-# kpt and kubectl should already be installed in gcr.io/google.com/cloudsdktool/cloud-sdk:latest
-# so we do not need to install them here
-
-# trigger real unit tests
-${DIR}/test.sh
-# verify release script runs properly
-
-${DIR}/release.sh v1.2.3-dummy
-# --no-pager sends output to stdout
-# Show git diff, so people can manually verify results of the release script
-git --no-pager diff
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/hack/release.sh b/charts/kubeflow/apps/kfp-tekton/upstream/v1/hack/release.sh
deleted file mode 100755
index 14a2c53..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/hack/release.sh
+++ /dev/null
@@ -1,42 +0,0 @@
-#!/bin/bash
-#
-# Copyright 2020 The Kubeflow Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-set -ex
-
-TAG_NAME=$1
-DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" > /dev/null && pwd)"
-MANIFEST_DIR="${DIR}/.."
-
-if [[ -z "$TAG_NAME" ]]; then
- echo "Usage: release.sh " >&2
- exit 1
-fi
-
-echo "This release script uses yq, it can be downloaded at https://github.com/mikefarah/yq/releases/tag/3.3.0"
-kustomization_yamls_with_images=(
- "base/cache-deployer/kustomization.yaml"
- "base/cache/kustomization.yaml"
- "base/metadata/base/kustomization.yaml"
- "base/pipeline/metadata-writer/kustomization.yaml"
- "base/pipeline/kustomization.yaml"
- "env/gcp/inverse-proxy/kustomization.yaml"
-)
-for path in "${kustomization_yamls_with_images[@]}"
-do
- yq w -i "${MANIFEST_DIR}/$path" images[*].newTag "$TAG_NAME"
-done
-
-yq w -i "${MANIFEST_DIR}/base/installs/generic/pipeline-install-config.yaml" data.appVersion "$TAG_NAME"
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/sample/README.md b/charts/kubeflow/apps/kfp-tekton/upstream/v1/sample/README.md
deleted file mode 100644
index c4bfe95..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/sample/README.md
+++ /dev/null
@@ -1,77 +0,0 @@
-# Sample installation
-
-1. Prepare a cluster and setup kubectl context
-Do whatever you want to customize your cluster. You can use existing cluster
-or create a new one.
-- **ML Usage** GPU normally is required for deep learning task.
-You may consider create **zero-sized GPU node-pool with autoscaling**.
-Please reference [GPU Tutorial](/samples/tutorials/gpu/).
-- **Security** You may consider use **Workload Identity** in GCP cluster.
-
-Here for simplicity, we create a small cluster with **--scopes=cloud-platform**
-which grants all the GCP permissions to the cluster.
-
-```
-gcloud container clusters create mycluster \
- --zone us-central1-a \
- --machine-type n1-standard-2 \
- --scopes cloud-platform \
- --enable-autoscaling \
- --min-nodes 1 \
- --max-nodes 5 \
- --num-nodes 3
-```
-
-2. Prepare CloudSQL
-
-Create CloudSQL instance. [Console](https://console.cloud.google.com/sql/instances).
-
-Here is a sample for demo.
-
-```
-gcloud beta sql instances create mycloudsqlname \
- --database-version=MYSQL_5_7 \
- --tier=db-n1-standard-1 \
- --region=us-central1 \
- --root-password=password123
-```
-
-You may use **Private IP** to well protect your CloudSQL.
-If you use **Private IP**, please go to [VPC network peering](https://console.cloud.google.com/networking/peering/list)
-to double check whether the "cloudsql-mysql-googleais-com" is created and the "Exchange custom routes" is enabled. You
-are expected to see "Peer VPC network is connected".
-
-3. Prepare GCS Bucket
-
-Create Cloud Storage bucket. [Console](https://console.cloud.google.com/storage).
-
-```
-gsutil mb -p myProjectId gs://myBucketName/
-```
-
-4. Customize your values
-- Edit **params.env**, **params-db-secret.env** and **cluster-scoped-resources/params.env**
-- Edit kustomization.yaml to set your namespace, e.x. "kubeflow"
-
-5. (Optional.) If the cluster is on Workload Identity, please run **[gcp-workload-identity-setup.sh](../gcp-workload-identity-setup.sh)**
- The script prints usage documentation when calling without argument. Note, you should
- call it with `USE_GCP_MANAGED_STORAGE=true` env var.
-
- - make sure the Google Service Account (GSA) can access the CloudSQL instance and GCS bucket
- - if your workload calls other GCP APIs, make sure the GSA can access them
-
-6. Install
-
-```
-kubectl apply -k sample/cluster-scoped-resources/
-
-kubectl wait crd/applications.app.k8s.io --for condition=established --timeout=60s
-
-kubectl apply -k sample/
-# If upper one action got failed, e.x. you used wrong value, try delete, fix and apply again
-# kubectl delete -k sample/
-
-kubectl wait applications/mypipeline -n kubeflow --for condition=Ready --timeout=1800s
-```
-
-Now you can find the installation in [Console](http://console.cloud.google.com/ai-platform/pipelines)
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/sample/cluster-scoped-resources/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/sample/cluster-scoped-resources/kustomization.yaml
deleted file mode 100644
index 83c54aa..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/sample/cluster-scoped-resources/kustomization.yaml
+++ /dev/null
@@ -1,10 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-# !!! If you want to customize the namespace,
-# please also update sample/kustomization.yaml's namespace field to the same value
-namespace: kubeflow
-
-bases:
- # Or github.com/kubeflow/pipelines/manifests/kustomize/cluster-scoped-resources?ref=1.0.0
- - ../../cluster-scoped-resources
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/sample/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/sample/kustomization.yaml
deleted file mode 100644
index 3af7efd..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/sample/kustomization.yaml
+++ /dev/null
@@ -1,39 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-bases:
- # Or github.com/kubeflow/pipelines/manifests/kustomize/env/gcp?ref=1.0.0
- - ../env/gcp
- # Kubeflow Pipelines servers are capable of collecting Prometheus metrics.
- # If you want to monitor your Kubeflow Pipelines servers with those metrics, you'll need a Prometheus server in your Kubeflow Pipelines cluster.
- # If you don't already have a Prometheus server up, you can uncomment the following configuration files for Prometheus.
- # If you have your own Prometheus server up already or you don't want a Prometheus server for monitoring, you can comment the following line out.
- # - ../third_party/prometheus
- # - ../third_party/grafana
-
-# Identifier for application manager to apply ownerReference.
-# The ownerReference ensures the resources get garbage collected
-# when application is deleted.
-commonLabels:
- application-crd-id: kubeflow-pipelines
-
-# Used by Kustomize
-configMapGenerator:
- - name: pipeline-install-config
- env: params.env
- behavior: merge
-
-secretGenerator:
- - name: mysql-secret
- env: params-db-secret.env
- behavior: merge
-
-# !!! If you want to customize the namespace,
-# please also update sample/cluster-scoped-resources/kustomization.yaml's namespace field to the same value
-namespace: kubeflow
-
-#### Customization ###
-# 1. Change values in params.env file
-# 2. Change values in params-db-secret.env file for CloudSQL username and password
-# 3. kubectl apply -k ./
-####
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/sample/params-db-secret.env b/charts/kubeflow/apps/kfp-tekton/upstream/v1/sample/params-db-secret.env
deleted file mode 100644
index c15cb2e..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/sample/params-db-secret.env
+++ /dev/null
@@ -1,2 +0,0 @@
-username=root
-password=
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/sample/params.env b/charts/kubeflow/apps/kfp-tekton/upstream/v1/sample/params.env
deleted file mode 100644
index 6d6cca0..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/sample/params.env
+++ /dev/null
@@ -1,4 +0,0 @@
-appName=mypipeline
-bucketName=mybucketname
-gcsProjectId=myprojectid
-gcsCloudSqlInstanceName=myprojectid:myregion:myinstance
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/application/application-controller-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/application/application-controller-deployment.yaml
deleted file mode 100644
index 8cffbb4..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/application/application-controller-deployment.yaml
+++ /dev/null
@@ -1,43 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: controller-manager
- labels:
- control-plane: controller-manager
- controller-tools.k8s.io: "1.0"
-spec:
- selector:
- matchLabels:
- control-plane: controller-manager
- controller-tools.k8s.io: "1.0"
- template:
- metadata:
- labels:
- control-plane: controller-manager
- controller-tools.k8s.io: "1.0"
- spec:
- containers:
- - command:
- - /bin/sh
- - -c
- # See https://github.com/kubeflow/gcp-blueprints/issues/184.
- - |
- echo "logs are hidden because volume is too excessive" &&
- /root/manager 2> /dev/null
- # A customized image with https://github.com/kubernetes-sigs/application/pull/127
- image: gcr.io/ml-pipeline/application-crd-controller:1.0-beta-non-cluster-role
- imagePullPolicy: IfNotPresent
- name: manager
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- resources:
- limits:
- cpu: 100m
- memory: 30Mi
- requests:
- cpu: 100m
- memory: 20Mi
- serviceAccountName: application
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/application/application-controller-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/application/application-controller-role.yaml
deleted file mode 100644
index ac06135..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/application/application-controller-role.yaml
+++ /dev/null
@@ -1,21 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata:
- name: application-manager-role
-rules:
- - apiGroups:
- - '*'
- resources:
- - '*'
- verbs:
- - get
- - list
- - update
- - patch
- - watch
- - apiGroups:
- - app.k8s.io
- resources:
- - '*'
- verbs:
- - '*'
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/application/application-controller-rolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/application/application-controller-rolebinding.yaml
deleted file mode 100644
index 24b383a..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/application/application-controller-rolebinding.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: application-manager-rolebinding
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: application-manager-role
-subjects:
- - kind: ServiceAccount
- name: application
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/application/application-controller-sa.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/application/application-controller-sa.yaml
deleted file mode 100644
index bd13039..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/application/application-controller-sa.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: application
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/application/application-controller-service.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/application/application-controller-service.yaml
deleted file mode 100644
index e4b6086..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/application/application-controller-service.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: v1
-kind: Service
-metadata:
- name: controller-manager-service
- labels:
- control-plane: controller-manager
- controller-tools.k8s.io: "1.0"
-spec:
- selector:
- control-plane: controller-manager
- controller-tools.k8s.io: "1.0"
- ports:
- - port: 443
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/application/cluster-scoped/application-crd.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/application/cluster-scoped/application-crd.yaml
deleted file mode 100644
index 9d5e714..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/application/cluster-scoped/application-crd.yaml
+++ /dev/null
@@ -1,531 +0,0 @@
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- labels:
- controller-tools.k8s.io: "1.0"
- annotations:
- api-approved.kubernetes.io: https://github.com/kubernetes-sigs/application/pull/2
- controller-gen.kubebuilder.io/version: v0.4.0
- creationTimestamp: null
- name: applications.app.k8s.io
-spec:
- group: app.k8s.io
- names:
- categories:
- - all
- kind: Application
- listKind: ApplicationList
- plural: applications
- shortNames:
- - app
- singular: application
- scope: Namespaced
- versions:
- - additionalPrinterColumns:
- - description: The type of the application
- jsonPath: .spec.descriptor.type
- name: Type
- type: string
- - description: The creation date
- jsonPath: .spec.descriptor.version
- name: Version
- type: string
- - description: The application object owns the matched resources
- jsonPath: .spec.addOwnerRef
- name: Owner
- type: boolean
- - description: Numbers of components ready
- jsonPath: .status.componentsReady
- name: Ready
- type: string
- - description: The creation date
- jsonPath: .metadata.creationTimestamp
- name: Age
- type: date
- name: v1beta1
- schema:
- openAPIV3Schema:
- description: Application is the Schema for the applications API
- properties:
- apiVersion:
- description: 'APIVersion defines the versioned schema of this representation
- of an object. Servers should convert recognized schemas to the latest
- internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
- type: string
- kind:
- description: 'Kind is a string value representing the REST resource this
- object represents. Servers may infer this from the endpoint the client
- submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
- type: string
- metadata:
- type: object
- spec:
- description: ApplicationSpec defines the specification for an Application.
- properties:
- addOwnerRef:
- description: AddOwnerRef objects - flag to indicate if we need to
- add OwnerRefs to matching objects Matching is done by using Selector
- to query all ComponentGroupKinds
- type: boolean
- assemblyPhase:
- description: AssemblyPhase represents the current phase of the application's
- assembly. An empty value is equivalent to "Succeeded".
- type: string
- componentKinds:
- description: ComponentGroupKinds is a list of Kinds for Application's
- components (e.g. Deployments, Pods, Services, CRDs). It can be used
- in conjunction with the Application's Selector to list or watch
- the Applications components.
- items:
- description: GroupKind specifies a Group and a Kind, but does not
- force a version. This is useful for identifying concepts during
- lookup stages without having partially valid types
- properties:
- group:
- type: string
- kind:
- type: string
- required:
- - group
- - kind
- type: object
- type: array
- descriptor:
- description: Descriptor regroups information and metadata about an
- application.
- properties:
- description:
- description: Description is a brief string description of the
- Application.
- type: string
- icons:
- description: Icons is an optional list of icons for an application.
- Icon information includes the source, size, and mime type.
- items:
- description: ImageSpec contains information about an image used
- as an icon.
- properties:
- size:
- description: (optional) The size of the image in pixels
- (e.g., 25x25).
- type: string
- src:
- description: The source for image represented as either
- an absolute URL to the image or a Data URL containing
- the image. Data URLs are defined in RFC 2397.
- type: string
- type:
- description: (optional) The mine type of the image (e.g.,
- "image/png").
- type: string
- required:
- - src
- type: object
- type: array
- keywords:
- description: Keywords is an optional list of key words associated
- with the application (e.g. MySQL, RDBMS, database).
- items:
- type: string
- type: array
- links:
- description: Links are a list of descriptive URLs intended to
- be used to surface additional documentation, dashboards, etc.
- items:
- description: Link contains information about an URL to surface
- documentation, dashboards, etc.
- properties:
- description:
- description: Description is human readable content explaining
- the purpose of the link.
- type: string
- url:
- description: Url typically points at a website address.
- type: string
- type: object
- type: array
- maintainers:
- description: Maintainers is an optional list of maintainers of
- the application. The maintainers in this list maintain the the
- source code, images, and package for the application.
- items:
- description: ContactData contains information about an individual
- or organization.
- properties:
- email:
- description: Email is the email address.
- type: string
- name:
- description: Name is the descriptive name.
- type: string
- url:
- description: Url could typically be a website address.
- type: string
- type: object
- type: array
- notes:
- description: Notes contain a human readable snippets intended
- as a quick start for the users of the Application. CommonMark
- markdown syntax may be used for rich text representation.
- type: string
- owners:
- description: Owners is an optional list of the owners of the installed
- application. The owners of the application should be contacted
- in the event of a planned or unplanned disruption affecting
- the application.
- items:
- description: ContactData contains information about an individual
- or organization.
- properties:
- email:
- description: Email is the email address.
- type: string
- name:
- description: Name is the descriptive name.
- type: string
- url:
- description: Url could typically be a website address.
- type: string
- type: object
- type: array
- type:
- description: Type is the type of the application (e.g. WordPress,
- MySQL, Cassandra).
- type: string
- version:
- description: Version is an optional version indicator for the
- Application.
- type: string
- type: object
- info:
- description: Info contains human readable key,value pairs for the
- Application.
- items:
- description: InfoItem is a human readable key,value pair containing
- important information about how to access the Application.
- properties:
- name:
- description: Name is a human readable title for this piece of
- information.
- type: string
- type:
- description: Type of the value for this InfoItem.
- type: string
- value:
- description: Value is human readable content.
- type: string
- valueFrom:
- description: ValueFrom defines a reference to derive the value
- from another source.
- properties:
- configMapKeyRef:
- description: Selects a key of a ConfigMap.
- properties:
- apiVersion:
- description: API version of the referent.
- type: string
- fieldPath:
- description: 'If referring to a piece of an object instead
- of an entire object, this string should contain a
- valid JSON/Go field access statement, such as desiredState.manifest.containers[2].
- For example, if the object reference is to a container
- within a pod, this would take on a value like: "spec.containers{name}"
- (where "name" refers to the name of the container
- that triggered the event) or if no container name
- is specified "spec.containers[2]" (container with
- index 2 in this pod). This syntax is chosen only to
- have some well-defined way of referencing a part of
- an object. TODO: this design is not final and this
- field is subject to change in the future.'
- type: string
- key:
- description: The key to select.
- type: string
- kind:
- description: 'Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
- type: string
- name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- namespace:
- description: 'Namespace of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/'
- type: string
- resourceVersion:
- description: 'Specific resourceVersion to which this
- reference is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency'
- type: string
- uid:
- description: 'UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids'
- type: string
- type: object
- ingressRef:
- description: Select an Ingress.
- properties:
- apiVersion:
- description: API version of the referent.
- type: string
- fieldPath:
- description: 'If referring to a piece of an object instead
- of an entire object, this string should contain a
- valid JSON/Go field access statement, such as desiredState.manifest.containers[2].
- For example, if the object reference is to a container
- within a pod, this would take on a value like: "spec.containers{name}"
- (where "name" refers to the name of the container
- that triggered the event) or if no container name
- is specified "spec.containers[2]" (container with
- index 2 in this pod). This syntax is chosen only to
- have some well-defined way of referencing a part of
- an object. TODO: this design is not final and this
- field is subject to change in the future.'
- type: string
- host:
- description: The optional host to select.
- type: string
- kind:
- description: 'Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
- type: string
- name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- namespace:
- description: 'Namespace of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/'
- type: string
- path:
- description: The optional HTTP path.
- type: string
- protocol:
- description: Protocol for the ingress
- type: string
- resourceVersion:
- description: 'Specific resourceVersion to which this
- reference is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency'
- type: string
- uid:
- description: 'UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids'
- type: string
- type: object
- secretKeyRef:
- description: Selects a key of a Secret.
- properties:
- apiVersion:
- description: API version of the referent.
- type: string
- fieldPath:
- description: 'If referring to a piece of an object instead
- of an entire object, this string should contain a
- valid JSON/Go field access statement, such as desiredState.manifest.containers[2].
- For example, if the object reference is to a container
- within a pod, this would take on a value like: "spec.containers{name}"
- (where "name" refers to the name of the container
- that triggered the event) or if no container name
- is specified "spec.containers[2]" (container with
- index 2 in this pod). This syntax is chosen only to
- have some well-defined way of referencing a part of
- an object. TODO: this design is not final and this
- field is subject to change in the future.'
- type: string
- key:
- description: The key to select.
- type: string
- kind:
- description: 'Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
- type: string
- name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- namespace:
- description: 'Namespace of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/'
- type: string
- resourceVersion:
- description: 'Specific resourceVersion to which this
- reference is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency'
- type: string
- uid:
- description: 'UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids'
- type: string
- type: object
- serviceRef:
- description: Select a Service.
- properties:
- apiVersion:
- description: API version of the referent.
- type: string
- fieldPath:
- description: 'If referring to a piece of an object instead
- of an entire object, this string should contain a
- valid JSON/Go field access statement, such as desiredState.manifest.containers[2].
- For example, if the object reference is to a container
- within a pod, this would take on a value like: "spec.containers{name}"
- (where "name" refers to the name of the container
- that triggered the event) or if no container name
- is specified "spec.containers[2]" (container with
- index 2 in this pod). This syntax is chosen only to
- have some well-defined way of referencing a part of
- an object. TODO: this design is not final and this
- field is subject to change in the future.'
- type: string
- kind:
- description: 'Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
- type: string
- name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- namespace:
- description: 'Namespace of the referent. More info:
- https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/'
- type: string
- path:
- description: The optional HTTP path.
- type: string
- port:
- description: The optional port to select.
- format: int32
- type: integer
- protocol:
- description: Protocol for the service
- type: string
- resourceVersion:
- description: 'Specific resourceVersion to which this
- reference is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency'
- type: string
- uid:
- description: 'UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids'
- type: string
- type: object
- type:
- description: Type of source.
- type: string
- type: object
- type: object
- type: array
- selector:
- description: 'Selector is a label query over kinds that created by
- the application. It must match the component objects'' labels. More
- info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors'
- properties:
- matchExpressions:
- description: matchExpressions is a list of label selector requirements.
- The requirements are ANDed.
- items:
- description: A label selector requirement is a selector that
- contains values, a key, and an operator that relates the key
- and values.
- properties:
- key:
- description: key is the label key that the selector applies
- to.
- type: string
- operator:
- description: operator represents a key's relationship to
- a set of values. Valid operators are In, NotIn, Exists
- and DoesNotExist.
- type: string
- values:
- description: values is an array of string values. If the
- operator is In or NotIn, the values array must be non-empty.
- If the operator is Exists or DoesNotExist, the values
- array must be empty. This array is replaced during a strategic
- merge patch.
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- description: matchLabels is a map of {key,value} pairs. A single
- {key,value} in the matchLabels map is equivalent to an element
- of matchExpressions, whose key field is "key", the operator
- is "In", and the values array contains only "value". The requirements
- are ANDed.
- type: object
- type: object
- type: object
- status:
- description: ApplicationStatus defines controller's the observed state
- of Application
- properties:
- components:
- description: Object status array for all matching objects
- items:
- description: ObjectStatus is a generic status holder for objects
- properties:
- group:
- description: Object group
- type: string
- kind:
- description: Kind of object
- type: string
- link:
- description: Link to object
- type: string
- name:
- description: Name of object
- type: string
- status:
- description: 'Status. Values: InProgress, Ready, Unknown'
- type: string
- type: object
- type: array
- componentsReady:
- description: 'ComponentsReady: status of the components in the format
- ready/total'
- type: string
- conditions:
- description: Conditions represents the latest state of the object
- items:
- description: Condition describes the state of an object at a certain
- point.
- properties:
- lastTransitionTime:
- description: Last time the condition transitioned from one status
- to another.
- format: date-time
- type: string
- lastUpdateTime:
- description: Last time the condition was probed
- format: date-time
- type: string
- message:
- description: A human readable message indicating details about
- the transition.
- type: string
- reason:
- description: The reason for the condition's last transition.
- type: string
- status:
- description: Status of the condition, one of True, False, Unknown.
- type: string
- type:
- description: Type of condition.
- type: string
- required:
- - status
- - type
- type: object
- type: array
- observedGeneration:
- description: ObservedGeneration is the most recent generation observed.
- It corresponds to the Object's generation, which is updated on mutation
- by the API Server.
- format: int64
- type: integer
- type: object
- type: object
- served: true
- storage: true
- subresources:
- status: {}
-status:
- acceptedNames:
- kind: ""
- plural: ""
- conditions: []
- storedVersions: []
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/application/cluster-scoped/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/application/cluster-scoped/kustomization.yaml
deleted file mode 100644
index f54a41c..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/application/cluster-scoped/kustomization.yaml
+++ /dev/null
@@ -1,9 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
-- application-crd.yaml
-
-# Update application CRD:
-# Copy the upstream file to application-crd.yaml of the current folder.
-# Upstream file: https://github.com/kubernetes-sigs/application/blob/master/config/crd/bases/app.k8s.io_applications.yaml
-# Keep label controller-tools.k8s.io.
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/application/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/application/kustomization.yaml
deleted file mode 100644
index c35e3ee..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/application/kustomization.yaml
+++ /dev/null
@@ -1,9 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
- - application-controller-deployment.yaml
- - application-controller-role.yaml
- - application-controller-rolebinding.yaml
- - application-controller-sa.yaml
- - application-controller-service.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/.krmignore b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/.krmignore
deleted file mode 100644
index 0459513..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/.krmignore
+++ /dev/null
@@ -1 +0,0 @@
-upstream
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/Kptfile b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/Kptfile
deleted file mode 100644
index bf0baf9..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/Kptfile
+++ /dev/null
@@ -1,6 +0,0 @@
-apiVersion: kpt.dev/v1
-kind: Kptfile
-metadata:
- name: argo
-info:
- description: argo Kptfile in order to ignore upstream/ folder.
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/Makefile b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/Makefile
deleted file mode 100644
index c057af1..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/Makefile
+++ /dev/null
@@ -1,12 +0,0 @@
-REPO_ROOT=../../../..
-
-update:
- rm -rf upstream
- mkdir upstream
- kpt pkg get "https://github.com/argoproj/argo-workflows.git/manifests@$$(cat $(REPO_ROOT)/third_party/argo/VERSION)" upstream/
- # Remove the pre-hydrated manifests which we do not use.
- rm upstream/manifests/*.yaml
- # Remove README.md which might be confusing here.
- rm upstream/manifests/README.md
- # Include argo license file
- curl -Lo upstream/manifests/LICENSE "https://raw.githubusercontent.com/argoproj/argo-workflows/$$(cat $(REPO_ROOT)/third_party/argo/VERSION)/LICENSE"
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/README.md b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/README.md
deleted file mode 100644
index c46225b..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/README.md
+++ /dev/null
@@ -1,35 +0,0 @@
-# Manifests for Argo workflows
-
-Kubeflow Pipelines uses [Argo Workflows](https://argoproj.github.io/argo-workflows/) as the underlying workflow execution engine.
-
-This folder contains:
-
-* `upstream/manifests` a mirror of argo workflows manifests upstream. It should never be edited here. Run `make update` to update it.
-* `installs` a folder with preconfigured argo workflows installations used in Kubeflow Pipelines distributions.
-
- Major differences from upstream argo manifests:
-
- * Argo server is not included.
- * Argo workflow controller configmap is preconfigured to integrate with KFP.
- * Images are configured to use KFP redistributed ones which comply with open source licenses.
- * A default artifact repository config is added for in-cluster minio service.
-
-## Upgrade argo
-
-Refer to [third_party/argo/README.md](../../../../third_party/argo/README.md).
-
-### Upgrade argo manifests
-
-Requirement:
-
-Use kpt version above 1.0.0-beta.6, refer to [kpt installation](https://kpt.dev/installation/) for downloading kpt.
-
-As one step of above, we need to upgrade argo manifests in this folder.
-
-1. Run:
-
- ```bash
- make update
- ```
-
- Note, argo version is pulled from [third_party/argo/VERSION](../../../../third_party/argo/VERSION). Edit the VERSION file first.
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/base/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/base/kustomization.yaml
deleted file mode 100644
index 81c3b93..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/base/kustomization.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-bases:
-- ../upstream/manifests/base/workflow-controller
-
-patchesStrategicMerge:
-- workflow-controller-deployment-patch.yaml
-- workflow-controller-configmap-patch.yaml
-
-# Allow Kustomize vars to replace fields defined in params.yaml.
-# The vars can be defined anywhere.
-configurations:
-- params.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/base/params.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/base/params.yaml
deleted file mode 100644
index 91e9f1f..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/base/params.yaml
+++ /dev/null
@@ -1,3 +0,0 @@
-varReference:
-- path: data/artifactRepository
- kind: ConfigMap
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/base/workflow-controller-configmap-patch.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/base/workflow-controller-configmap-patch.yaml
deleted file mode 100644
index 96a6ccf..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/base/workflow-controller-configmap-patch.yaml
+++ /dev/null
@@ -1,48 +0,0 @@
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: workflow-controller-configmap
-data:
- # References:
- # * https://github.com/argoproj/argo-workflows/blob/v3.3.8/config/config.go
- # * https://github.com/argoproj/argo-workflows/blob/v3.3.8/docs/workflow-controller-configmap.md
- # * https://github.com/argoproj/argo-workflows/blob/v3.3.8/docs/workflow-controller-configmap.yaml
-
- # emissary executor is a more portable default, see https://github.com/kubeflow/pipelines/issues/1654.
- containerRuntimeExecutor: emissary
-
- # In artifactRepository.s3.endpoint, $(kfp-namespace) is needed, because in multi-user mode, pipelines may run in other namespaces.
- artifactRepository: |
- archiveLogs: true
- s3:
- endpoint: "minio-service.$(kfp-namespace):9000"
- bucket: "$(kfp-artifact-bucket-name)"
- # keyFormat is a format pattern to define how artifacts will be organized in a bucket.
- # It can reference workflow metadata variables such as workflow.namespace, workflow.name,
- # pod.name. Can also use strftime formating of workflow.creationTimestamp so that workflow
- # artifacts can be organized by date. If omitted, will use `{{workflow.name}}/{{pod.name}}`,
- # which has potential for have collisions, because names do not guarantee they are unique
- # over the lifetime of the cluster.
- # Refer to https://kubernetes.io/docs/concepts/overview/working-with-objects/names/.
- #
- # The following format looks like:
- # artifacts/my-workflow-abc123/2018/08/23/my-workflow-abc123-1234567890
- # Adding date into the path greatly reduces the chance of {{pod.name}} collision.
- keyFormat: "artifacts/{{workflow.name}}/{{workflow.creationTimestamp.Y}}/{{workflow.creationTimestamp.m}}/{{workflow.creationTimestamp.d}}/{{pod.name}}"
- # insecure will disable TLS. Primarily used for minio installs not configured with TLS
- insecure: true
- accessKeySecret:
- name: mlpipeline-minio-artifact
- key: accesskey
- secretKeySecret:
- name: mlpipeline-minio-artifact
- key: secretkey
- executor: |
- imagePullPolicy: IfNotPresent
- resources:
- requests:
- cpu: 0.01
- memory: 32Mi
- limits:
- cpu: 0.5
- memory: 512Mi
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/base/workflow-controller-deployment-patch.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/base/workflow-controller-deployment-patch.yaml
deleted file mode 100644
index 770b86a..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/base/workflow-controller-deployment-patch.yaml
+++ /dev/null
@@ -1,19 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: workflow-controller
-spec:
- template:
- spec:
- containers:
- - name: workflow-controller
- image: gcr.io/ml-pipeline/workflow-controller:v3.3.8-license-compliance
- args:
- - --configmap
- - workflow-controller-configmap
- - --executor-image
- - gcr.io/ml-pipeline/argoexec:v3.3.8-license-compliance
- resources:
- requests:
- cpu: 100m
- memory: 500Mi
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/installs/cluster/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/installs/cluster/kustomization.yaml
deleted file mode 100644
index 3bb1a46..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/installs/cluster/kustomization.yaml
+++ /dev/null
@@ -1,18 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-bases:
-# Note, we do not explicitly separate cluster-scoped resources for cluster installation,
-# because people who deploy cluster-scoped resources should be the same as who deploys
-# namespaced resources.
-- ../../upstream/manifests/base/crds
-- ../../upstream/manifests/cluster-install/workflow-controller-rbac
-- ../../base
-
-patchesJson6902:
-- target:
- group: rbac.authorization.k8s.io
- version: v1
- kind: ClusterRoleBinding
- name: argo-binding
- path: workflow-controller-clusterrolebinding-patch.json
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/installs/cluster/workflow-controller-clusterrolebinding-patch.json b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/installs/cluster/workflow-controller-clusterrolebinding-patch.json
deleted file mode 100644
index 05e9322..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/installs/cluster/workflow-controller-clusterrolebinding-patch.json
+++ /dev/null
@@ -1,7 +0,0 @@
-[
- {
- "op": "replace",
- "path": "/subjects/0/namespace",
- "value": "kubeflow"
- }
-]
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/installs/namespace/cluster-scoped/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/installs/namespace/cluster-scoped/kustomization.yaml
deleted file mode 100644
index 86733da..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/installs/namespace/cluster-scoped/kustomization.yaml
+++ /dev/null
@@ -1,5 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-bases:
-# Minimal CRDs omit schema validation, recommended for production cluster.
-- ../../../upstream/manifests/base/crds/minimal
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/installs/namespace/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/installs/namespace/kustomization.yaml
deleted file mode 100644
index 1a861c4..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/installs/namespace/kustomization.yaml
+++ /dev/null
@@ -1,19 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-# This kustomization.yaml is built mirroring ../../upstream/manifests/namespace-install/kustomization.yaml.
-# The differences:
-# * this does not include argo server.
-# * this separates cluster-scoped resources to its own folder.
-
-bases:
-- ../../base
-- ../../upstream/manifests/namespace-install/workflow-controller-rbac
-
-patchesJson6902:
-- target:
- version: v1
- group: apps
- kind: Deployment
- name: workflow-controller
- path: workflow-controller-deployment-patch.json
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/installs/namespace/workflow-controller-deployment-patch.json b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/installs/namespace/workflow-controller-deployment-patch.json
deleted file mode 100644
index b8d82b0..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/installs/namespace/workflow-controller-deployment-patch.json
+++ /dev/null
@@ -1,7 +0,0 @@
-[
- {
- "op": "add",
- "path": "/spec/template/spec/containers/0/args/-",
- "value": "--namespaced"
- }
-]
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/Kptfile b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/Kptfile
deleted file mode 100644
index 3b21f24..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/Kptfile
+++ /dev/null
@@ -1,18 +0,0 @@
-apiVersion: kpt.dev/v1
-kind: Kptfile
-metadata:
- name: manifests
-upstream:
- type: git
- git:
- repo: https://github.com/argoproj/argo-workflows
- directory: /manifests
- ref: v3.3.8
- updateStrategy: resource-merge
-upstreamLock:
- type: git
- git:
- repo: https://github.com/argoproj/argo-workflows
- directory: /manifests
- ref: v3.3.8
- commit: 621b0d1a8e09634666ebe403ee7b8fc29db1dc4e
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/LICENSE b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/LICENSE
deleted file mode 100644
index 67e99b0..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/LICENSE
+++ /dev/null
@@ -1,202 +0,0 @@
-
- Apache License
- Version 2.0, January 2004
- http://www.apache.org/licenses/
-
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
- 1. Definitions.
-
- "License" shall mean the terms and conditions for use, reproduction,
- and distribution as defined by Sections 1 through 9 of this document.
-
- "Licensor" shall mean the copyright owner or entity authorized by
- the copyright owner that is granting the License.
-
- "Legal Entity" shall mean the union of the acting entity and all
- other entities that control, are controlled by, or are under common
- control with that entity. For the purposes of this definition,
- "control" means (i) the power, direct or indirect, to cause the
- direction or management of such entity, whether by contract or
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
- outstanding shares, or (iii) beneficial ownership of such entity.
-
- "You" (or "Your") shall mean an individual or Legal Entity
- exercising permissions granted by this License.
-
- "Source" form shall mean the preferred form for making modifications,
- including but not limited to software source code, documentation
- source, and configuration files.
-
- "Object" form shall mean any form resulting from mechanical
- transformation or translation of a Source form, including but
- not limited to compiled object code, generated documentation,
- and conversions to other media types.
-
- "Work" shall mean the work of authorship, whether in Source or
- Object form, made available under the License, as indicated by a
- copyright notice that is included in or attached to the work
- (an example is provided in the Appendix below).
-
- "Derivative Works" shall mean any work, whether in Source or Object
- form, that is based on (or derived from) the Work and for which the
- editorial revisions, annotations, elaborations, or other modifications
- represent, as a whole, an original work of authorship. For the purposes
- of this License, Derivative Works shall not include works that remain
- separable from, or merely link (or bind by name) to the interfaces of,
- the Work and Derivative Works thereof.
-
- "Contribution" shall mean any work of authorship, including
- the original version of the Work and any modifications or additions
- to that Work or Derivative Works thereof, that is intentionally
- submitted to Licensor for inclusion in the Work by the copyright owner
- or by an individual or Legal Entity authorized to submit on behalf of
- the copyright owner. For the purposes of this definition, "submitted"
- means any form of electronic, verbal, or written communication sent
- to the Licensor or its representatives, including but not limited to
- communication on electronic mailing lists, source code control systems,
- and issue tracking systems that are managed by, or on behalf of, the
- Licensor for the purpose of discussing and improving the Work, but
- excluding communication that is conspicuously marked or otherwise
- designated in writing by the copyright owner as "Not a Contribution."
-
- "Contributor" shall mean Licensor and any individual or Legal Entity
- on behalf of whom a Contribution has been received by Licensor and
- subsequently incorporated within the Work.
-
- 2. Grant of Copyright License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- copyright license to reproduce, prepare Derivative Works of,
- publicly display, publicly perform, sublicense, and distribute the
- Work and such Derivative Works in Source or Object form.
-
- 3. Grant of Patent License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- (except as stated in this section) patent license to make, have made,
- use, offer to sell, sell, import, and otherwise transfer the Work,
- where such license applies only to those patent claims licensable
- by such Contributor that are necessarily infringed by their
- Contribution(s) alone or by combination of their Contribution(s)
- with the Work to which such Contribution(s) was submitted. If You
- institute patent litigation against any entity (including a
- cross-claim or counterclaim in a lawsuit) alleging that the Work
- or a Contribution incorporated within the Work constitutes direct
- or contributory patent infringement, then any patent licenses
- granted to You under this License for that Work shall terminate
- as of the date such litigation is filed.
-
- 4. Redistribution. You may reproduce and distribute copies of the
- Work or Derivative Works thereof in any medium, with or without
- modifications, and in Source or Object form, provided that You
- meet the following conditions:
-
- (a) You must give any other recipients of the Work or
- Derivative Works a copy of this License; and
-
- (b) You must cause any modified files to carry prominent notices
- stating that You changed the files; and
-
- (c) You must retain, in the Source form of any Derivative Works
- that You distribute, all copyright, patent, trademark, and
- attribution notices from the Source form of the Work,
- excluding those notices that do not pertain to any part of
- the Derivative Works; and
-
- (d) If the Work includes a "NOTICE" text file as part of its
- distribution, then any Derivative Works that You distribute must
- include a readable copy of the attribution notices contained
- within such NOTICE file, excluding those notices that do not
- pertain to any part of the Derivative Works, in at least one
- of the following places: within a NOTICE text file distributed
- as part of the Derivative Works; within the Source form or
- documentation, if provided along with the Derivative Works; or,
- within a display generated by the Derivative Works, if and
- wherever such third-party notices normally appear. The contents
- of the NOTICE file are for informational purposes only and
- do not modify the License. You may add Your own attribution
- notices within Derivative Works that You distribute, alongside
- or as an addendum to the NOTICE text from the Work, provided
- that such additional attribution notices cannot be construed
- as modifying the License.
-
- You may add Your own copyright statement to Your modifications and
- may provide additional or different license terms and conditions
- for use, reproduction, or distribution of Your modifications, or
- for any such Derivative Works as a whole, provided Your use,
- reproduction, and distribution of the Work otherwise complies with
- the conditions stated in this License.
-
- 5. Submission of Contributions. Unless You explicitly state otherwise,
- any Contribution intentionally submitted for inclusion in the Work
- by You to the Licensor shall be under the terms and conditions of
- this License, without any additional terms or conditions.
- Notwithstanding the above, nothing herein shall supersede or modify
- the terms of any separate license agreement you may have executed
- with Licensor regarding such Contributions.
-
- 6. Trademarks. This License does not grant permission to use the trade
- names, trademarks, service marks, or product names of the Licensor,
- except as required for reasonable and customary use in describing the
- origin of the Work and reproducing the content of the NOTICE file.
-
- 7. Disclaimer of Warranty. Unless required by applicable law or
- agreed to in writing, Licensor provides the Work (and each
- Contributor provides its Contributions) on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- implied, including, without limitation, any warranties or conditions
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
- PARTICULAR PURPOSE. You are solely responsible for determining the
- appropriateness of using or redistributing the Work and assume any
- risks associated with Your exercise of permissions under this License.
-
- 8. Limitation of Liability. In no event and under no legal theory,
- whether in tort (including negligence), contract, or otherwise,
- unless required by applicable law (such as deliberate and grossly
- negligent acts) or agreed to in writing, shall any Contributor be
- liable to You for damages, including any direct, indirect, special,
- incidental, or consequential damages of any character arising as a
- result of this License or out of the use or inability to use the
- Work (including but not limited to damages for loss of goodwill,
- work stoppage, computer failure or malfunction, or any and all
- other commercial damages or losses), even if such Contributor
- has been advised of the possibility of such damages.
-
- 9. Accepting Warranty or Additional Liability. While redistributing
- the Work or Derivative Works thereof, You may choose to offer,
- and charge a fee for, acceptance of support, warranty, indemnity,
- or other liability obligations and/or rights consistent with this
- License. However, in accepting such obligations, You may act only
- on Your own behalf and on Your sole responsibility, not on behalf
- of any other Contributor, and only if You agree to indemnify,
- defend, and hold each Contributor harmless for any liability
- incurred by, or claims asserted against, such Contributor by reason
- of your accepting any such warranty or additional liability.
-
- END OF TERMS AND CONDITIONS
-
- APPENDIX: How to apply the Apache License to your work.
-
- To apply the Apache License to your work, attach the following
- boilerplate notice, with the fields enclosed by brackets "[]"
- replaced with your own identifying information. (Don't include
- the brackets!) The text should be enclosed in the appropriate
- comment syntax for the file format. We also recommend that a
- file or class name and description of purpose be included on the
- same "printed page" as the copyright notice for easier
- identification within third-party archives.
-
- Copyright 2017-2018 The Argo Authors
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/argo-server/argo-server-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/argo-server/argo-server-deployment.yaml
deleted file mode 100644
index 479de12..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/argo-server/argo-server-deployment.yaml
+++ /dev/null
@@ -1,46 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata: # kpt-merge: /argo-server
- name: argo-server
-spec:
- selector:
- matchLabels:
- app: argo-server
- template:
- metadata:
- labels:
- app: argo-server
- spec:
- serviceAccountName: argo-server
- containers:
- - name: argo-server
- image: quay.io/argoproj/argocli:latest
- securityContext:
- readOnlyRootFilesystem: true
- runAsNonRoot: true
- allowPrivilegeEscalation: false
- capabilities:
- drop:
- - ALL
- args: [server]
- env: []
- ports:
- - name: web
- containerPort: 2746
- readinessProbe:
- httpGet:
- port: 2746
- scheme: HTTPS
- path: /
- initialDelaySeconds: 10
- periodSeconds: 20
- volumeMounts:
- - mountPath: /tmp
- name: tmp
- volumes:
- - name: tmp
- emptyDir: {}
- securityContext:
- runAsNonRoot: true
- nodeSelector:
- kubernetes.io/os: linux
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/argo-server/argo-server-sa.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/argo-server/argo-server-sa.yaml
deleted file mode 100644
index 0f5cab2..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/argo-server/argo-server-sa.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata: # kpt-merge: /argo-server
- name: argo-server
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/argo-server/argo-server-service.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/argo-server/argo-server-service.yaml
deleted file mode 100644
index 6c2207a..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/argo-server/argo-server-service.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: v1
-kind: Service
-metadata: # kpt-merge: /argo-server
- name: argo-server
-spec:
- selector:
- app: argo-server
- ports:
- - name: web
- port: 2746
- targetPort: 2746
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/argo-server/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/argo-server/kustomization.yaml
deleted file mode 100644
index e17bc75..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/argo-server/kustomization.yaml
+++ /dev/null
@@ -1,6 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
-- argo-server-deployment.yaml
-- argo-server-sa.yaml
-- argo-server-service.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/full/README.md b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/full/README.md
deleted file mode 100644
index bca5186..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/full/README.md
+++ /dev/null
@@ -1,3 +0,0 @@
-# Full CRDs
-
-These CRDs have full schema validation. As a result, they are large and probably not suitable to be used in your cluster.
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_clusterworkflowtemplates.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_clusterworkflowtemplates.yaml
deleted file mode 100644
index 149d63b..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_clusterworkflowtemplates.yaml
+++ /dev/null
@@ -1,15719 +0,0 @@
-# This is an auto-generated file. DO NOT EDIT
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata: # kpt-merge: /clusterworkflowtemplates.argoproj.io
- name: clusterworkflowtemplates.argoproj.io
-spec:
- group: argoproj.io
- names:
- kind: ClusterWorkflowTemplate
- listKind: ClusterWorkflowTemplateList
- plural: clusterworkflowtemplates
- shortNames:
- - clusterwftmpl
- - cwft
- singular: clusterworkflowtemplate
- scope: Cluster
- versions:
- - name: v1alpha1
- schema:
- openAPIV3Schema:
- properties:
- apiVersion:
- type: string
- kind:
- type: string
- metadata:
- type: object
- spec:
- properties:
- activeDeadlineSeconds:
- format: int64
- type: integer
- affinity:
- properties:
- nodeAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- preference:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- weight:
- format: int32
- type: integer
- required:
- - preference
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- properties:
- nodeSelectorTerms:
- items:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- type: array
- required:
- - nodeSelectorTerms
- type: object
- type: object
- podAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- podAntiAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- type: object
- archiveLogs:
- type: boolean
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- artifactRepositoryRef:
- properties:
- configMap:
- type: string
- key:
- type: string
- type: object
- automountServiceAccountToken:
- type: boolean
- dnsConfig:
- properties:
- nameservers:
- items:
- type: string
- type: array
- options:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- type: object
- type: array
- searches:
- items:
- type: string
- type: array
- type: object
- dnsPolicy:
- type: string
- entrypoint:
- type: string
- executor:
- properties:
- serviceAccountName:
- type: string
- type: object
- hooks:
- additionalProperties:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- expression:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- type: object
- type: object
- hostAliases:
- items:
- properties:
- hostnames:
- items:
- type: string
- type: array
- ip:
- type: string
- type: object
- type: array
- hostNetwork:
- type: boolean
- imagePullSecrets:
- items:
- properties:
- name:
- type: string
- type: object
- type: array
- metrics:
- properties:
- prometheus:
- items:
- properties:
- counter:
- properties:
- value:
- type: string
- required:
- - value
- type: object
- gauge:
- properties:
- realtime:
- type: boolean
- value:
- type: string
- required:
- - realtime
- - value
- type: object
- help:
- type: string
- histogram:
- properties:
- buckets:
- items:
- type: number
- type: array
- value:
- type: string
- required:
- - buckets
- - value
- type: object
- labels:
- items:
- properties:
- key:
- type: string
- value:
- type: string
- required:
- - key
- - value
- type: object
- type: array
- name:
- type: string
- when:
- type: string
- required:
- - help
- - name
- type: object
- type: array
- required:
- - prometheus
- type: object
- nodeSelector:
- additionalProperties:
- type: string
- type: object
- onExit:
- type: string
- parallelism:
- format: int64
- type: integer
- podDisruptionBudget:
- properties:
- maxUnavailable:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- minAvailable:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- type: object
- podGC:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- strategy:
- type: string
- type: object
- podMetadata:
- properties:
- annotations:
- additionalProperties:
- type: string
- type: object
- labels:
- additionalProperties:
- type: string
- type: object
- type: object
- podPriority:
- format: int32
- type: integer
- podPriorityClassName:
- type: string
- podSpecPatch:
- type: string
- priority:
- format: int32
- type: integer
- retryStrategy:
- properties:
- affinity:
- properties:
- nodeAntiAffinity:
- type: object
- type: object
- backoff:
- properties:
- duration:
- type: string
- factor:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- maxDuration:
- type: string
- type: object
- expression:
- type: string
- limit:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- retryPolicy:
- type: string
- type: object
- schedulerName:
- type: string
- securityContext:
- properties:
- fsGroup:
- format: int64
- type: integer
- fsGroupChangePolicy:
- type: string
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- supplementalGroups:
- items:
- format: int64
- type: integer
- type: array
- sysctls:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- serviceAccountName:
- type: string
- shutdown:
- type: string
- suspend:
- type: boolean
- synchronization:
- properties:
- mutex:
- properties:
- name:
- type: string
- type: object
- semaphore:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- type: object
- templateDefaults:
- properties:
- activeDeadlineSeconds:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- affinity:
- properties:
- nodeAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- preference:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- weight:
- format: int32
- type: integer
- required:
- - preference
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- properties:
- nodeSelectorTerms:
- items:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- type: array
- required:
- - nodeSelectorTerms
- type: object
- type: object
- podAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- podAntiAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- type: object
- archiveLocation:
- properties:
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- type: object
- automountServiceAccountToken:
- type: boolean
- container:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- containerSet:
- properties:
- containers:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- dependencies:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- retryStrategy:
- properties:
- duration:
- type: string
- retries:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - retries
- type: object
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- required:
- - containers
- type: object
- daemon:
- type: boolean
- dag:
- properties:
- failFast:
- type: boolean
- target:
- type: string
- tasks:
- items:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- continueOn:
- properties:
- error:
- type: boolean
- failed:
- type: boolean
- type: object
- dependencies:
- items:
- type: string
- type: array
- depends:
- type: string
- hooks:
- additionalProperties:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- expression:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- type: object
- type: object
- inline: {}
- name:
- type: string
- onExit:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- when:
- type: string
- withItems:
- items:
- type: object
- type: array
- withParam:
- type: string
- withSequence:
- properties:
- count:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- end:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- format:
- type: string
- start:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- type: object
- required:
- - name
- type: object
- type: array
- required:
- - tasks
- type: object
- data:
- properties:
- source:
- properties:
- artifactPaths:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: object
- transformation:
- items:
- properties:
- expression:
- type: string
- required:
- - expression
- type: object
- type: array
- required:
- - source
- - transformation
- type: object
- executor:
- properties:
- serviceAccountName:
- type: string
- type: object
- failFast:
- type: boolean
- hostAliases:
- items:
- properties:
- hostnames:
- items:
- type: string
- type: array
- ip:
- type: string
- type: object
- type: array
- http:
- properties:
- body:
- type: string
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- insecureSkipVerify:
- type: boolean
- method:
- type: string
- successCondition:
- type: string
- timeoutSeconds:
- format: int64
- type: integer
- url:
- type: string
- required:
- - url
- type: object
- initContainers:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- mirrorVolumeMounts:
- type: boolean
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- inputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- memoize:
- properties:
- cache:
- properties:
- configMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - configMap
- type: object
- key:
- type: string
- maxAge:
- type: string
- required:
- - cache
- - key
- - maxAge
- type: object
- metadata:
- properties:
- annotations:
- additionalProperties:
- type: string
- type: object
- labels:
- additionalProperties:
- type: string
- type: object
- type: object
- metrics:
- properties:
- prometheus:
- items:
- properties:
- counter:
- properties:
- value:
- type: string
- required:
- - value
- type: object
- gauge:
- properties:
- realtime:
- type: boolean
- value:
- type: string
- required:
- - realtime
- - value
- type: object
- help:
- type: string
- histogram:
- properties:
- buckets:
- items:
- type: number
- type: array
- value:
- type: string
- required:
- - buckets
- - value
- type: object
- labels:
- items:
- properties:
- key:
- type: string
- value:
- type: string
- required:
- - key
- - value
- type: object
- type: array
- name:
- type: string
- when:
- type: string
- required:
- - help
- - name
- type: object
- type: array
- required:
- - prometheus
- type: object
- name:
- type: string
- nodeSelector:
- additionalProperties:
- type: string
- type: object
- outputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- exitCode:
- type: string
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- result:
- type: string
- type: object
- parallelism:
- format: int64
- type: integer
- plugin:
- type: object
- podSpecPatch:
- type: string
- priority:
- format: int32
- type: integer
- priorityClassName:
- type: string
- resource:
- properties:
- action:
- type: string
- failureCondition:
- type: string
- flags:
- items:
- type: string
- type: array
- manifest:
- type: string
- mergeStrategy:
- type: string
- setOwnerReference:
- type: boolean
- successCondition:
- type: string
- required:
- - action
- type: object
- retryStrategy:
- properties:
- affinity:
- properties:
- nodeAntiAffinity:
- type: object
- type: object
- backoff:
- properties:
- duration:
- type: string
- factor:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- maxDuration:
- type: string
- type: object
- expression:
- type: string
- limit:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- retryPolicy:
- type: string
- type: object
- schedulerName:
- type: string
- script:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- source:
- type: string
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- - source
- type: object
- securityContext:
- properties:
- fsGroup:
- format: int64
- type: integer
- fsGroupChangePolicy:
- type: string
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- supplementalGroups:
- items:
- format: int64
- type: integer
- type: array
- sysctls:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- serviceAccountName:
- type: string
- sidecars:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- mirrorVolumeMounts:
- type: boolean
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- steps:
- items:
- type: array
- type: array
- suspend:
- properties:
- duration:
- type: string
- type: object
- synchronization:
- properties:
- mutex:
- properties:
- name:
- type: string
- type: object
- semaphore:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- type: object
- timeout:
- type: string
- tolerations:
- items:
- properties:
- effect:
- type: string
- key:
- type: string
- operator:
- type: string
- tolerationSeconds:
- format: int64
- type: integer
- value:
- type: string
- type: object
- type: array
- volumes:
- items:
- properties:
- awsElasticBlockStore:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- azureDisk:
- properties:
- cachingMode:
- type: string
- diskName:
- type: string
- diskURI:
- type: string
- fsType:
- type: string
- kind:
- type: string
- readOnly:
- type: boolean
- required:
- - diskName
- - diskURI
- type: object
- azureFile:
- properties:
- readOnly:
- type: boolean
- secretName:
- type: string
- shareName:
- type: string
- required:
- - secretName
- - shareName
- type: object
- cephfs:
- properties:
- monitors:
- items:
- type: string
- type: array
- path:
- type: string
- readOnly:
- type: boolean
- secretFile:
- type: string
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - monitors
- type: object
- cinder:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- configMap:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- csi:
- properties:
- driver:
- type: string
- fsType:
- type: string
- nodePublishSecretRef:
- properties:
- name:
- type: string
- type: object
- readOnly:
- type: boolean
- volumeAttributes:
- additionalProperties:
- type: string
- type: object
- required:
- - driver
- type: object
- downwardAPI:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- emptyDir:
- properties:
- medium:
- type: string
- sizeLimit:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- ephemeral:
- properties:
- volumeClaimTemplate:
- properties:
- metadata:
- type: object
- spec:
- properties:
- accessModes:
- items:
- type: string
- type: array
- dataSource:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- dataSourceRef:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- storageClassName:
- type: string
- volumeMode:
- type: string
- volumeName:
- type: string
- type: object
- required:
- - spec
- type: object
- type: object
- fc:
- properties:
- fsType:
- type: string
- lun:
- format: int32
- type: integer
- readOnly:
- type: boolean
- targetWWNs:
- items:
- type: string
- type: array
- wwids:
- items:
- type: string
- type: array
- type: object
- flexVolume:
- properties:
- driver:
- type: string
- fsType:
- type: string
- options:
- additionalProperties:
- type: string
- type: object
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- required:
- - driver
- type: object
- flocker:
- properties:
- datasetName:
- type: string
- datasetUUID:
- type: string
- type: object
- gcePersistentDisk:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- pdName:
- type: string
- readOnly:
- type: boolean
- required:
- - pdName
- type: object
- gitRepo:
- properties:
- directory:
- type: string
- repository:
- type: string
- revision:
- type: string
- required:
- - repository
- type: object
- glusterfs:
- properties:
- endpoints:
- type: string
- path:
- type: string
- readOnly:
- type: boolean
- required:
- - endpoints
- - path
- type: object
- hostPath:
- properties:
- path:
- type: string
- type:
- type: string
- required:
- - path
- type: object
- iscsi:
- properties:
- chapAuthDiscovery:
- type: boolean
- chapAuthSession:
- type: boolean
- fsType:
- type: string
- initiatorName:
- type: string
- iqn:
- type: string
- iscsiInterface:
- type: string
- lun:
- format: int32
- type: integer
- portals:
- items:
- type: string
- type: array
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- targetPortal:
- type: string
- required:
- - iqn
- - lun
- - targetPortal
- type: object
- name:
- type: string
- nfs:
- properties:
- path:
- type: string
- readOnly:
- type: boolean
- server:
- type: string
- required:
- - path
- - server
- type: object
- persistentVolumeClaim:
- properties:
- claimName:
- type: string
- readOnly:
- type: boolean
- required:
- - claimName
- type: object
- photonPersistentDisk:
- properties:
- fsType:
- type: string
- pdID:
- type: string
- required:
- - pdID
- type: object
- portworxVolume:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- projected:
- properties:
- defaultMode:
- format: int32
- type: integer
- sources:
- items:
- properties:
- configMap:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- downwardAPI:
- properties:
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- secret:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- serviceAccountToken:
- properties:
- audience:
- type: string
- expirationSeconds:
- format: int64
- type: integer
- path:
- type: string
- required:
- - path
- type: object
- type: object
- type: array
- type: object
- quobyte:
- properties:
- group:
- type: string
- readOnly:
- type: boolean
- registry:
- type: string
- tenant:
- type: string
- user:
- type: string
- volume:
- type: string
- required:
- - registry
- - volume
- type: object
- rbd:
- properties:
- fsType:
- type: string
- image:
- type: string
- keyring:
- type: string
- monitors:
- items:
- type: string
- type: array
- pool:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - image
- - monitors
- type: object
- scaleIO:
- properties:
- fsType:
- type: string
- gateway:
- type: string
- protectionDomain:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- sslEnabled:
- type: boolean
- storageMode:
- type: string
- storagePool:
- type: string
- system:
- type: string
- volumeName:
- type: string
- required:
- - gateway
- - secretRef
- - system
- type: object
- secret:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- optional:
- type: boolean
- secretName:
- type: string
- type: object
- storageos:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeName:
- type: string
- volumeNamespace:
- type: string
- type: object
- vsphereVolume:
- properties:
- fsType:
- type: string
- storagePolicyID:
- type: string
- storagePolicyName:
- type: string
- volumePath:
- type: string
- required:
- - volumePath
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- templates:
- items:
- properties:
- activeDeadlineSeconds:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- affinity:
- properties:
- nodeAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- preference:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- weight:
- format: int32
- type: integer
- required:
- - preference
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- properties:
- nodeSelectorTerms:
- items:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- type: array
- required:
- - nodeSelectorTerms
- type: object
- type: object
- podAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- podAntiAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- type: object
- archiveLocation:
- properties:
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- type: object
- automountServiceAccountToken:
- type: boolean
- container:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - image
- type: object
- containerSet:
- properties:
- containers:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- dependencies:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- retryStrategy:
- properties:
- duration:
- type: string
- retries:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - retries
- type: object
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- required:
- - containers
- type: object
- daemon:
- type: boolean
- dag:
- properties:
- failFast:
- type: boolean
- target:
- type: string
- tasks:
- items:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- continueOn:
- properties:
- error:
- type: boolean
- failed:
- type: boolean
- type: object
- dependencies:
- items:
- type: string
- type: array
- depends:
- type: string
- hooks:
- additionalProperties:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- expression:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- type: object
- type: object
- inline: {}
- name:
- type: string
- onExit:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- when:
- type: string
- withItems:
- items:
- type: object
- type: array
- withParam:
- type: string
- withSequence:
- properties:
- count:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- end:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- format:
- type: string
- start:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- type: object
- required:
- - name
- type: object
- type: array
- required:
- - tasks
- type: object
- data:
- properties:
- source:
- properties:
- artifactPaths:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: object
- transformation:
- items:
- properties:
- expression:
- type: string
- required:
- - expression
- type: object
- type: array
- required:
- - source
- - transformation
- type: object
- executor:
- properties:
- serviceAccountName:
- type: string
- type: object
- failFast:
- type: boolean
- hostAliases:
- items:
- properties:
- hostnames:
- items:
- type: string
- type: array
- ip:
- type: string
- type: object
- type: array
- http:
- properties:
- body:
- type: string
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- insecureSkipVerify:
- type: boolean
- method:
- type: string
- successCondition:
- type: string
- timeoutSeconds:
- format: int64
- type: integer
- url:
- type: string
- required:
- - url
- type: object
- initContainers:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- mirrorVolumeMounts:
- type: boolean
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- inputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- memoize:
- properties:
- cache:
- properties:
- configMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - configMap
- type: object
- key:
- type: string
- maxAge:
- type: string
- required:
- - cache
- - key
- - maxAge
- type: object
- metadata:
- properties:
- annotations:
- additionalProperties:
- type: string
- type: object
- labels:
- additionalProperties:
- type: string
- type: object
- type: object
- metrics:
- properties:
- prometheus:
- items:
- properties:
- counter:
- properties:
- value:
- type: string
- required:
- - value
- type: object
- gauge:
- properties:
- realtime:
- type: boolean
- value:
- type: string
- required:
- - realtime
- - value
- type: object
- help:
- type: string
- histogram:
- properties:
- buckets:
- items:
- type: number
- type: array
- value:
- type: string
- required:
- - buckets
- - value
- type: object
- labels:
- items:
- properties:
- key:
- type: string
- value:
- type: string
- required:
- - key
- - value
- type: object
- type: array
- name:
- type: string
- when:
- type: string
- required:
- - help
- - name
- type: object
- type: array
- required:
- - prometheus
- type: object
- name:
- type: string
- nodeSelector:
- additionalProperties:
- type: string
- type: object
- outputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- exitCode:
- type: string
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- result:
- type: string
- type: object
- parallelism:
- format: int64
- type: integer
- plugin:
- type: object
- podSpecPatch:
- type: string
- priority:
- format: int32
- type: integer
- priorityClassName:
- type: string
- resource:
- properties:
- action:
- type: string
- failureCondition:
- type: string
- flags:
- items:
- type: string
- type: array
- manifest:
- type: string
- mergeStrategy:
- type: string
- setOwnerReference:
- type: boolean
- successCondition:
- type: string
- required:
- - action
- type: object
- retryStrategy:
- properties:
- affinity:
- properties:
- nodeAntiAffinity:
- type: object
- type: object
- backoff:
- properties:
- duration:
- type: string
- factor:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- maxDuration:
- type: string
- type: object
- expression:
- type: string
- limit:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- retryPolicy:
- type: string
- type: object
- schedulerName:
- type: string
- script:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- source:
- type: string
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - image
- - source
- type: object
- securityContext:
- properties:
- fsGroup:
- format: int64
- type: integer
- fsGroupChangePolicy:
- type: string
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- supplementalGroups:
- items:
- format: int64
- type: integer
- type: array
- sysctls:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- serviceAccountName:
- type: string
- sidecars:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- mirrorVolumeMounts:
- type: boolean
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- steps:
- items:
- type: array
- type: array
- suspend:
- properties:
- duration:
- type: string
- type: object
- synchronization:
- properties:
- mutex:
- properties:
- name:
- type: string
- type: object
- semaphore:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- type: object
- timeout:
- type: string
- tolerations:
- items:
- properties:
- effect:
- type: string
- key:
- type: string
- operator:
- type: string
- tolerationSeconds:
- format: int64
- type: integer
- value:
- type: string
- type: object
- type: array
- volumes:
- items:
- properties:
- awsElasticBlockStore:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- azureDisk:
- properties:
- cachingMode:
- type: string
- diskName:
- type: string
- diskURI:
- type: string
- fsType:
- type: string
- kind:
- type: string
- readOnly:
- type: boolean
- required:
- - diskName
- - diskURI
- type: object
- azureFile:
- properties:
- readOnly:
- type: boolean
- secretName:
- type: string
- shareName:
- type: string
- required:
- - secretName
- - shareName
- type: object
- cephfs:
- properties:
- monitors:
- items:
- type: string
- type: array
- path:
- type: string
- readOnly:
- type: boolean
- secretFile:
- type: string
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - monitors
- type: object
- cinder:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- configMap:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- csi:
- properties:
- driver:
- type: string
- fsType:
- type: string
- nodePublishSecretRef:
- properties:
- name:
- type: string
- type: object
- readOnly:
- type: boolean
- volumeAttributes:
- additionalProperties:
- type: string
- type: object
- required:
- - driver
- type: object
- downwardAPI:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- emptyDir:
- properties:
- medium:
- type: string
- sizeLimit:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- ephemeral:
- properties:
- volumeClaimTemplate:
- properties:
- metadata:
- type: object
- spec:
- properties:
- accessModes:
- items:
- type: string
- type: array
- dataSource:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- dataSourceRef:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- storageClassName:
- type: string
- volumeMode:
- type: string
- volumeName:
- type: string
- type: object
- required:
- - spec
- type: object
- type: object
- fc:
- properties:
- fsType:
- type: string
- lun:
- format: int32
- type: integer
- readOnly:
- type: boolean
- targetWWNs:
- items:
- type: string
- type: array
- wwids:
- items:
- type: string
- type: array
- type: object
- flexVolume:
- properties:
- driver:
- type: string
- fsType:
- type: string
- options:
- additionalProperties:
- type: string
- type: object
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- required:
- - driver
- type: object
- flocker:
- properties:
- datasetName:
- type: string
- datasetUUID:
- type: string
- type: object
- gcePersistentDisk:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- pdName:
- type: string
- readOnly:
- type: boolean
- required:
- - pdName
- type: object
- gitRepo:
- properties:
- directory:
- type: string
- repository:
- type: string
- revision:
- type: string
- required:
- - repository
- type: object
- glusterfs:
- properties:
- endpoints:
- type: string
- path:
- type: string
- readOnly:
- type: boolean
- required:
- - endpoints
- - path
- type: object
- hostPath:
- properties:
- path:
- type: string
- type:
- type: string
- required:
- - path
- type: object
- iscsi:
- properties:
- chapAuthDiscovery:
- type: boolean
- chapAuthSession:
- type: boolean
- fsType:
- type: string
- initiatorName:
- type: string
- iqn:
- type: string
- iscsiInterface:
- type: string
- lun:
- format: int32
- type: integer
- portals:
- items:
- type: string
- type: array
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- targetPortal:
- type: string
- required:
- - iqn
- - lun
- - targetPortal
- type: object
- name:
- type: string
- nfs:
- properties:
- path:
- type: string
- readOnly:
- type: boolean
- server:
- type: string
- required:
- - path
- - server
- type: object
- persistentVolumeClaim:
- properties:
- claimName:
- type: string
- readOnly:
- type: boolean
- required:
- - claimName
- type: object
- photonPersistentDisk:
- properties:
- fsType:
- type: string
- pdID:
- type: string
- required:
- - pdID
- type: object
- portworxVolume:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- projected:
- properties:
- defaultMode:
- format: int32
- type: integer
- sources:
- items:
- properties:
- configMap:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- downwardAPI:
- properties:
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- secret:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- serviceAccountToken:
- properties:
- audience:
- type: string
- expirationSeconds:
- format: int64
- type: integer
- path:
- type: string
- required:
- - path
- type: object
- type: object
- type: array
- type: object
- quobyte:
- properties:
- group:
- type: string
- readOnly:
- type: boolean
- registry:
- type: string
- tenant:
- type: string
- user:
- type: string
- volume:
- type: string
- required:
- - registry
- - volume
- type: object
- rbd:
- properties:
- fsType:
- type: string
- image:
- type: string
- keyring:
- type: string
- monitors:
- items:
- type: string
- type: array
- pool:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - image
- - monitors
- type: object
- scaleIO:
- properties:
- fsType:
- type: string
- gateway:
- type: string
- protectionDomain:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- sslEnabled:
- type: boolean
- storageMode:
- type: string
- storagePool:
- type: string
- system:
- type: string
- volumeName:
- type: string
- required:
- - gateway
- - secretRef
- - system
- type: object
- secret:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- optional:
- type: boolean
- secretName:
- type: string
- type: object
- storageos:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeName:
- type: string
- volumeNamespace:
- type: string
- type: object
- vsphereVolume:
- properties:
- fsType:
- type: string
- storagePolicyID:
- type: string
- storagePolicyName:
- type: string
- volumePath:
- type: string
- required:
- - volumePath
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- type: array
- tolerations:
- items:
- properties:
- effect:
- type: string
- key:
- type: string
- operator:
- type: string
- tolerationSeconds:
- format: int64
- type: integer
- value:
- type: string
- type: object
- type: array
- ttlStrategy:
- properties:
- secondsAfterCompletion:
- format: int32
- type: integer
- secondsAfterFailure:
- format: int32
- type: integer
- secondsAfterSuccess:
- format: int32
- type: integer
- type: object
- volumeClaimGC:
- properties:
- strategy:
- type: string
- type: object
- volumeClaimTemplates:
- items:
- properties:
- apiVersion:
- type: string
- kind:
- type: string
- metadata:
- type: object
- spec:
- properties:
- accessModes:
- items:
- type: string
- type: array
- dataSource:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- dataSourceRef:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- storageClassName:
- type: string
- volumeMode:
- type: string
- volumeName:
- type: string
- type: object
- status:
- properties:
- accessModes:
- items:
- type: string
- type: array
- allocatedResources:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- capacity:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- conditions:
- items:
- properties:
- lastProbeTime:
- format: date-time
- type: string
- lastTransitionTime:
- format: date-time
- type: string
- message:
- type: string
- reason:
- type: string
- status:
- type: string
- type:
- type: string
- required:
- - status
- - type
- type: object
- type: array
- phase:
- type: string
- resizeStatus:
- type: string
- type: object
- type: object
- type: array
- volumes:
- items:
- properties:
- awsElasticBlockStore:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- azureDisk:
- properties:
- cachingMode:
- type: string
- diskName:
- type: string
- diskURI:
- type: string
- fsType:
- type: string
- kind:
- type: string
- readOnly:
- type: boolean
- required:
- - diskName
- - diskURI
- type: object
- azureFile:
- properties:
- readOnly:
- type: boolean
- secretName:
- type: string
- shareName:
- type: string
- required:
- - secretName
- - shareName
- type: object
- cephfs:
- properties:
- monitors:
- items:
- type: string
- type: array
- path:
- type: string
- readOnly:
- type: boolean
- secretFile:
- type: string
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - monitors
- type: object
- cinder:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- configMap:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- csi:
- properties:
- driver:
- type: string
- fsType:
- type: string
- nodePublishSecretRef:
- properties:
- name:
- type: string
- type: object
- readOnly:
- type: boolean
- volumeAttributes:
- additionalProperties:
- type: string
- type: object
- required:
- - driver
- type: object
- downwardAPI:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- emptyDir:
- properties:
- medium:
- type: string
- sizeLimit:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- ephemeral:
- properties:
- volumeClaimTemplate:
- properties:
- metadata:
- type: object
- spec:
- properties:
- accessModes:
- items:
- type: string
- type: array
- dataSource:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- dataSourceRef:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- storageClassName:
- type: string
- volumeMode:
- type: string
- volumeName:
- type: string
- type: object
- required:
- - spec
- type: object
- type: object
- fc:
- properties:
- fsType:
- type: string
- lun:
- format: int32
- type: integer
- readOnly:
- type: boolean
- targetWWNs:
- items:
- type: string
- type: array
- wwids:
- items:
- type: string
- type: array
- type: object
- flexVolume:
- properties:
- driver:
- type: string
- fsType:
- type: string
- options:
- additionalProperties:
- type: string
- type: object
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- required:
- - driver
- type: object
- flocker:
- properties:
- datasetName:
- type: string
- datasetUUID:
- type: string
- type: object
- gcePersistentDisk:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- pdName:
- type: string
- readOnly:
- type: boolean
- required:
- - pdName
- type: object
- gitRepo:
- properties:
- directory:
- type: string
- repository:
- type: string
- revision:
- type: string
- required:
- - repository
- type: object
- glusterfs:
- properties:
- endpoints:
- type: string
- path:
- type: string
- readOnly:
- type: boolean
- required:
- - endpoints
- - path
- type: object
- hostPath:
- properties:
- path:
- type: string
- type:
- type: string
- required:
- - path
- type: object
- iscsi:
- properties:
- chapAuthDiscovery:
- type: boolean
- chapAuthSession:
- type: boolean
- fsType:
- type: string
- initiatorName:
- type: string
- iqn:
- type: string
- iscsiInterface:
- type: string
- lun:
- format: int32
- type: integer
- portals:
- items:
- type: string
- type: array
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- targetPortal:
- type: string
- required:
- - iqn
- - lun
- - targetPortal
- type: object
- name:
- type: string
- nfs:
- properties:
- path:
- type: string
- readOnly:
- type: boolean
- server:
- type: string
- required:
- - path
- - server
- type: object
- persistentVolumeClaim:
- properties:
- claimName:
- type: string
- readOnly:
- type: boolean
- required:
- - claimName
- type: object
- photonPersistentDisk:
- properties:
- fsType:
- type: string
- pdID:
- type: string
- required:
- - pdID
- type: object
- portworxVolume:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- projected:
- properties:
- defaultMode:
- format: int32
- type: integer
- sources:
- items:
- properties:
- configMap:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- downwardAPI:
- properties:
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- secret:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- serviceAccountToken:
- properties:
- audience:
- type: string
- expirationSeconds:
- format: int64
- type: integer
- path:
- type: string
- required:
- - path
- type: object
- type: object
- type: array
- type: object
- quobyte:
- properties:
- group:
- type: string
- readOnly:
- type: boolean
- registry:
- type: string
- tenant:
- type: string
- user:
- type: string
- volume:
- type: string
- required:
- - registry
- - volume
- type: object
- rbd:
- properties:
- fsType:
- type: string
- image:
- type: string
- keyring:
- type: string
- monitors:
- items:
- type: string
- type: array
- pool:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - image
- - monitors
- type: object
- scaleIO:
- properties:
- fsType:
- type: string
- gateway:
- type: string
- protectionDomain:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- sslEnabled:
- type: boolean
- storageMode:
- type: string
- storagePool:
- type: string
- system:
- type: string
- volumeName:
- type: string
- required:
- - gateway
- - secretRef
- - system
- type: object
- secret:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- optional:
- type: boolean
- secretName:
- type: string
- type: object
- storageos:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeName:
- type: string
- volumeNamespace:
- type: string
- type: object
- vsphereVolume:
- properties:
- fsType:
- type: string
- storagePolicyID:
- type: string
- storagePolicyName:
- type: string
- volumePath:
- type: string
- required:
- - volumePath
- type: object
- required:
- - name
- type: object
- type: array
- workflowMetadata:
- properties:
- annotations:
- additionalProperties:
- type: string
- type: object
- labels:
- additionalProperties:
- type: string
- type: object
- labelsFrom:
- additionalProperties:
- properties:
- expression:
- type: string
- required:
- - expression
- type: object
- type: object
- type: object
- workflowTemplateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- type: object
- type: object
- required:
- - metadata
- - spec
- type: object
- served: true
- storage: true
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_cronworkflows.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_cronworkflows.yaml
deleted file mode 100644
index a29cb60..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_cronworkflows.yaml
+++ /dev/null
@@ -1,15784 +0,0 @@
-# This is an auto-generated file. DO NOT EDIT
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata: # kpt-merge: /cronworkflows.argoproj.io
- name: cronworkflows.argoproj.io
-spec:
- group: argoproj.io
- names:
- kind: CronWorkflow
- listKind: CronWorkflowList
- plural: cronworkflows
- shortNames:
- - cwf
- - cronwf
- singular: cronworkflow
- scope: Namespaced
- versions:
- - name: v1alpha1
- schema:
- openAPIV3Schema:
- properties:
- apiVersion:
- type: string
- kind:
- type: string
- metadata:
- type: object
- spec:
- properties:
- concurrencyPolicy:
- type: string
- failedJobsHistoryLimit:
- format: int32
- type: integer
- schedule:
- type: string
- startingDeadlineSeconds:
- format: int64
- type: integer
- successfulJobsHistoryLimit:
- format: int32
- type: integer
- suspend:
- type: boolean
- timezone:
- type: string
- workflowMetadata:
- type: object
- workflowSpec:
- properties:
- activeDeadlineSeconds:
- format: int64
- type: integer
- affinity:
- properties:
- nodeAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- preference:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- weight:
- format: int32
- type: integer
- required:
- - preference
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- properties:
- nodeSelectorTerms:
- items:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- type: array
- required:
- - nodeSelectorTerms
- type: object
- type: object
- podAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- podAntiAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- type: object
- archiveLogs:
- type: boolean
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- artifactRepositoryRef:
- properties:
- configMap:
- type: string
- key:
- type: string
- type: object
- automountServiceAccountToken:
- type: boolean
- dnsConfig:
- properties:
- nameservers:
- items:
- type: string
- type: array
- options:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- type: object
- type: array
- searches:
- items:
- type: string
- type: array
- type: object
- dnsPolicy:
- type: string
- entrypoint:
- type: string
- executor:
- properties:
- serviceAccountName:
- type: string
- type: object
- hooks:
- additionalProperties:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- expression:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- type: object
- type: object
- hostAliases:
- items:
- properties:
- hostnames:
- items:
- type: string
- type: array
- ip:
- type: string
- type: object
- type: array
- hostNetwork:
- type: boolean
- imagePullSecrets:
- items:
- properties:
- name:
- type: string
- type: object
- type: array
- metrics:
- properties:
- prometheus:
- items:
- properties:
- counter:
- properties:
- value:
- type: string
- required:
- - value
- type: object
- gauge:
- properties:
- realtime:
- type: boolean
- value:
- type: string
- required:
- - realtime
- - value
- type: object
- help:
- type: string
- histogram:
- properties:
- buckets:
- items:
- type: number
- type: array
- value:
- type: string
- required:
- - buckets
- - value
- type: object
- labels:
- items:
- properties:
- key:
- type: string
- value:
- type: string
- required:
- - key
- - value
- type: object
- type: array
- name:
- type: string
- when:
- type: string
- required:
- - help
- - name
- type: object
- type: array
- required:
- - prometheus
- type: object
- nodeSelector:
- additionalProperties:
- type: string
- type: object
- onExit:
- type: string
- parallelism:
- format: int64
- type: integer
- podDisruptionBudget:
- properties:
- maxUnavailable:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- minAvailable:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- type: object
- podGC:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- strategy:
- type: string
- type: object
- podMetadata:
- properties:
- annotations:
- additionalProperties:
- type: string
- type: object
- labels:
- additionalProperties:
- type: string
- type: object
- type: object
- podPriority:
- format: int32
- type: integer
- podPriorityClassName:
- type: string
- podSpecPatch:
- type: string
- priority:
- format: int32
- type: integer
- retryStrategy:
- properties:
- affinity:
- properties:
- nodeAntiAffinity:
- type: object
- type: object
- backoff:
- properties:
- duration:
- type: string
- factor:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- maxDuration:
- type: string
- type: object
- expression:
- type: string
- limit:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- retryPolicy:
- type: string
- type: object
- schedulerName:
- type: string
- securityContext:
- properties:
- fsGroup:
- format: int64
- type: integer
- fsGroupChangePolicy:
- type: string
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- supplementalGroups:
- items:
- format: int64
- type: integer
- type: array
- sysctls:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- serviceAccountName:
- type: string
- shutdown:
- type: string
- suspend:
- type: boolean
- synchronization:
- properties:
- mutex:
- properties:
- name:
- type: string
- type: object
- semaphore:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- type: object
- templateDefaults:
- properties:
- activeDeadlineSeconds:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- affinity:
- properties:
- nodeAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- preference:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- weight:
- format: int32
- type: integer
- required:
- - preference
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- properties:
- nodeSelectorTerms:
- items:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- type: array
- required:
- - nodeSelectorTerms
- type: object
- type: object
- podAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- podAntiAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- type: object
- archiveLocation:
- properties:
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- type: object
- automountServiceAccountToken:
- type: boolean
- container:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- containerSet:
- properties:
- containers:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- dependencies:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- retryStrategy:
- properties:
- duration:
- type: string
- retries:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - retries
- type: object
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- required:
- - containers
- type: object
- daemon:
- type: boolean
- dag:
- properties:
- failFast:
- type: boolean
- target:
- type: string
- tasks:
- items:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- continueOn:
- properties:
- error:
- type: boolean
- failed:
- type: boolean
- type: object
- dependencies:
- items:
- type: string
- type: array
- depends:
- type: string
- hooks:
- additionalProperties:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- expression:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- type: object
- type: object
- inline: {}
- name:
- type: string
- onExit:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- when:
- type: string
- withItems:
- items:
- type: object
- type: array
- withParam:
- type: string
- withSequence:
- properties:
- count:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- end:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- format:
- type: string
- start:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- type: object
- required:
- - name
- type: object
- type: array
- required:
- - tasks
- type: object
- data:
- properties:
- source:
- properties:
- artifactPaths:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: object
- transformation:
- items:
- properties:
- expression:
- type: string
- required:
- - expression
- type: object
- type: array
- required:
- - source
- - transformation
- type: object
- executor:
- properties:
- serviceAccountName:
- type: string
- type: object
- failFast:
- type: boolean
- hostAliases:
- items:
- properties:
- hostnames:
- items:
- type: string
- type: array
- ip:
- type: string
- type: object
- type: array
- http:
- properties:
- body:
- type: string
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- insecureSkipVerify:
- type: boolean
- method:
- type: string
- successCondition:
- type: string
- timeoutSeconds:
- format: int64
- type: integer
- url:
- type: string
- required:
- - url
- type: object
- initContainers:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- mirrorVolumeMounts:
- type: boolean
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- inputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- memoize:
- properties:
- cache:
- properties:
- configMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - configMap
- type: object
- key:
- type: string
- maxAge:
- type: string
- required:
- - cache
- - key
- - maxAge
- type: object
- metadata:
- properties:
- annotations:
- additionalProperties:
- type: string
- type: object
- labels:
- additionalProperties:
- type: string
- type: object
- type: object
- metrics:
- properties:
- prometheus:
- items:
- properties:
- counter:
- properties:
- value:
- type: string
- required:
- - value
- type: object
- gauge:
- properties:
- realtime:
- type: boolean
- value:
- type: string
- required:
- - realtime
- - value
- type: object
- help:
- type: string
- histogram:
- properties:
- buckets:
- items:
- type: number
- type: array
- value:
- type: string
- required:
- - buckets
- - value
- type: object
- labels:
- items:
- properties:
- key:
- type: string
- value:
- type: string
- required:
- - key
- - value
- type: object
- type: array
- name:
- type: string
- when:
- type: string
- required:
- - help
- - name
- type: object
- type: array
- required:
- - prometheus
- type: object
- name:
- type: string
- nodeSelector:
- additionalProperties:
- type: string
- type: object
- outputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- exitCode:
- type: string
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- result:
- type: string
- type: object
- parallelism:
- format: int64
- type: integer
- plugin:
- type: object
- podSpecPatch:
- type: string
- priority:
- format: int32
- type: integer
- priorityClassName:
- type: string
- resource:
- properties:
- action:
- type: string
- failureCondition:
- type: string
- flags:
- items:
- type: string
- type: array
- manifest:
- type: string
- mergeStrategy:
- type: string
- setOwnerReference:
- type: boolean
- successCondition:
- type: string
- required:
- - action
- type: object
- retryStrategy:
- properties:
- affinity:
- properties:
- nodeAntiAffinity:
- type: object
- type: object
- backoff:
- properties:
- duration:
- type: string
- factor:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- maxDuration:
- type: string
- type: object
- expression:
- type: string
- limit:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- retryPolicy:
- type: string
- type: object
- schedulerName:
- type: string
- script:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- source:
- type: string
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- - source
- type: object
- securityContext:
- properties:
- fsGroup:
- format: int64
- type: integer
- fsGroupChangePolicy:
- type: string
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- supplementalGroups:
- items:
- format: int64
- type: integer
- type: array
- sysctls:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- serviceAccountName:
- type: string
- sidecars:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- mirrorVolumeMounts:
- type: boolean
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- steps:
- items:
- type: array
- type: array
- suspend:
- properties:
- duration:
- type: string
- type: object
- synchronization:
- properties:
- mutex:
- properties:
- name:
- type: string
- type: object
- semaphore:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- type: object
- timeout:
- type: string
- tolerations:
- items:
- properties:
- effect:
- type: string
- key:
- type: string
- operator:
- type: string
- tolerationSeconds:
- format: int64
- type: integer
- value:
- type: string
- type: object
- type: array
- volumes:
- items:
- properties:
- awsElasticBlockStore:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- azureDisk:
- properties:
- cachingMode:
- type: string
- diskName:
- type: string
- diskURI:
- type: string
- fsType:
- type: string
- kind:
- type: string
- readOnly:
- type: boolean
- required:
- - diskName
- - diskURI
- type: object
- azureFile:
- properties:
- readOnly:
- type: boolean
- secretName:
- type: string
- shareName:
- type: string
- required:
- - secretName
- - shareName
- type: object
- cephfs:
- properties:
- monitors:
- items:
- type: string
- type: array
- path:
- type: string
- readOnly:
- type: boolean
- secretFile:
- type: string
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - monitors
- type: object
- cinder:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- configMap:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- csi:
- properties:
- driver:
- type: string
- fsType:
- type: string
- nodePublishSecretRef:
- properties:
- name:
- type: string
- type: object
- readOnly:
- type: boolean
- volumeAttributes:
- additionalProperties:
- type: string
- type: object
- required:
- - driver
- type: object
- downwardAPI:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- emptyDir:
- properties:
- medium:
- type: string
- sizeLimit:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- ephemeral:
- properties:
- volumeClaimTemplate:
- properties:
- metadata:
- type: object
- spec:
- properties:
- accessModes:
- items:
- type: string
- type: array
- dataSource:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- dataSourceRef:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- storageClassName:
- type: string
- volumeMode:
- type: string
- volumeName:
- type: string
- type: object
- required:
- - spec
- type: object
- type: object
- fc:
- properties:
- fsType:
- type: string
- lun:
- format: int32
- type: integer
- readOnly:
- type: boolean
- targetWWNs:
- items:
- type: string
- type: array
- wwids:
- items:
- type: string
- type: array
- type: object
- flexVolume:
- properties:
- driver:
- type: string
- fsType:
- type: string
- options:
- additionalProperties:
- type: string
- type: object
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- required:
- - driver
- type: object
- flocker:
- properties:
- datasetName:
- type: string
- datasetUUID:
- type: string
- type: object
- gcePersistentDisk:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- pdName:
- type: string
- readOnly:
- type: boolean
- required:
- - pdName
- type: object
- gitRepo:
- properties:
- directory:
- type: string
- repository:
- type: string
- revision:
- type: string
- required:
- - repository
- type: object
- glusterfs:
- properties:
- endpoints:
- type: string
- path:
- type: string
- readOnly:
- type: boolean
- required:
- - endpoints
- - path
- type: object
- hostPath:
- properties:
- path:
- type: string
- type:
- type: string
- required:
- - path
- type: object
- iscsi:
- properties:
- chapAuthDiscovery:
- type: boolean
- chapAuthSession:
- type: boolean
- fsType:
- type: string
- initiatorName:
- type: string
- iqn:
- type: string
- iscsiInterface:
- type: string
- lun:
- format: int32
- type: integer
- portals:
- items:
- type: string
- type: array
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- targetPortal:
- type: string
- required:
- - iqn
- - lun
- - targetPortal
- type: object
- name:
- type: string
- nfs:
- properties:
- path:
- type: string
- readOnly:
- type: boolean
- server:
- type: string
- required:
- - path
- - server
- type: object
- persistentVolumeClaim:
- properties:
- claimName:
- type: string
- readOnly:
- type: boolean
- required:
- - claimName
- type: object
- photonPersistentDisk:
- properties:
- fsType:
- type: string
- pdID:
- type: string
- required:
- - pdID
- type: object
- portworxVolume:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- projected:
- properties:
- defaultMode:
- format: int32
- type: integer
- sources:
- items:
- properties:
- configMap:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- downwardAPI:
- properties:
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- secret:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- serviceAccountToken:
- properties:
- audience:
- type: string
- expirationSeconds:
- format: int64
- type: integer
- path:
- type: string
- required:
- - path
- type: object
- type: object
- type: array
- type: object
- quobyte:
- properties:
- group:
- type: string
- readOnly:
- type: boolean
- registry:
- type: string
- tenant:
- type: string
- user:
- type: string
- volume:
- type: string
- required:
- - registry
- - volume
- type: object
- rbd:
- properties:
- fsType:
- type: string
- image:
- type: string
- keyring:
- type: string
- monitors:
- items:
- type: string
- type: array
- pool:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - image
- - monitors
- type: object
- scaleIO:
- properties:
- fsType:
- type: string
- gateway:
- type: string
- protectionDomain:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- sslEnabled:
- type: boolean
- storageMode:
- type: string
- storagePool:
- type: string
- system:
- type: string
- volumeName:
- type: string
- required:
- - gateway
- - secretRef
- - system
- type: object
- secret:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- optional:
- type: boolean
- secretName:
- type: string
- type: object
- storageos:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeName:
- type: string
- volumeNamespace:
- type: string
- type: object
- vsphereVolume:
- properties:
- fsType:
- type: string
- storagePolicyID:
- type: string
- storagePolicyName:
- type: string
- volumePath:
- type: string
- required:
- - volumePath
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- templates:
- items:
- properties:
- activeDeadlineSeconds:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- affinity:
- properties:
- nodeAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- preference:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- weight:
- format: int32
- type: integer
- required:
- - preference
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- properties:
- nodeSelectorTerms:
- items:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- type: array
- required:
- - nodeSelectorTerms
- type: object
- type: object
- podAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- podAntiAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- type: object
- archiveLocation:
- properties:
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- type: object
- automountServiceAccountToken:
- type: boolean
- container:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - image
- type: object
- containerSet:
- properties:
- containers:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- dependencies:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- retryStrategy:
- properties:
- duration:
- type: string
- retries:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - retries
- type: object
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- required:
- - containers
- type: object
- daemon:
- type: boolean
- dag:
- properties:
- failFast:
- type: boolean
- target:
- type: string
- tasks:
- items:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- continueOn:
- properties:
- error:
- type: boolean
- failed:
- type: boolean
- type: object
- dependencies:
- items:
- type: string
- type: array
- depends:
- type: string
- hooks:
- additionalProperties:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- expression:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- type: object
- type: object
- inline: {}
- name:
- type: string
- onExit:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- when:
- type: string
- withItems:
- items:
- type: object
- type: array
- withParam:
- type: string
- withSequence:
- properties:
- count:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- end:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- format:
- type: string
- start:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- type: object
- required:
- - name
- type: object
- type: array
- required:
- - tasks
- type: object
- data:
- properties:
- source:
- properties:
- artifactPaths:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: object
- transformation:
- items:
- properties:
- expression:
- type: string
- required:
- - expression
- type: object
- type: array
- required:
- - source
- - transformation
- type: object
- executor:
- properties:
- serviceAccountName:
- type: string
- type: object
- failFast:
- type: boolean
- hostAliases:
- items:
- properties:
- hostnames:
- items:
- type: string
- type: array
- ip:
- type: string
- type: object
- type: array
- http:
- properties:
- body:
- type: string
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- insecureSkipVerify:
- type: boolean
- method:
- type: string
- successCondition:
- type: string
- timeoutSeconds:
- format: int64
- type: integer
- url:
- type: string
- required:
- - url
- type: object
- initContainers:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- mirrorVolumeMounts:
- type: boolean
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- inputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- memoize:
- properties:
- cache:
- properties:
- configMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - configMap
- type: object
- key:
- type: string
- maxAge:
- type: string
- required:
- - cache
- - key
- - maxAge
- type: object
- metadata:
- properties:
- annotations:
- additionalProperties:
- type: string
- type: object
- labels:
- additionalProperties:
- type: string
- type: object
- type: object
- metrics:
- properties:
- prometheus:
- items:
- properties:
- counter:
- properties:
- value:
- type: string
- required:
- - value
- type: object
- gauge:
- properties:
- realtime:
- type: boolean
- value:
- type: string
- required:
- - realtime
- - value
- type: object
- help:
- type: string
- histogram:
- properties:
- buckets:
- items:
- type: number
- type: array
- value:
- type: string
- required:
- - buckets
- - value
- type: object
- labels:
- items:
- properties:
- key:
- type: string
- value:
- type: string
- required:
- - key
- - value
- type: object
- type: array
- name:
- type: string
- when:
- type: string
- required:
- - help
- - name
- type: object
- type: array
- required:
- - prometheus
- type: object
- name:
- type: string
- nodeSelector:
- additionalProperties:
- type: string
- type: object
- outputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- exitCode:
- type: string
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- result:
- type: string
- type: object
- parallelism:
- format: int64
- type: integer
- plugin:
- type: object
- podSpecPatch:
- type: string
- priority:
- format: int32
- type: integer
- priorityClassName:
- type: string
- resource:
- properties:
- action:
- type: string
- failureCondition:
- type: string
- flags:
- items:
- type: string
- type: array
- manifest:
- type: string
- mergeStrategy:
- type: string
- setOwnerReference:
- type: boolean
- successCondition:
- type: string
- required:
- - action
- type: object
- retryStrategy:
- properties:
- affinity:
- properties:
- nodeAntiAffinity:
- type: object
- type: object
- backoff:
- properties:
- duration:
- type: string
- factor:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- maxDuration:
- type: string
- type: object
- expression:
- type: string
- limit:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- retryPolicy:
- type: string
- type: object
- schedulerName:
- type: string
- script:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- source:
- type: string
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - image
- - source
- type: object
- securityContext:
- properties:
- fsGroup:
- format: int64
- type: integer
- fsGroupChangePolicy:
- type: string
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- supplementalGroups:
- items:
- format: int64
- type: integer
- type: array
- sysctls:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- serviceAccountName:
- type: string
- sidecars:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- mirrorVolumeMounts:
- type: boolean
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- steps:
- items:
- type: array
- type: array
- suspend:
- properties:
- duration:
- type: string
- type: object
- synchronization:
- properties:
- mutex:
- properties:
- name:
- type: string
- type: object
- semaphore:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- type: object
- timeout:
- type: string
- tolerations:
- items:
- properties:
- effect:
- type: string
- key:
- type: string
- operator:
- type: string
- tolerationSeconds:
- format: int64
- type: integer
- value:
- type: string
- type: object
- type: array
- volumes:
- items:
- properties:
- awsElasticBlockStore:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- azureDisk:
- properties:
- cachingMode:
- type: string
- diskName:
- type: string
- diskURI:
- type: string
- fsType:
- type: string
- kind:
- type: string
- readOnly:
- type: boolean
- required:
- - diskName
- - diskURI
- type: object
- azureFile:
- properties:
- readOnly:
- type: boolean
- secretName:
- type: string
- shareName:
- type: string
- required:
- - secretName
- - shareName
- type: object
- cephfs:
- properties:
- monitors:
- items:
- type: string
- type: array
- path:
- type: string
- readOnly:
- type: boolean
- secretFile:
- type: string
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - monitors
- type: object
- cinder:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- configMap:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- csi:
- properties:
- driver:
- type: string
- fsType:
- type: string
- nodePublishSecretRef:
- properties:
- name:
- type: string
- type: object
- readOnly:
- type: boolean
- volumeAttributes:
- additionalProperties:
- type: string
- type: object
- required:
- - driver
- type: object
- downwardAPI:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- emptyDir:
- properties:
- medium:
- type: string
- sizeLimit:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- ephemeral:
- properties:
- volumeClaimTemplate:
- properties:
- metadata:
- type: object
- spec:
- properties:
- accessModes:
- items:
- type: string
- type: array
- dataSource:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- dataSourceRef:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- storageClassName:
- type: string
- volumeMode:
- type: string
- volumeName:
- type: string
- type: object
- required:
- - spec
- type: object
- type: object
- fc:
- properties:
- fsType:
- type: string
- lun:
- format: int32
- type: integer
- readOnly:
- type: boolean
- targetWWNs:
- items:
- type: string
- type: array
- wwids:
- items:
- type: string
- type: array
- type: object
- flexVolume:
- properties:
- driver:
- type: string
- fsType:
- type: string
- options:
- additionalProperties:
- type: string
- type: object
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- required:
- - driver
- type: object
- flocker:
- properties:
- datasetName:
- type: string
- datasetUUID:
- type: string
- type: object
- gcePersistentDisk:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- pdName:
- type: string
- readOnly:
- type: boolean
- required:
- - pdName
- type: object
- gitRepo:
- properties:
- directory:
- type: string
- repository:
- type: string
- revision:
- type: string
- required:
- - repository
- type: object
- glusterfs:
- properties:
- endpoints:
- type: string
- path:
- type: string
- readOnly:
- type: boolean
- required:
- - endpoints
- - path
- type: object
- hostPath:
- properties:
- path:
- type: string
- type:
- type: string
- required:
- - path
- type: object
- iscsi:
- properties:
- chapAuthDiscovery:
- type: boolean
- chapAuthSession:
- type: boolean
- fsType:
- type: string
- initiatorName:
- type: string
- iqn:
- type: string
- iscsiInterface:
- type: string
- lun:
- format: int32
- type: integer
- portals:
- items:
- type: string
- type: array
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- targetPortal:
- type: string
- required:
- - iqn
- - lun
- - targetPortal
- type: object
- name:
- type: string
- nfs:
- properties:
- path:
- type: string
- readOnly:
- type: boolean
- server:
- type: string
- required:
- - path
- - server
- type: object
- persistentVolumeClaim:
- properties:
- claimName:
- type: string
- readOnly:
- type: boolean
- required:
- - claimName
- type: object
- photonPersistentDisk:
- properties:
- fsType:
- type: string
- pdID:
- type: string
- required:
- - pdID
- type: object
- portworxVolume:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- projected:
- properties:
- defaultMode:
- format: int32
- type: integer
- sources:
- items:
- properties:
- configMap:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- downwardAPI:
- properties:
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- secret:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- serviceAccountToken:
- properties:
- audience:
- type: string
- expirationSeconds:
- format: int64
- type: integer
- path:
- type: string
- required:
- - path
- type: object
- type: object
- type: array
- type: object
- quobyte:
- properties:
- group:
- type: string
- readOnly:
- type: boolean
- registry:
- type: string
- tenant:
- type: string
- user:
- type: string
- volume:
- type: string
- required:
- - registry
- - volume
- type: object
- rbd:
- properties:
- fsType:
- type: string
- image:
- type: string
- keyring:
- type: string
- monitors:
- items:
- type: string
- type: array
- pool:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - image
- - monitors
- type: object
- scaleIO:
- properties:
- fsType:
- type: string
- gateway:
- type: string
- protectionDomain:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- sslEnabled:
- type: boolean
- storageMode:
- type: string
- storagePool:
- type: string
- system:
- type: string
- volumeName:
- type: string
- required:
- - gateway
- - secretRef
- - system
- type: object
- secret:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- optional:
- type: boolean
- secretName:
- type: string
- type: object
- storageos:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeName:
- type: string
- volumeNamespace:
- type: string
- type: object
- vsphereVolume:
- properties:
- fsType:
- type: string
- storagePolicyID:
- type: string
- storagePolicyName:
- type: string
- volumePath:
- type: string
- required:
- - volumePath
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- type: array
- tolerations:
- items:
- properties:
- effect:
- type: string
- key:
- type: string
- operator:
- type: string
- tolerationSeconds:
- format: int64
- type: integer
- value:
- type: string
- type: object
- type: array
- ttlStrategy:
- properties:
- secondsAfterCompletion:
- format: int32
- type: integer
- secondsAfterFailure:
- format: int32
- type: integer
- secondsAfterSuccess:
- format: int32
- type: integer
- type: object
- volumeClaimGC:
- properties:
- strategy:
- type: string
- type: object
- volumeClaimTemplates:
- items:
- properties:
- apiVersion:
- type: string
- kind:
- type: string
- metadata:
- type: object
- spec:
- properties:
- accessModes:
- items:
- type: string
- type: array
- dataSource:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- dataSourceRef:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- storageClassName:
- type: string
- volumeMode:
- type: string
- volumeName:
- type: string
- type: object
- status:
- properties:
- accessModes:
- items:
- type: string
- type: array
- allocatedResources:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- capacity:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- conditions:
- items:
- properties:
- lastProbeTime:
- format: date-time
- type: string
- lastTransitionTime:
- format: date-time
- type: string
- message:
- type: string
- reason:
- type: string
- status:
- type: string
- type:
- type: string
- required:
- - status
- - type
- type: object
- type: array
- phase:
- type: string
- resizeStatus:
- type: string
- type: object
- type: object
- type: array
- volumes:
- items:
- properties:
- awsElasticBlockStore:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- azureDisk:
- properties:
- cachingMode:
- type: string
- diskName:
- type: string
- diskURI:
- type: string
- fsType:
- type: string
- kind:
- type: string
- readOnly:
- type: boolean
- required:
- - diskName
- - diskURI
- type: object
- azureFile:
- properties:
- readOnly:
- type: boolean
- secretName:
- type: string
- shareName:
- type: string
- required:
- - secretName
- - shareName
- type: object
- cephfs:
- properties:
- monitors:
- items:
- type: string
- type: array
- path:
- type: string
- readOnly:
- type: boolean
- secretFile:
- type: string
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - monitors
- type: object
- cinder:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- configMap:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- csi:
- properties:
- driver:
- type: string
- fsType:
- type: string
- nodePublishSecretRef:
- properties:
- name:
- type: string
- type: object
- readOnly:
- type: boolean
- volumeAttributes:
- additionalProperties:
- type: string
- type: object
- required:
- - driver
- type: object
- downwardAPI:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- emptyDir:
- properties:
- medium:
- type: string
- sizeLimit:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- ephemeral:
- properties:
- volumeClaimTemplate:
- properties:
- metadata:
- type: object
- spec:
- properties:
- accessModes:
- items:
- type: string
- type: array
- dataSource:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- dataSourceRef:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- storageClassName:
- type: string
- volumeMode:
- type: string
- volumeName:
- type: string
- type: object
- required:
- - spec
- type: object
- type: object
- fc:
- properties:
- fsType:
- type: string
- lun:
- format: int32
- type: integer
- readOnly:
- type: boolean
- targetWWNs:
- items:
- type: string
- type: array
- wwids:
- items:
- type: string
- type: array
- type: object
- flexVolume:
- properties:
- driver:
- type: string
- fsType:
- type: string
- options:
- additionalProperties:
- type: string
- type: object
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- required:
- - driver
- type: object
- flocker:
- properties:
- datasetName:
- type: string
- datasetUUID:
- type: string
- type: object
- gcePersistentDisk:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- pdName:
- type: string
- readOnly:
- type: boolean
- required:
- - pdName
- type: object
- gitRepo:
- properties:
- directory:
- type: string
- repository:
- type: string
- revision:
- type: string
- required:
- - repository
- type: object
- glusterfs:
- properties:
- endpoints:
- type: string
- path:
- type: string
- readOnly:
- type: boolean
- required:
- - endpoints
- - path
- type: object
- hostPath:
- properties:
- path:
- type: string
- type:
- type: string
- required:
- - path
- type: object
- iscsi:
- properties:
- chapAuthDiscovery:
- type: boolean
- chapAuthSession:
- type: boolean
- fsType:
- type: string
- initiatorName:
- type: string
- iqn:
- type: string
- iscsiInterface:
- type: string
- lun:
- format: int32
- type: integer
- portals:
- items:
- type: string
- type: array
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- targetPortal:
- type: string
- required:
- - iqn
- - lun
- - targetPortal
- type: object
- name:
- type: string
- nfs:
- properties:
- path:
- type: string
- readOnly:
- type: boolean
- server:
- type: string
- required:
- - path
- - server
- type: object
- persistentVolumeClaim:
- properties:
- claimName:
- type: string
- readOnly:
- type: boolean
- required:
- - claimName
- type: object
- photonPersistentDisk:
- properties:
- fsType:
- type: string
- pdID:
- type: string
- required:
- - pdID
- type: object
- portworxVolume:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- projected:
- properties:
- defaultMode:
- format: int32
- type: integer
- sources:
- items:
- properties:
- configMap:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- downwardAPI:
- properties:
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- secret:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- serviceAccountToken:
- properties:
- audience:
- type: string
- expirationSeconds:
- format: int64
- type: integer
- path:
- type: string
- required:
- - path
- type: object
- type: object
- type: array
- type: object
- quobyte:
- properties:
- group:
- type: string
- readOnly:
- type: boolean
- registry:
- type: string
- tenant:
- type: string
- user:
- type: string
- volume:
- type: string
- required:
- - registry
- - volume
- type: object
- rbd:
- properties:
- fsType:
- type: string
- image:
- type: string
- keyring:
- type: string
- monitors:
- items:
- type: string
- type: array
- pool:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - image
- - monitors
- type: object
- scaleIO:
- properties:
- fsType:
- type: string
- gateway:
- type: string
- protectionDomain:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- sslEnabled:
- type: boolean
- storageMode:
- type: string
- storagePool:
- type: string
- system:
- type: string
- volumeName:
- type: string
- required:
- - gateway
- - secretRef
- - system
- type: object
- secret:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- optional:
- type: boolean
- secretName:
- type: string
- type: object
- storageos:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeName:
- type: string
- volumeNamespace:
- type: string
- type: object
- vsphereVolume:
- properties:
- fsType:
- type: string
- storagePolicyID:
- type: string
- storagePolicyName:
- type: string
- volumePath:
- type: string
- required:
- - volumePath
- type: object
- required:
- - name
- type: object
- type: array
- workflowMetadata:
- properties:
- annotations:
- additionalProperties:
- type: string
- type: object
- labels:
- additionalProperties:
- type: string
- type: object
- labelsFrom:
- additionalProperties:
- properties:
- expression:
- type: string
- required:
- - expression
- type: object
- type: object
- type: object
- workflowTemplateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- type: object
- type: object
- required:
- - schedule
- - workflowSpec
- type: object
- status:
- properties:
- active:
- items:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- kind:
- type: string
- name:
- type: string
- namespace:
- type: string
- resourceVersion:
- type: string
- uid:
- type: string
- type: object
- type: array
- conditions:
- items:
- properties:
- message:
- type: string
- status:
- type: string
- type:
- type: string
- type: object
- type: array
- lastScheduledTime:
- format: date-time
- type: string
- required:
- - active
- - conditions
- - lastScheduledTime
- type: object
- required:
- - metadata
- - spec
- type: object
- served: true
- storage: true
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workfloweventbindings.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workfloweventbindings.yaml
deleted file mode 100644
index b94ed5b..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workfloweventbindings.yaml
+++ /dev/null
@@ -1,445 +0,0 @@
-# This is an auto-generated file. DO NOT EDIT
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata: # kpt-merge: /workfloweventbindings.argoproj.io
- name: workfloweventbindings.argoproj.io
-spec:
- group: argoproj.io
- names:
- kind: WorkflowEventBinding
- listKind: WorkflowEventBindingList
- plural: workfloweventbindings
- shortNames:
- - wfeb
- singular: workfloweventbinding
- scope: Namespaced
- versions:
- - name: v1alpha1
- schema:
- openAPIV3Schema:
- properties:
- apiVersion:
- type: string
- kind:
- type: string
- metadata:
- type: object
- spec:
- properties:
- event:
- properties:
- selector:
- type: string
- required:
- - selector
- type: object
- submit:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- metadata:
- type: object
- workflowTemplateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- type: object
- required:
- - workflowTemplateRef
- type: object
- required:
- - event
- type: object
- required:
- - metadata
- - spec
- type: object
- served: true
- storage: true
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workflows.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workflows.yaml
deleted file mode 100644
index ac4e733..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workflows.yaml
+++ /dev/null
@@ -1,40320 +0,0 @@
-# This is an auto-generated file. DO NOT EDIT
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata: # kpt-merge: /workflows.argoproj.io
- name: workflows.argoproj.io
-spec:
- group: argoproj.io
- names:
- kind: Workflow
- listKind: WorkflowList
- plural: workflows
- shortNames:
- - wf
- singular: workflow
- scope: Namespaced
- versions:
- - additionalPrinterColumns:
- - description: Status of the workflow
- jsonPath: .status.phase
- name: Status
- type: string
- - description: When the workflow was started
- format: date-time
- jsonPath: .status.startedAt
- name: Age
- type: date
- name: v1alpha1
- schema:
- openAPIV3Schema:
- properties:
- apiVersion:
- type: string
- kind:
- type: string
- metadata:
- type: object
- spec:
- properties:
- activeDeadlineSeconds:
- format: int64
- type: integer
- affinity:
- properties:
- nodeAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- preference:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- weight:
- format: int32
- type: integer
- required:
- - preference
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- properties:
- nodeSelectorTerms:
- items:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- type: array
- required:
- - nodeSelectorTerms
- type: object
- type: object
- podAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- podAntiAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- type: object
- archiveLogs:
- type: boolean
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- artifactRepositoryRef:
- properties:
- configMap:
- type: string
- key:
- type: string
- type: object
- automountServiceAccountToken:
- type: boolean
- dnsConfig:
- properties:
- nameservers:
- items:
- type: string
- type: array
- options:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- type: object
- type: array
- searches:
- items:
- type: string
- type: array
- type: object
- dnsPolicy:
- type: string
- entrypoint:
- type: string
- executor:
- properties:
- serviceAccountName:
- type: string
- type: object
- hooks:
- additionalProperties:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- expression:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- type: object
- type: object
- hostAliases:
- items:
- properties:
- hostnames:
- items:
- type: string
- type: array
- ip:
- type: string
- type: object
- type: array
- hostNetwork:
- type: boolean
- imagePullSecrets:
- items:
- properties:
- name:
- type: string
- type: object
- type: array
- metrics:
- properties:
- prometheus:
- items:
- properties:
- counter:
- properties:
- value:
- type: string
- required:
- - value
- type: object
- gauge:
- properties:
- realtime:
- type: boolean
- value:
- type: string
- required:
- - realtime
- - value
- type: object
- help:
- type: string
- histogram:
- properties:
- buckets:
- items:
- type: number
- type: array
- value:
- type: string
- required:
- - buckets
- - value
- type: object
- labels:
- items:
- properties:
- key:
- type: string
- value:
- type: string
- required:
- - key
- - value
- type: object
- type: array
- name:
- type: string
- when:
- type: string
- required:
- - help
- - name
- type: object
- type: array
- required:
- - prometheus
- type: object
- nodeSelector:
- additionalProperties:
- type: string
- type: object
- onExit:
- type: string
- parallelism:
- format: int64
- type: integer
- podDisruptionBudget:
- properties:
- maxUnavailable:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- minAvailable:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- type: object
- podGC:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- strategy:
- type: string
- type: object
- podMetadata:
- properties:
- annotations:
- additionalProperties:
- type: string
- type: object
- labels:
- additionalProperties:
- type: string
- type: object
- type: object
- podPriority:
- format: int32
- type: integer
- podPriorityClassName:
- type: string
- podSpecPatch:
- type: string
- priority:
- format: int32
- type: integer
- retryStrategy:
- properties:
- affinity:
- properties:
- nodeAntiAffinity:
- type: object
- type: object
- backoff:
- properties:
- duration:
- type: string
- factor:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- maxDuration:
- type: string
- type: object
- expression:
- type: string
- limit:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- retryPolicy:
- type: string
- type: object
- schedulerName:
- type: string
- securityContext:
- properties:
- fsGroup:
- format: int64
- type: integer
- fsGroupChangePolicy:
- type: string
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- supplementalGroups:
- items:
- format: int64
- type: integer
- type: array
- sysctls:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- serviceAccountName:
- type: string
- shutdown:
- type: string
- suspend:
- type: boolean
- synchronization:
- properties:
- mutex:
- properties:
- name:
- type: string
- type: object
- semaphore:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- type: object
- templateDefaults:
- properties:
- activeDeadlineSeconds:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- affinity:
- properties:
- nodeAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- preference:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- weight:
- format: int32
- type: integer
- required:
- - preference
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- properties:
- nodeSelectorTerms:
- items:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- type: array
- required:
- - nodeSelectorTerms
- type: object
- type: object
- podAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- podAntiAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- type: object
- archiveLocation:
- properties:
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- type: object
- automountServiceAccountToken:
- type: boolean
- container:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- containerSet:
- properties:
- containers:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- dependencies:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- retryStrategy:
- properties:
- duration:
- type: string
- retries:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - retries
- type: object
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- required:
- - containers
- type: object
- daemon:
- type: boolean
- dag:
- properties:
- failFast:
- type: boolean
- target:
- type: string
- tasks:
- items:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- continueOn:
- properties:
- error:
- type: boolean
- failed:
- type: boolean
- type: object
- dependencies:
- items:
- type: string
- type: array
- depends:
- type: string
- hooks:
- additionalProperties:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- expression:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- type: object
- type: object
- inline: {}
- name:
- type: string
- onExit:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- when:
- type: string
- withItems:
- items:
- type: object
- type: array
- withParam:
- type: string
- withSequence:
- properties:
- count:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- end:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- format:
- type: string
- start:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- type: object
- required:
- - name
- type: object
- type: array
- required:
- - tasks
- type: object
- data:
- properties:
- source:
- properties:
- artifactPaths:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: object
- transformation:
- items:
- properties:
- expression:
- type: string
- required:
- - expression
- type: object
- type: array
- required:
- - source
- - transformation
- type: object
- executor:
- properties:
- serviceAccountName:
- type: string
- type: object
- failFast:
- type: boolean
- hostAliases:
- items:
- properties:
- hostnames:
- items:
- type: string
- type: array
- ip:
- type: string
- type: object
- type: array
- http:
- properties:
- body:
- type: string
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- insecureSkipVerify:
- type: boolean
- method:
- type: string
- successCondition:
- type: string
- timeoutSeconds:
- format: int64
- type: integer
- url:
- type: string
- required:
- - url
- type: object
- initContainers:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- mirrorVolumeMounts:
- type: boolean
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- inputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- memoize:
- properties:
- cache:
- properties:
- configMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - configMap
- type: object
- key:
- type: string
- maxAge:
- type: string
- required:
- - cache
- - key
- - maxAge
- type: object
- metadata:
- properties:
- annotations:
- additionalProperties:
- type: string
- type: object
- labels:
- additionalProperties:
- type: string
- type: object
- type: object
- metrics:
- properties:
- prometheus:
- items:
- properties:
- counter:
- properties:
- value:
- type: string
- required:
- - value
- type: object
- gauge:
- properties:
- realtime:
- type: boolean
- value:
- type: string
- required:
- - realtime
- - value
- type: object
- help:
- type: string
- histogram:
- properties:
- buckets:
- items:
- type: number
- type: array
- value:
- type: string
- required:
- - buckets
- - value
- type: object
- labels:
- items:
- properties:
- key:
- type: string
- value:
- type: string
- required:
- - key
- - value
- type: object
- type: array
- name:
- type: string
- when:
- type: string
- required:
- - help
- - name
- type: object
- type: array
- required:
- - prometheus
- type: object
- name:
- type: string
- nodeSelector:
- additionalProperties:
- type: string
- type: object
- outputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- exitCode:
- type: string
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- result:
- type: string
- type: object
- parallelism:
- format: int64
- type: integer
- plugin:
- type: object
- podSpecPatch:
- type: string
- priority:
- format: int32
- type: integer
- priorityClassName:
- type: string
- resource:
- properties:
- action:
- type: string
- failureCondition:
- type: string
- flags:
- items:
- type: string
- type: array
- manifest:
- type: string
- mergeStrategy:
- type: string
- setOwnerReference:
- type: boolean
- successCondition:
- type: string
- required:
- - action
- type: object
- retryStrategy:
- properties:
- affinity:
- properties:
- nodeAntiAffinity:
- type: object
- type: object
- backoff:
- properties:
- duration:
- type: string
- factor:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- maxDuration:
- type: string
- type: object
- expression:
- type: string
- limit:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- retryPolicy:
- type: string
- type: object
- schedulerName:
- type: string
- script:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- source:
- type: string
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- - source
- type: object
- securityContext:
- properties:
- fsGroup:
- format: int64
- type: integer
- fsGroupChangePolicy:
- type: string
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- supplementalGroups:
- items:
- format: int64
- type: integer
- type: array
- sysctls:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- serviceAccountName:
- type: string
- sidecars:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- mirrorVolumeMounts:
- type: boolean
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- steps:
- items:
- type: array
- type: array
- suspend:
- properties:
- duration:
- type: string
- type: object
- synchronization:
- properties:
- mutex:
- properties:
- name:
- type: string
- type: object
- semaphore:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- type: object
- timeout:
- type: string
- tolerations:
- items:
- properties:
- effect:
- type: string
- key:
- type: string
- operator:
- type: string
- tolerationSeconds:
- format: int64
- type: integer
- value:
- type: string
- type: object
- type: array
- volumes:
- items:
- properties:
- awsElasticBlockStore:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- azureDisk:
- properties:
- cachingMode:
- type: string
- diskName:
- type: string
- diskURI:
- type: string
- fsType:
- type: string
- kind:
- type: string
- readOnly:
- type: boolean
- required:
- - diskName
- - diskURI
- type: object
- azureFile:
- properties:
- readOnly:
- type: boolean
- secretName:
- type: string
- shareName:
- type: string
- required:
- - secretName
- - shareName
- type: object
- cephfs:
- properties:
- monitors:
- items:
- type: string
- type: array
- path:
- type: string
- readOnly:
- type: boolean
- secretFile:
- type: string
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - monitors
- type: object
- cinder:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- configMap:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- csi:
- properties:
- driver:
- type: string
- fsType:
- type: string
- nodePublishSecretRef:
- properties:
- name:
- type: string
- type: object
- readOnly:
- type: boolean
- volumeAttributes:
- additionalProperties:
- type: string
- type: object
- required:
- - driver
- type: object
- downwardAPI:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- emptyDir:
- properties:
- medium:
- type: string
- sizeLimit:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- ephemeral:
- properties:
- volumeClaimTemplate:
- properties:
- metadata:
- type: object
- spec:
- properties:
- accessModes:
- items:
- type: string
- type: array
- dataSource:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- dataSourceRef:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- storageClassName:
- type: string
- volumeMode:
- type: string
- volumeName:
- type: string
- type: object
- required:
- - spec
- type: object
- type: object
- fc:
- properties:
- fsType:
- type: string
- lun:
- format: int32
- type: integer
- readOnly:
- type: boolean
- targetWWNs:
- items:
- type: string
- type: array
- wwids:
- items:
- type: string
- type: array
- type: object
- flexVolume:
- properties:
- driver:
- type: string
- fsType:
- type: string
- options:
- additionalProperties:
- type: string
- type: object
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- required:
- - driver
- type: object
- flocker:
- properties:
- datasetName:
- type: string
- datasetUUID:
- type: string
- type: object
- gcePersistentDisk:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- pdName:
- type: string
- readOnly:
- type: boolean
- required:
- - pdName
- type: object
- gitRepo:
- properties:
- directory:
- type: string
- repository:
- type: string
- revision:
- type: string
- required:
- - repository
- type: object
- glusterfs:
- properties:
- endpoints:
- type: string
- path:
- type: string
- readOnly:
- type: boolean
- required:
- - endpoints
- - path
- type: object
- hostPath:
- properties:
- path:
- type: string
- type:
- type: string
- required:
- - path
- type: object
- iscsi:
- properties:
- chapAuthDiscovery:
- type: boolean
- chapAuthSession:
- type: boolean
- fsType:
- type: string
- initiatorName:
- type: string
- iqn:
- type: string
- iscsiInterface:
- type: string
- lun:
- format: int32
- type: integer
- portals:
- items:
- type: string
- type: array
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- targetPortal:
- type: string
- required:
- - iqn
- - lun
- - targetPortal
- type: object
- name:
- type: string
- nfs:
- properties:
- path:
- type: string
- readOnly:
- type: boolean
- server:
- type: string
- required:
- - path
- - server
- type: object
- persistentVolumeClaim:
- properties:
- claimName:
- type: string
- readOnly:
- type: boolean
- required:
- - claimName
- type: object
- photonPersistentDisk:
- properties:
- fsType:
- type: string
- pdID:
- type: string
- required:
- - pdID
- type: object
- portworxVolume:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- projected:
- properties:
- defaultMode:
- format: int32
- type: integer
- sources:
- items:
- properties:
- configMap:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- downwardAPI:
- properties:
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- secret:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- serviceAccountToken:
- properties:
- audience:
- type: string
- expirationSeconds:
- format: int64
- type: integer
- path:
- type: string
- required:
- - path
- type: object
- type: object
- type: array
- type: object
- quobyte:
- properties:
- group:
- type: string
- readOnly:
- type: boolean
- registry:
- type: string
- tenant:
- type: string
- user:
- type: string
- volume:
- type: string
- required:
- - registry
- - volume
- type: object
- rbd:
- properties:
- fsType:
- type: string
- image:
- type: string
- keyring:
- type: string
- monitors:
- items:
- type: string
- type: array
- pool:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - image
- - monitors
- type: object
- scaleIO:
- properties:
- fsType:
- type: string
- gateway:
- type: string
- protectionDomain:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- sslEnabled:
- type: boolean
- storageMode:
- type: string
- storagePool:
- type: string
- system:
- type: string
- volumeName:
- type: string
- required:
- - gateway
- - secretRef
- - system
- type: object
- secret:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- optional:
- type: boolean
- secretName:
- type: string
- type: object
- storageos:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeName:
- type: string
- volumeNamespace:
- type: string
- type: object
- vsphereVolume:
- properties:
- fsType:
- type: string
- storagePolicyID:
- type: string
- storagePolicyName:
- type: string
- volumePath:
- type: string
- required:
- - volumePath
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- templates:
- items:
- properties:
- activeDeadlineSeconds:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- affinity:
- properties:
- nodeAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- preference:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- weight:
- format: int32
- type: integer
- required:
- - preference
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- properties:
- nodeSelectorTerms:
- items:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- type: array
- required:
- - nodeSelectorTerms
- type: object
- type: object
- podAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- podAntiAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- type: object
- archiveLocation:
- properties:
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- type: object
- automountServiceAccountToken:
- type: boolean
- container:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - image
- type: object
- containerSet:
- properties:
- containers:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- dependencies:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- retryStrategy:
- properties:
- duration:
- type: string
- retries:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - retries
- type: object
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- required:
- - containers
- type: object
- daemon:
- type: boolean
- dag:
- properties:
- failFast:
- type: boolean
- target:
- type: string
- tasks:
- items:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- continueOn:
- properties:
- error:
- type: boolean
- failed:
- type: boolean
- type: object
- dependencies:
- items:
- type: string
- type: array
- depends:
- type: string
- hooks:
- additionalProperties:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- expression:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- type: object
- type: object
- inline: {}
- name:
- type: string
- onExit:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- when:
- type: string
- withItems:
- items:
- type: object
- type: array
- withParam:
- type: string
- withSequence:
- properties:
- count:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- end:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- format:
- type: string
- start:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- type: object
- required:
- - name
- type: object
- type: array
- required:
- - tasks
- type: object
- data:
- properties:
- source:
- properties:
- artifactPaths:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: object
- transformation:
- items:
- properties:
- expression:
- type: string
- required:
- - expression
- type: object
- type: array
- required:
- - source
- - transformation
- type: object
- executor:
- properties:
- serviceAccountName:
- type: string
- type: object
- failFast:
- type: boolean
- hostAliases:
- items:
- properties:
- hostnames:
- items:
- type: string
- type: array
- ip:
- type: string
- type: object
- type: array
- http:
- properties:
- body:
- type: string
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- insecureSkipVerify:
- type: boolean
- method:
- type: string
- successCondition:
- type: string
- timeoutSeconds:
- format: int64
- type: integer
- url:
- type: string
- required:
- - url
- type: object
- initContainers:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- mirrorVolumeMounts:
- type: boolean
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- inputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- memoize:
- properties:
- cache:
- properties:
- configMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - configMap
- type: object
- key:
- type: string
- maxAge:
- type: string
- required:
- - cache
- - key
- - maxAge
- type: object
- metadata:
- properties:
- annotations:
- additionalProperties:
- type: string
- type: object
- labels:
- additionalProperties:
- type: string
- type: object
- type: object
- metrics:
- properties:
- prometheus:
- items:
- properties:
- counter:
- properties:
- value:
- type: string
- required:
- - value
- type: object
- gauge:
- properties:
- realtime:
- type: boolean
- value:
- type: string
- required:
- - realtime
- - value
- type: object
- help:
- type: string
- histogram:
- properties:
- buckets:
- items:
- type: number
- type: array
- value:
- type: string
- required:
- - buckets
- - value
- type: object
- labels:
- items:
- properties:
- key:
- type: string
- value:
- type: string
- required:
- - key
- - value
- type: object
- type: array
- name:
- type: string
- when:
- type: string
- required:
- - help
- - name
- type: object
- type: array
- required:
- - prometheus
- type: object
- name:
- type: string
- nodeSelector:
- additionalProperties:
- type: string
- type: object
- outputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- exitCode:
- type: string
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- result:
- type: string
- type: object
- parallelism:
- format: int64
- type: integer
- plugin:
- type: object
- podSpecPatch:
- type: string
- priority:
- format: int32
- type: integer
- priorityClassName:
- type: string
- resource:
- properties:
- action:
- type: string
- failureCondition:
- type: string
- flags:
- items:
- type: string
- type: array
- manifest:
- type: string
- mergeStrategy:
- type: string
- setOwnerReference:
- type: boolean
- successCondition:
- type: string
- required:
- - action
- type: object
- retryStrategy:
- properties:
- affinity:
- properties:
- nodeAntiAffinity:
- type: object
- type: object
- backoff:
- properties:
- duration:
- type: string
- factor:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- maxDuration:
- type: string
- type: object
- expression:
- type: string
- limit:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- retryPolicy:
- type: string
- type: object
- schedulerName:
- type: string
- script:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- source:
- type: string
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - image
- - source
- type: object
- securityContext:
- properties:
- fsGroup:
- format: int64
- type: integer
- fsGroupChangePolicy:
- type: string
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- supplementalGroups:
- items:
- format: int64
- type: integer
- type: array
- sysctls:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- serviceAccountName:
- type: string
- sidecars:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- mirrorVolumeMounts:
- type: boolean
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- steps:
- items:
- type: array
- type: array
- suspend:
- properties:
- duration:
- type: string
- type: object
- synchronization:
- properties:
- mutex:
- properties:
- name:
- type: string
- type: object
- semaphore:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- type: object
- timeout:
- type: string
- tolerations:
- items:
- properties:
- effect:
- type: string
- key:
- type: string
- operator:
- type: string
- tolerationSeconds:
- format: int64
- type: integer
- value:
- type: string
- type: object
- type: array
- volumes:
- items:
- properties:
- awsElasticBlockStore:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- azureDisk:
- properties:
- cachingMode:
- type: string
- diskName:
- type: string
- diskURI:
- type: string
- fsType:
- type: string
- kind:
- type: string
- readOnly:
- type: boolean
- required:
- - diskName
- - diskURI
- type: object
- azureFile:
- properties:
- readOnly:
- type: boolean
- secretName:
- type: string
- shareName:
- type: string
- required:
- - secretName
- - shareName
- type: object
- cephfs:
- properties:
- monitors:
- items:
- type: string
- type: array
- path:
- type: string
- readOnly:
- type: boolean
- secretFile:
- type: string
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - monitors
- type: object
- cinder:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- configMap:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- csi:
- properties:
- driver:
- type: string
- fsType:
- type: string
- nodePublishSecretRef:
- properties:
- name:
- type: string
- type: object
- readOnly:
- type: boolean
- volumeAttributes:
- additionalProperties:
- type: string
- type: object
- required:
- - driver
- type: object
- downwardAPI:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- emptyDir:
- properties:
- medium:
- type: string
- sizeLimit:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- ephemeral:
- properties:
- volumeClaimTemplate:
- properties:
- metadata:
- type: object
- spec:
- properties:
- accessModes:
- items:
- type: string
- type: array
- dataSource:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- dataSourceRef:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- storageClassName:
- type: string
- volumeMode:
- type: string
- volumeName:
- type: string
- type: object
- required:
- - spec
- type: object
- type: object
- fc:
- properties:
- fsType:
- type: string
- lun:
- format: int32
- type: integer
- readOnly:
- type: boolean
- targetWWNs:
- items:
- type: string
- type: array
- wwids:
- items:
- type: string
- type: array
- type: object
- flexVolume:
- properties:
- driver:
- type: string
- fsType:
- type: string
- options:
- additionalProperties:
- type: string
- type: object
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- required:
- - driver
- type: object
- flocker:
- properties:
- datasetName:
- type: string
- datasetUUID:
- type: string
- type: object
- gcePersistentDisk:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- pdName:
- type: string
- readOnly:
- type: boolean
- required:
- - pdName
- type: object
- gitRepo:
- properties:
- directory:
- type: string
- repository:
- type: string
- revision:
- type: string
- required:
- - repository
- type: object
- glusterfs:
- properties:
- endpoints:
- type: string
- path:
- type: string
- readOnly:
- type: boolean
- required:
- - endpoints
- - path
- type: object
- hostPath:
- properties:
- path:
- type: string
- type:
- type: string
- required:
- - path
- type: object
- iscsi:
- properties:
- chapAuthDiscovery:
- type: boolean
- chapAuthSession:
- type: boolean
- fsType:
- type: string
- initiatorName:
- type: string
- iqn:
- type: string
- iscsiInterface:
- type: string
- lun:
- format: int32
- type: integer
- portals:
- items:
- type: string
- type: array
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- targetPortal:
- type: string
- required:
- - iqn
- - lun
- - targetPortal
- type: object
- name:
- type: string
- nfs:
- properties:
- path:
- type: string
- readOnly:
- type: boolean
- server:
- type: string
- required:
- - path
- - server
- type: object
- persistentVolumeClaim:
- properties:
- claimName:
- type: string
- readOnly:
- type: boolean
- required:
- - claimName
- type: object
- photonPersistentDisk:
- properties:
- fsType:
- type: string
- pdID:
- type: string
- required:
- - pdID
- type: object
- portworxVolume:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- projected:
- properties:
- defaultMode:
- format: int32
- type: integer
- sources:
- items:
- properties:
- configMap:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- downwardAPI:
- properties:
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- secret:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- serviceAccountToken:
- properties:
- audience:
- type: string
- expirationSeconds:
- format: int64
- type: integer
- path:
- type: string
- required:
- - path
- type: object
- type: object
- type: array
- type: object
- quobyte:
- properties:
- group:
- type: string
- readOnly:
- type: boolean
- registry:
- type: string
- tenant:
- type: string
- user:
- type: string
- volume:
- type: string
- required:
- - registry
- - volume
- type: object
- rbd:
- properties:
- fsType:
- type: string
- image:
- type: string
- keyring:
- type: string
- monitors:
- items:
- type: string
- type: array
- pool:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - image
- - monitors
- type: object
- scaleIO:
- properties:
- fsType:
- type: string
- gateway:
- type: string
- protectionDomain:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- sslEnabled:
- type: boolean
- storageMode:
- type: string
- storagePool:
- type: string
- system:
- type: string
- volumeName:
- type: string
- required:
- - gateway
- - secretRef
- - system
- type: object
- secret:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- optional:
- type: boolean
- secretName:
- type: string
- type: object
- storageos:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeName:
- type: string
- volumeNamespace:
- type: string
- type: object
- vsphereVolume:
- properties:
- fsType:
- type: string
- storagePolicyID:
- type: string
- storagePolicyName:
- type: string
- volumePath:
- type: string
- required:
- - volumePath
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- type: array
- tolerations:
- items:
- properties:
- effect:
- type: string
- key:
- type: string
- operator:
- type: string
- tolerationSeconds:
- format: int64
- type: integer
- value:
- type: string
- type: object
- type: array
- ttlStrategy:
- properties:
- secondsAfterCompletion:
- format: int32
- type: integer
- secondsAfterFailure:
- format: int32
- type: integer
- secondsAfterSuccess:
- format: int32
- type: integer
- type: object
- volumeClaimGC:
- properties:
- strategy:
- type: string
- type: object
- volumeClaimTemplates:
- items:
- properties:
- apiVersion:
- type: string
- kind:
- type: string
- metadata:
- type: object
- spec:
- properties:
- accessModes:
- items:
- type: string
- type: array
- dataSource:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- dataSourceRef:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- storageClassName:
- type: string
- volumeMode:
- type: string
- volumeName:
- type: string
- type: object
- status:
- properties:
- accessModes:
- items:
- type: string
- type: array
- allocatedResources:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- capacity:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- conditions:
- items:
- properties:
- lastProbeTime:
- format: date-time
- type: string
- lastTransitionTime:
- format: date-time
- type: string
- message:
- type: string
- reason:
- type: string
- status:
- type: string
- type:
- type: string
- required:
- - status
- - type
- type: object
- type: array
- phase:
- type: string
- resizeStatus:
- type: string
- type: object
- type: object
- type: array
- volumes:
- items:
- properties:
- awsElasticBlockStore:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- azureDisk:
- properties:
- cachingMode:
- type: string
- diskName:
- type: string
- diskURI:
- type: string
- fsType:
- type: string
- kind:
- type: string
- readOnly:
- type: boolean
- required:
- - diskName
- - diskURI
- type: object
- azureFile:
- properties:
- readOnly:
- type: boolean
- secretName:
- type: string
- shareName:
- type: string
- required:
- - secretName
- - shareName
- type: object
- cephfs:
- properties:
- monitors:
- items:
- type: string
- type: array
- path:
- type: string
- readOnly:
- type: boolean
- secretFile:
- type: string
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - monitors
- type: object
- cinder:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- configMap:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- csi:
- properties:
- driver:
- type: string
- fsType:
- type: string
- nodePublishSecretRef:
- properties:
- name:
- type: string
- type: object
- readOnly:
- type: boolean
- volumeAttributes:
- additionalProperties:
- type: string
- type: object
- required:
- - driver
- type: object
- downwardAPI:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- emptyDir:
- properties:
- medium:
- type: string
- sizeLimit:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- ephemeral:
- properties:
- volumeClaimTemplate:
- properties:
- metadata:
- type: object
- spec:
- properties:
- accessModes:
- items:
- type: string
- type: array
- dataSource:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- dataSourceRef:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- storageClassName:
- type: string
- volumeMode:
- type: string
- volumeName:
- type: string
- type: object
- required:
- - spec
- type: object
- type: object
- fc:
- properties:
- fsType:
- type: string
- lun:
- format: int32
- type: integer
- readOnly:
- type: boolean
- targetWWNs:
- items:
- type: string
- type: array
- wwids:
- items:
- type: string
- type: array
- type: object
- flexVolume:
- properties:
- driver:
- type: string
- fsType:
- type: string
- options:
- additionalProperties:
- type: string
- type: object
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- required:
- - driver
- type: object
- flocker:
- properties:
- datasetName:
- type: string
- datasetUUID:
- type: string
- type: object
- gcePersistentDisk:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- pdName:
- type: string
- readOnly:
- type: boolean
- required:
- - pdName
- type: object
- gitRepo:
- properties:
- directory:
- type: string
- repository:
- type: string
- revision:
- type: string
- required:
- - repository
- type: object
- glusterfs:
- properties:
- endpoints:
- type: string
- path:
- type: string
- readOnly:
- type: boolean
- required:
- - endpoints
- - path
- type: object
- hostPath:
- properties:
- path:
- type: string
- type:
- type: string
- required:
- - path
- type: object
- iscsi:
- properties:
- chapAuthDiscovery:
- type: boolean
- chapAuthSession:
- type: boolean
- fsType:
- type: string
- initiatorName:
- type: string
- iqn:
- type: string
- iscsiInterface:
- type: string
- lun:
- format: int32
- type: integer
- portals:
- items:
- type: string
- type: array
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- targetPortal:
- type: string
- required:
- - iqn
- - lun
- - targetPortal
- type: object
- name:
- type: string
- nfs:
- properties:
- path:
- type: string
- readOnly:
- type: boolean
- server:
- type: string
- required:
- - path
- - server
- type: object
- persistentVolumeClaim:
- properties:
- claimName:
- type: string
- readOnly:
- type: boolean
- required:
- - claimName
- type: object
- photonPersistentDisk:
- properties:
- fsType:
- type: string
- pdID:
- type: string
- required:
- - pdID
- type: object
- portworxVolume:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- projected:
- properties:
- defaultMode:
- format: int32
- type: integer
- sources:
- items:
- properties:
- configMap:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- downwardAPI:
- properties:
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- secret:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- serviceAccountToken:
- properties:
- audience:
- type: string
- expirationSeconds:
- format: int64
- type: integer
- path:
- type: string
- required:
- - path
- type: object
- type: object
- type: array
- type: object
- quobyte:
- properties:
- group:
- type: string
- readOnly:
- type: boolean
- registry:
- type: string
- tenant:
- type: string
- user:
- type: string
- volume:
- type: string
- required:
- - registry
- - volume
- type: object
- rbd:
- properties:
- fsType:
- type: string
- image:
- type: string
- keyring:
- type: string
- monitors:
- items:
- type: string
- type: array
- pool:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - image
- - monitors
- type: object
- scaleIO:
- properties:
- fsType:
- type: string
- gateway:
- type: string
- protectionDomain:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- sslEnabled:
- type: boolean
- storageMode:
- type: string
- storagePool:
- type: string
- system:
- type: string
- volumeName:
- type: string
- required:
- - gateway
- - secretRef
- - system
- type: object
- secret:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- optional:
- type: boolean
- secretName:
- type: string
- type: object
- storageos:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeName:
- type: string
- volumeNamespace:
- type: string
- type: object
- vsphereVolume:
- properties:
- fsType:
- type: string
- storagePolicyID:
- type: string
- storagePolicyName:
- type: string
- volumePath:
- type: string
- required:
- - volumePath
- type: object
- required:
- - name
- type: object
- type: array
- workflowMetadata:
- properties:
- annotations:
- additionalProperties:
- type: string
- type: object
- labels:
- additionalProperties:
- type: string
- type: object
- labelsFrom:
- additionalProperties:
- properties:
- expression:
- type: string
- required:
- - expression
- type: object
- type: object
- type: object
- workflowTemplateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- type: object
- type: object
- status:
- properties:
- artifactRepositoryRef:
- properties:
- artifactRepository:
- properties:
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repoURL:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- gcs:
- properties:
- bucket:
- type: string
- keyFormat:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- pathFormat:
- type: string
- type: object
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- keyFormat:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- type: object
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- keyFormat:
- type: string
- keyPrefix:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- type: object
- configMap:
- type: string
- default:
- type: boolean
- key:
- type: string
- namespace:
- type: string
- type: object
- compressedNodes:
- type: string
- conditions:
- items:
- properties:
- message:
- type: string
- status:
- type: string
- type:
- type: string
- type: object
- type: array
- estimatedDuration:
- type: integer
- finishedAt:
- format: date-time
- type: string
- message:
- type: string
- nodes:
- additionalProperties:
- properties:
- boundaryID:
- type: string
- children:
- items:
- type: string
- type: array
- daemoned:
- type: boolean
- displayName:
- type: string
- estimatedDuration:
- type: integer
- finishedAt:
- format: date-time
- type: string
- hostNodeName:
- type: string
- id:
- type: string
- inputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- memoizationStatus:
- properties:
- cacheName:
- type: string
- hit:
- type: boolean
- key:
- type: string
- required:
- - cacheName
- - hit
- - key
- type: object
- message:
- type: string
- name:
- type: string
- outboundNodes:
- items:
- type: string
- type: array
- outputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- exitCode:
- type: string
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- result:
- type: string
- type: object
- phase:
- type: string
- podIP:
- type: string
- progress:
- type: string
- resourcesDuration:
- additionalProperties:
- format: int64
- type: integer
- type: object
- startedAt:
- format: date-time
- type: string
- synchronizationStatus:
- properties:
- waiting:
- type: string
- type: object
- templateName:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- templateScope:
- type: string
- type:
- type: string
- required:
- - id
- - name
- - type
- type: object
- type: object
- offloadNodeStatusVersion:
- type: string
- outputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- exitCode:
- type: string
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- result:
- type: string
- type: object
- persistentVolumeClaims:
- items:
- properties:
- awsElasticBlockStore:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- azureDisk:
- properties:
- cachingMode:
- type: string
- diskName:
- type: string
- diskURI:
- type: string
- fsType:
- type: string
- kind:
- type: string
- readOnly:
- type: boolean
- required:
- - diskName
- - diskURI
- type: object
- azureFile:
- properties:
- readOnly:
- type: boolean
- secretName:
- type: string
- shareName:
- type: string
- required:
- - secretName
- - shareName
- type: object
- cephfs:
- properties:
- monitors:
- items:
- type: string
- type: array
- path:
- type: string
- readOnly:
- type: boolean
- secretFile:
- type: string
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - monitors
- type: object
- cinder:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- configMap:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- csi:
- properties:
- driver:
- type: string
- fsType:
- type: string
- nodePublishSecretRef:
- properties:
- name:
- type: string
- type: object
- readOnly:
- type: boolean
- volumeAttributes:
- additionalProperties:
- type: string
- type: object
- required:
- - driver
- type: object
- downwardAPI:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- emptyDir:
- properties:
- medium:
- type: string
- sizeLimit:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- ephemeral:
- properties:
- volumeClaimTemplate:
- properties:
- metadata:
- type: object
- spec:
- properties:
- accessModes:
- items:
- type: string
- type: array
- dataSource:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- dataSourceRef:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- storageClassName:
- type: string
- volumeMode:
- type: string
- volumeName:
- type: string
- type: object
- required:
- - spec
- type: object
- type: object
- fc:
- properties:
- fsType:
- type: string
- lun:
- format: int32
- type: integer
- readOnly:
- type: boolean
- targetWWNs:
- items:
- type: string
- type: array
- wwids:
- items:
- type: string
- type: array
- type: object
- flexVolume:
- properties:
- driver:
- type: string
- fsType:
- type: string
- options:
- additionalProperties:
- type: string
- type: object
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- required:
- - driver
- type: object
- flocker:
- properties:
- datasetName:
- type: string
- datasetUUID:
- type: string
- type: object
- gcePersistentDisk:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- pdName:
- type: string
- readOnly:
- type: boolean
- required:
- - pdName
- type: object
- gitRepo:
- properties:
- directory:
- type: string
- repository:
- type: string
- revision:
- type: string
- required:
- - repository
- type: object
- glusterfs:
- properties:
- endpoints:
- type: string
- path:
- type: string
- readOnly:
- type: boolean
- required:
- - endpoints
- - path
- type: object
- hostPath:
- properties:
- path:
- type: string
- type:
- type: string
- required:
- - path
- type: object
- iscsi:
- properties:
- chapAuthDiscovery:
- type: boolean
- chapAuthSession:
- type: boolean
- fsType:
- type: string
- initiatorName:
- type: string
- iqn:
- type: string
- iscsiInterface:
- type: string
- lun:
- format: int32
- type: integer
- portals:
- items:
- type: string
- type: array
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- targetPortal:
- type: string
- required:
- - iqn
- - lun
- - targetPortal
- type: object
- name:
- type: string
- nfs:
- properties:
- path:
- type: string
- readOnly:
- type: boolean
- server:
- type: string
- required:
- - path
- - server
- type: object
- persistentVolumeClaim:
- properties:
- claimName:
- type: string
- readOnly:
- type: boolean
- required:
- - claimName
- type: object
- photonPersistentDisk:
- properties:
- fsType:
- type: string
- pdID:
- type: string
- required:
- - pdID
- type: object
- portworxVolume:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- projected:
- properties:
- defaultMode:
- format: int32
- type: integer
- sources:
- items:
- properties:
- configMap:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- downwardAPI:
- properties:
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- secret:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- serviceAccountToken:
- properties:
- audience:
- type: string
- expirationSeconds:
- format: int64
- type: integer
- path:
- type: string
- required:
- - path
- type: object
- type: object
- type: array
- type: object
- quobyte:
- properties:
- group:
- type: string
- readOnly:
- type: boolean
- registry:
- type: string
- tenant:
- type: string
- user:
- type: string
- volume:
- type: string
- required:
- - registry
- - volume
- type: object
- rbd:
- properties:
- fsType:
- type: string
- image:
- type: string
- keyring:
- type: string
- monitors:
- items:
- type: string
- type: array
- pool:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - image
- - monitors
- type: object
- scaleIO:
- properties:
- fsType:
- type: string
- gateway:
- type: string
- protectionDomain:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- sslEnabled:
- type: boolean
- storageMode:
- type: string
- storagePool:
- type: string
- system:
- type: string
- volumeName:
- type: string
- required:
- - gateway
- - secretRef
- - system
- type: object
- secret:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- optional:
- type: boolean
- secretName:
- type: string
- type: object
- storageos:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeName:
- type: string
- volumeNamespace:
- type: string
- type: object
- vsphereVolume:
- properties:
- fsType:
- type: string
- storagePolicyID:
- type: string
- storagePolicyName:
- type: string
- volumePath:
- type: string
- required:
- - volumePath
- type: object
- required:
- - name
- type: object
- type: array
- phase:
- type: string
- progress:
- type: string
- resourcesDuration:
- additionalProperties:
- format: int64
- type: integer
- type: object
- startedAt:
- format: date-time
- type: string
- storedTemplates:
- additionalProperties:
- properties:
- activeDeadlineSeconds:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- affinity:
- properties:
- nodeAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- preference:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- weight:
- format: int32
- type: integer
- required:
- - preference
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- properties:
- nodeSelectorTerms:
- items:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- type: array
- required:
- - nodeSelectorTerms
- type: object
- type: object
- podAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- podAntiAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- type: object
- archiveLocation:
- properties:
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- type: object
- automountServiceAccountToken:
- type: boolean
- container:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- containerSet:
- properties:
- containers:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- dependencies:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- retryStrategy:
- properties:
- duration:
- type: string
- retries:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - retries
- type: object
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- required:
- - containers
- type: object
- daemon:
- type: boolean
- dag:
- properties:
- failFast:
- type: boolean
- target:
- type: string
- tasks:
- items:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- continueOn:
- properties:
- error:
- type: boolean
- failed:
- type: boolean
- type: object
- dependencies:
- items:
- type: string
- type: array
- depends:
- type: string
- hooks:
- additionalProperties:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- expression:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- type: object
- type: object
- inline: {}
- name:
- type: string
- onExit:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- when:
- type: string
- withItems:
- items:
- type: object
- type: array
- withParam:
- type: string
- withSequence:
- properties:
- count:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- end:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- format:
- type: string
- start:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- type: object
- required:
- - name
- type: object
- type: array
- required:
- - tasks
- type: object
- data:
- properties:
- source:
- properties:
- artifactPaths:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: object
- transformation:
- items:
- properties:
- expression:
- type: string
- required:
- - expression
- type: object
- type: array
- required:
- - source
- - transformation
- type: object
- executor:
- properties:
- serviceAccountName:
- type: string
- type: object
- failFast:
- type: boolean
- hostAliases:
- items:
- properties:
- hostnames:
- items:
- type: string
- type: array
- ip:
- type: string
- type: object
- type: array
- http:
- properties:
- body:
- type: string
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- insecureSkipVerify:
- type: boolean
- method:
- type: string
- successCondition:
- type: string
- timeoutSeconds:
- format: int64
- type: integer
- url:
- type: string
- required:
- - url
- type: object
- initContainers:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- mirrorVolumeMounts:
- type: boolean
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- inputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- memoize:
- properties:
- cache:
- properties:
- configMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - configMap
- type: object
- key:
- type: string
- maxAge:
- type: string
- required:
- - cache
- - key
- - maxAge
- type: object
- metadata:
- properties:
- annotations:
- additionalProperties:
- type: string
- type: object
- labels:
- additionalProperties:
- type: string
- type: object
- type: object
- metrics:
- properties:
- prometheus:
- items:
- properties:
- counter:
- properties:
- value:
- type: string
- required:
- - value
- type: object
- gauge:
- properties:
- realtime:
- type: boolean
- value:
- type: string
- required:
- - realtime
- - value
- type: object
- help:
- type: string
- histogram:
- properties:
- buckets:
- items:
- type: number
- type: array
- value:
- type: string
- required:
- - buckets
- - value
- type: object
- labels:
- items:
- properties:
- key:
- type: string
- value:
- type: string
- required:
- - key
- - value
- type: object
- type: array
- name:
- type: string
- when:
- type: string
- required:
- - help
- - name
- type: object
- type: array
- required:
- - prometheus
- type: object
- name:
- type: string
- nodeSelector:
- additionalProperties:
- type: string
- type: object
- outputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- exitCode:
- type: string
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- result:
- type: string
- type: object
- parallelism:
- format: int64
- type: integer
- plugin:
- type: object
- podSpecPatch:
- type: string
- priority:
- format: int32
- type: integer
- priorityClassName:
- type: string
- resource:
- properties:
- action:
- type: string
- failureCondition:
- type: string
- flags:
- items:
- type: string
- type: array
- manifest:
- type: string
- mergeStrategy:
- type: string
- setOwnerReference:
- type: boolean
- successCondition:
- type: string
- required:
- - action
- type: object
- retryStrategy:
- properties:
- affinity:
- properties:
- nodeAntiAffinity:
- type: object
- type: object
- backoff:
- properties:
- duration:
- type: string
- factor:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- maxDuration:
- type: string
- type: object
- expression:
- type: string
- limit:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- retryPolicy:
- type: string
- type: object
- schedulerName:
- type: string
- script:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- source:
- type: string
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- - source
- type: object
- securityContext:
- properties:
- fsGroup:
- format: int64
- type: integer
- fsGroupChangePolicy:
- type: string
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- supplementalGroups:
- items:
- format: int64
- type: integer
- type: array
- sysctls:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- serviceAccountName:
- type: string
- sidecars:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- mirrorVolumeMounts:
- type: boolean
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- steps:
- items:
- type: array
- type: array
- suspend:
- properties:
- duration:
- type: string
- type: object
- synchronization:
- properties:
- mutex:
- properties:
- name:
- type: string
- type: object
- semaphore:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- type: object
- timeout:
- type: string
- tolerations:
- items:
- properties:
- effect:
- type: string
- key:
- type: string
- operator:
- type: string
- tolerationSeconds:
- format: int64
- type: integer
- value:
- type: string
- type: object
- type: array
- volumes:
- items:
- properties:
- awsElasticBlockStore:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- azureDisk:
- properties:
- cachingMode:
- type: string
- diskName:
- type: string
- diskURI:
- type: string
- fsType:
- type: string
- kind:
- type: string
- readOnly:
- type: boolean
- required:
- - diskName
- - diskURI
- type: object
- azureFile:
- properties:
- readOnly:
- type: boolean
- secretName:
- type: string
- shareName:
- type: string
- required:
- - secretName
- - shareName
- type: object
- cephfs:
- properties:
- monitors:
- items:
- type: string
- type: array
- path:
- type: string
- readOnly:
- type: boolean
- secretFile:
- type: string
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - monitors
- type: object
- cinder:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- configMap:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- csi:
- properties:
- driver:
- type: string
- fsType:
- type: string
- nodePublishSecretRef:
- properties:
- name:
- type: string
- type: object
- readOnly:
- type: boolean
- volumeAttributes:
- additionalProperties:
- type: string
- type: object
- required:
- - driver
- type: object
- downwardAPI:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- emptyDir:
- properties:
- medium:
- type: string
- sizeLimit:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- ephemeral:
- properties:
- volumeClaimTemplate:
- properties:
- metadata:
- type: object
- spec:
- properties:
- accessModes:
- items:
- type: string
- type: array
- dataSource:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- dataSourceRef:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- storageClassName:
- type: string
- volumeMode:
- type: string
- volumeName:
- type: string
- type: object
- required:
- - spec
- type: object
- type: object
- fc:
- properties:
- fsType:
- type: string
- lun:
- format: int32
- type: integer
- readOnly:
- type: boolean
- targetWWNs:
- items:
- type: string
- type: array
- wwids:
- items:
- type: string
- type: array
- type: object
- flexVolume:
- properties:
- driver:
- type: string
- fsType:
- type: string
- options:
- additionalProperties:
- type: string
- type: object
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- required:
- - driver
- type: object
- flocker:
- properties:
- datasetName:
- type: string
- datasetUUID:
- type: string
- type: object
- gcePersistentDisk:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- pdName:
- type: string
- readOnly:
- type: boolean
- required:
- - pdName
- type: object
- gitRepo:
- properties:
- directory:
- type: string
- repository:
- type: string
- revision:
- type: string
- required:
- - repository
- type: object
- glusterfs:
- properties:
- endpoints:
- type: string
- path:
- type: string
- readOnly:
- type: boolean
- required:
- - endpoints
- - path
- type: object
- hostPath:
- properties:
- path:
- type: string
- type:
- type: string
- required:
- - path
- type: object
- iscsi:
- properties:
- chapAuthDiscovery:
- type: boolean
- chapAuthSession:
- type: boolean
- fsType:
- type: string
- initiatorName:
- type: string
- iqn:
- type: string
- iscsiInterface:
- type: string
- lun:
- format: int32
- type: integer
- portals:
- items:
- type: string
- type: array
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- targetPortal:
- type: string
- required:
- - iqn
- - lun
- - targetPortal
- type: object
- name:
- type: string
- nfs:
- properties:
- path:
- type: string
- readOnly:
- type: boolean
- server:
- type: string
- required:
- - path
- - server
- type: object
- persistentVolumeClaim:
- properties:
- claimName:
- type: string
- readOnly:
- type: boolean
- required:
- - claimName
- type: object
- photonPersistentDisk:
- properties:
- fsType:
- type: string
- pdID:
- type: string
- required:
- - pdID
- type: object
- portworxVolume:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- projected:
- properties:
- defaultMode:
- format: int32
- type: integer
- sources:
- items:
- properties:
- configMap:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- downwardAPI:
- properties:
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- secret:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- serviceAccountToken:
- properties:
- audience:
- type: string
- expirationSeconds:
- format: int64
- type: integer
- path:
- type: string
- required:
- - path
- type: object
- type: object
- type: array
- type: object
- quobyte:
- properties:
- group:
- type: string
- readOnly:
- type: boolean
- registry:
- type: string
- tenant:
- type: string
- user:
- type: string
- volume:
- type: string
- required:
- - registry
- - volume
- type: object
- rbd:
- properties:
- fsType:
- type: string
- image:
- type: string
- keyring:
- type: string
- monitors:
- items:
- type: string
- type: array
- pool:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - image
- - monitors
- type: object
- scaleIO:
- properties:
- fsType:
- type: string
- gateway:
- type: string
- protectionDomain:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- sslEnabled:
- type: boolean
- storageMode:
- type: string
- storagePool:
- type: string
- system:
- type: string
- volumeName:
- type: string
- required:
- - gateway
- - secretRef
- - system
- type: object
- secret:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- optional:
- type: boolean
- secretName:
- type: string
- type: object
- storageos:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeName:
- type: string
- volumeNamespace:
- type: string
- type: object
- vsphereVolume:
- properties:
- fsType:
- type: string
- storagePolicyID:
- type: string
- storagePolicyName:
- type: string
- volumePath:
- type: string
- required:
- - volumePath
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- type: object
- storedWorkflowTemplateSpec:
- properties:
- activeDeadlineSeconds:
- format: int64
- type: integer
- affinity:
- properties:
- nodeAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- preference:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- weight:
- format: int32
- type: integer
- required:
- - preference
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- properties:
- nodeSelectorTerms:
- items:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- type: array
- required:
- - nodeSelectorTerms
- type: object
- type: object
- podAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- podAntiAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- type: object
- archiveLogs:
- type: boolean
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- artifactRepositoryRef:
- properties:
- configMap:
- type: string
- key:
- type: string
- type: object
- automountServiceAccountToken:
- type: boolean
- dnsConfig:
- properties:
- nameservers:
- items:
- type: string
- type: array
- options:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- type: object
- type: array
- searches:
- items:
- type: string
- type: array
- type: object
- dnsPolicy:
- type: string
- entrypoint:
- type: string
- executor:
- properties:
- serviceAccountName:
- type: string
- type: object
- hooks:
- additionalProperties:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- expression:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- type: object
- type: object
- hostAliases:
- items:
- properties:
- hostnames:
- items:
- type: string
- type: array
- ip:
- type: string
- type: object
- type: array
- hostNetwork:
- type: boolean
- imagePullSecrets:
- items:
- properties:
- name:
- type: string
- type: object
- type: array
- metrics:
- properties:
- prometheus:
- items:
- properties:
- counter:
- properties:
- value:
- type: string
- required:
- - value
- type: object
- gauge:
- properties:
- realtime:
- type: boolean
- value:
- type: string
- required:
- - realtime
- - value
- type: object
- help:
- type: string
- histogram:
- properties:
- buckets:
- items:
- type: number
- type: array
- value:
- type: string
- required:
- - buckets
- - value
- type: object
- labels:
- items:
- properties:
- key:
- type: string
- value:
- type: string
- required:
- - key
- - value
- type: object
- type: array
- name:
- type: string
- when:
- type: string
- required:
- - help
- - name
- type: object
- type: array
- required:
- - prometheus
- type: object
- nodeSelector:
- additionalProperties:
- type: string
- type: object
- onExit:
- type: string
- parallelism:
- format: int64
- type: integer
- podDisruptionBudget:
- properties:
- maxUnavailable:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- minAvailable:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- type: object
- podGC:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- strategy:
- type: string
- type: object
- podMetadata:
- properties:
- annotations:
- additionalProperties:
- type: string
- type: object
- labels:
- additionalProperties:
- type: string
- type: object
- type: object
- podPriority:
- format: int32
- type: integer
- podPriorityClassName:
- type: string
- podSpecPatch:
- type: string
- priority:
- format: int32
- type: integer
- retryStrategy:
- properties:
- affinity:
- properties:
- nodeAntiAffinity:
- type: object
- type: object
- backoff:
- properties:
- duration:
- type: string
- factor:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- maxDuration:
- type: string
- type: object
- expression:
- type: string
- limit:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- retryPolicy:
- type: string
- type: object
- schedulerName:
- type: string
- securityContext:
- properties:
- fsGroup:
- format: int64
- type: integer
- fsGroupChangePolicy:
- type: string
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- supplementalGroups:
- items:
- format: int64
- type: integer
- type: array
- sysctls:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- serviceAccountName:
- type: string
- shutdown:
- type: string
- suspend:
- type: boolean
- synchronization:
- properties:
- mutex:
- properties:
- name:
- type: string
- type: object
- semaphore:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- type: object
- templateDefaults:
- properties:
- activeDeadlineSeconds:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- affinity:
- properties:
- nodeAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- preference:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- weight:
- format: int32
- type: integer
- required:
- - preference
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- properties:
- nodeSelectorTerms:
- items:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- type: array
- required:
- - nodeSelectorTerms
- type: object
- type: object
- podAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- podAntiAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- type: object
- archiveLocation:
- properties:
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- type: object
- automountServiceAccountToken:
- type: boolean
- container:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- containerSet:
- properties:
- containers:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- dependencies:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- retryStrategy:
- properties:
- duration:
- type: string
- retries:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - retries
- type: object
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- required:
- - containers
- type: object
- daemon:
- type: boolean
- dag:
- properties:
- failFast:
- type: boolean
- target:
- type: string
- tasks:
- items:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- continueOn:
- properties:
- error:
- type: boolean
- failed:
- type: boolean
- type: object
- dependencies:
- items:
- type: string
- type: array
- depends:
- type: string
- hooks:
- additionalProperties:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- expression:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- type: object
- type: object
- inline: {}
- name:
- type: string
- onExit:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- when:
- type: string
- withItems:
- items:
- type: object
- type: array
- withParam:
- type: string
- withSequence:
- properties:
- count:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- end:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- format:
- type: string
- start:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- type: object
- required:
- - name
- type: object
- type: array
- required:
- - tasks
- type: object
- data:
- properties:
- source:
- properties:
- artifactPaths:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: object
- transformation:
- items:
- properties:
- expression:
- type: string
- required:
- - expression
- type: object
- type: array
- required:
- - source
- - transformation
- type: object
- executor:
- properties:
- serviceAccountName:
- type: string
- type: object
- failFast:
- type: boolean
- hostAliases:
- items:
- properties:
- hostnames:
- items:
- type: string
- type: array
- ip:
- type: string
- type: object
- type: array
- http:
- properties:
- body:
- type: string
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- insecureSkipVerify:
- type: boolean
- method:
- type: string
- successCondition:
- type: string
- timeoutSeconds:
- format: int64
- type: integer
- url:
- type: string
- required:
- - url
- type: object
- initContainers:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- mirrorVolumeMounts:
- type: boolean
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- inputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- memoize:
- properties:
- cache:
- properties:
- configMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - configMap
- type: object
- key:
- type: string
- maxAge:
- type: string
- required:
- - cache
- - key
- - maxAge
- type: object
- metadata:
- properties:
- annotations:
- additionalProperties:
- type: string
- type: object
- labels:
- additionalProperties:
- type: string
- type: object
- type: object
- metrics:
- properties:
- prometheus:
- items:
- properties:
- counter:
- properties:
- value:
- type: string
- required:
- - value
- type: object
- gauge:
- properties:
- realtime:
- type: boolean
- value:
- type: string
- required:
- - realtime
- - value
- type: object
- help:
- type: string
- histogram:
- properties:
- buckets:
- items:
- type: number
- type: array
- value:
- type: string
- required:
- - buckets
- - value
- type: object
- labels:
- items:
- properties:
- key:
- type: string
- value:
- type: string
- required:
- - key
- - value
- type: object
- type: array
- name:
- type: string
- when:
- type: string
- required:
- - help
- - name
- type: object
- type: array
- required:
- - prometheus
- type: object
- name:
- type: string
- nodeSelector:
- additionalProperties:
- type: string
- type: object
- outputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- exitCode:
- type: string
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- result:
- type: string
- type: object
- parallelism:
- format: int64
- type: integer
- plugin:
- type: object
- podSpecPatch:
- type: string
- priority:
- format: int32
- type: integer
- priorityClassName:
- type: string
- resource:
- properties:
- action:
- type: string
- failureCondition:
- type: string
- flags:
- items:
- type: string
- type: array
- manifest:
- type: string
- mergeStrategy:
- type: string
- setOwnerReference:
- type: boolean
- successCondition:
- type: string
- required:
- - action
- type: object
- retryStrategy:
- properties:
- affinity:
- properties:
- nodeAntiAffinity:
- type: object
- type: object
- backoff:
- properties:
- duration:
- type: string
- factor:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- maxDuration:
- type: string
- type: object
- expression:
- type: string
- limit:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- retryPolicy:
- type: string
- type: object
- schedulerName:
- type: string
- script:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- source:
- type: string
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- - source
- type: object
- securityContext:
- properties:
- fsGroup:
- format: int64
- type: integer
- fsGroupChangePolicy:
- type: string
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- supplementalGroups:
- items:
- format: int64
- type: integer
- type: array
- sysctls:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- serviceAccountName:
- type: string
- sidecars:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- mirrorVolumeMounts:
- type: boolean
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- steps:
- items:
- type: array
- type: array
- suspend:
- properties:
- duration:
- type: string
- type: object
- synchronization:
- properties:
- mutex:
- properties:
- name:
- type: string
- type: object
- semaphore:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- type: object
- timeout:
- type: string
- tolerations:
- items:
- properties:
- effect:
- type: string
- key:
- type: string
- operator:
- type: string
- tolerationSeconds:
- format: int64
- type: integer
- value:
- type: string
- type: object
- type: array
- volumes:
- items:
- properties:
- awsElasticBlockStore:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- azureDisk:
- properties:
- cachingMode:
- type: string
- diskName:
- type: string
- diskURI:
- type: string
- fsType:
- type: string
- kind:
- type: string
- readOnly:
- type: boolean
- required:
- - diskName
- - diskURI
- type: object
- azureFile:
- properties:
- readOnly:
- type: boolean
- secretName:
- type: string
- shareName:
- type: string
- required:
- - secretName
- - shareName
- type: object
- cephfs:
- properties:
- monitors:
- items:
- type: string
- type: array
- path:
- type: string
- readOnly:
- type: boolean
- secretFile:
- type: string
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - monitors
- type: object
- cinder:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- configMap:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- csi:
- properties:
- driver:
- type: string
- fsType:
- type: string
- nodePublishSecretRef:
- properties:
- name:
- type: string
- type: object
- readOnly:
- type: boolean
- volumeAttributes:
- additionalProperties:
- type: string
- type: object
- required:
- - driver
- type: object
- downwardAPI:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- emptyDir:
- properties:
- medium:
- type: string
- sizeLimit:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- ephemeral:
- properties:
- volumeClaimTemplate:
- properties:
- metadata:
- type: object
- spec:
- properties:
- accessModes:
- items:
- type: string
- type: array
- dataSource:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- dataSourceRef:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- storageClassName:
- type: string
- volumeMode:
- type: string
- volumeName:
- type: string
- type: object
- required:
- - spec
- type: object
- type: object
- fc:
- properties:
- fsType:
- type: string
- lun:
- format: int32
- type: integer
- readOnly:
- type: boolean
- targetWWNs:
- items:
- type: string
- type: array
- wwids:
- items:
- type: string
- type: array
- type: object
- flexVolume:
- properties:
- driver:
- type: string
- fsType:
- type: string
- options:
- additionalProperties:
- type: string
- type: object
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- required:
- - driver
- type: object
- flocker:
- properties:
- datasetName:
- type: string
- datasetUUID:
- type: string
- type: object
- gcePersistentDisk:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- pdName:
- type: string
- readOnly:
- type: boolean
- required:
- - pdName
- type: object
- gitRepo:
- properties:
- directory:
- type: string
- repository:
- type: string
- revision:
- type: string
- required:
- - repository
- type: object
- glusterfs:
- properties:
- endpoints:
- type: string
- path:
- type: string
- readOnly:
- type: boolean
- required:
- - endpoints
- - path
- type: object
- hostPath:
- properties:
- path:
- type: string
- type:
- type: string
- required:
- - path
- type: object
- iscsi:
- properties:
- chapAuthDiscovery:
- type: boolean
- chapAuthSession:
- type: boolean
- fsType:
- type: string
- initiatorName:
- type: string
- iqn:
- type: string
- iscsiInterface:
- type: string
- lun:
- format: int32
- type: integer
- portals:
- items:
- type: string
- type: array
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- targetPortal:
- type: string
- required:
- - iqn
- - lun
- - targetPortal
- type: object
- name:
- type: string
- nfs:
- properties:
- path:
- type: string
- readOnly:
- type: boolean
- server:
- type: string
- required:
- - path
- - server
- type: object
- persistentVolumeClaim:
- properties:
- claimName:
- type: string
- readOnly:
- type: boolean
- required:
- - claimName
- type: object
- photonPersistentDisk:
- properties:
- fsType:
- type: string
- pdID:
- type: string
- required:
- - pdID
- type: object
- portworxVolume:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- projected:
- properties:
- defaultMode:
- format: int32
- type: integer
- sources:
- items:
- properties:
- configMap:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- downwardAPI:
- properties:
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- secret:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- serviceAccountToken:
- properties:
- audience:
- type: string
- expirationSeconds:
- format: int64
- type: integer
- path:
- type: string
- required:
- - path
- type: object
- type: object
- type: array
- type: object
- quobyte:
- properties:
- group:
- type: string
- readOnly:
- type: boolean
- registry:
- type: string
- tenant:
- type: string
- user:
- type: string
- volume:
- type: string
- required:
- - registry
- - volume
- type: object
- rbd:
- properties:
- fsType:
- type: string
- image:
- type: string
- keyring:
- type: string
- monitors:
- items:
- type: string
- type: array
- pool:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - image
- - monitors
- type: object
- scaleIO:
- properties:
- fsType:
- type: string
- gateway:
- type: string
- protectionDomain:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- sslEnabled:
- type: boolean
- storageMode:
- type: string
- storagePool:
- type: string
- system:
- type: string
- volumeName:
- type: string
- required:
- - gateway
- - secretRef
- - system
- type: object
- secret:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- optional:
- type: boolean
- secretName:
- type: string
- type: object
- storageos:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeName:
- type: string
- volumeNamespace:
- type: string
- type: object
- vsphereVolume:
- properties:
- fsType:
- type: string
- storagePolicyID:
- type: string
- storagePolicyName:
- type: string
- volumePath:
- type: string
- required:
- - volumePath
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- templates:
- items:
- properties:
- activeDeadlineSeconds:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- affinity:
- properties:
- nodeAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- preference:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- weight:
- format: int32
- type: integer
- required:
- - preference
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- properties:
- nodeSelectorTerms:
- items:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- type: array
- required:
- - nodeSelectorTerms
- type: object
- type: object
- podAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- podAntiAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- type: object
- archiveLocation:
- properties:
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- type: object
- automountServiceAccountToken:
- type: boolean
- container:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- containerSet:
- properties:
- containers:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- dependencies:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- retryStrategy:
- properties:
- duration:
- type: string
- retries:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - retries
- type: object
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- required:
- - containers
- type: object
- daemon:
- type: boolean
- dag:
- properties:
- failFast:
- type: boolean
- target:
- type: string
- tasks:
- items:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- continueOn:
- properties:
- error:
- type: boolean
- failed:
- type: boolean
- type: object
- dependencies:
- items:
- type: string
- type: array
- depends:
- type: string
- hooks:
- additionalProperties:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- expression:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- type: object
- type: object
- inline: {}
- name:
- type: string
- onExit:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- when:
- type: string
- withItems:
- items:
- type: object
- type: array
- withParam:
- type: string
- withSequence:
- properties:
- count:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- end:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- format:
- type: string
- start:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- type: object
- required:
- - name
- type: object
- type: array
- required:
- - tasks
- type: object
- data:
- properties:
- source:
- properties:
- artifactPaths:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: object
- transformation:
- items:
- properties:
- expression:
- type: string
- required:
- - expression
- type: object
- type: array
- required:
- - source
- - transformation
- type: object
- executor:
- properties:
- serviceAccountName:
- type: string
- type: object
- failFast:
- type: boolean
- hostAliases:
- items:
- properties:
- hostnames:
- items:
- type: string
- type: array
- ip:
- type: string
- type: object
- type: array
- http:
- properties:
- body:
- type: string
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- insecureSkipVerify:
- type: boolean
- method:
- type: string
- successCondition:
- type: string
- timeoutSeconds:
- format: int64
- type: integer
- url:
- type: string
- required:
- - url
- type: object
- initContainers:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- mirrorVolumeMounts:
- type: boolean
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- inputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- memoize:
- properties:
- cache:
- properties:
- configMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - configMap
- type: object
- key:
- type: string
- maxAge:
- type: string
- required:
- - cache
- - key
- - maxAge
- type: object
- metadata:
- properties:
- annotations:
- additionalProperties:
- type: string
- type: object
- labels:
- additionalProperties:
- type: string
- type: object
- type: object
- metrics:
- properties:
- prometheus:
- items:
- properties:
- counter:
- properties:
- value:
- type: string
- required:
- - value
- type: object
- gauge:
- properties:
- realtime:
- type: boolean
- value:
- type: string
- required:
- - realtime
- - value
- type: object
- help:
- type: string
- histogram:
- properties:
- buckets:
- items:
- type: number
- type: array
- value:
- type: string
- required:
- - buckets
- - value
- type: object
- labels:
- items:
- properties:
- key:
- type: string
- value:
- type: string
- required:
- - key
- - value
- type: object
- type: array
- name:
- type: string
- when:
- type: string
- required:
- - help
- - name
- type: object
- type: array
- required:
- - prometheus
- type: object
- name:
- type: string
- nodeSelector:
- additionalProperties:
- type: string
- type: object
- outputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- exitCode:
- type: string
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- result:
- type: string
- type: object
- parallelism:
- format: int64
- type: integer
- plugin:
- type: object
- podSpecPatch:
- type: string
- priority:
- format: int32
- type: integer
- priorityClassName:
- type: string
- resource:
- properties:
- action:
- type: string
- failureCondition:
- type: string
- flags:
- items:
- type: string
- type: array
- manifest:
- type: string
- mergeStrategy:
- type: string
- setOwnerReference:
- type: boolean
- successCondition:
- type: string
- required:
- - action
- type: object
- retryStrategy:
- properties:
- affinity:
- properties:
- nodeAntiAffinity:
- type: object
- type: object
- backoff:
- properties:
- duration:
- type: string
- factor:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- maxDuration:
- type: string
- type: object
- expression:
- type: string
- limit:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- retryPolicy:
- type: string
- type: object
- schedulerName:
- type: string
- script:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- source:
- type: string
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- - source
- type: object
- securityContext:
- properties:
- fsGroup:
- format: int64
- type: integer
- fsGroupChangePolicy:
- type: string
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- supplementalGroups:
- items:
- format: int64
- type: integer
- type: array
- sysctls:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- serviceAccountName:
- type: string
- sidecars:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- mirrorVolumeMounts:
- type: boolean
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- steps:
- items:
- type: array
- type: array
- suspend:
- properties:
- duration:
- type: string
- type: object
- synchronization:
- properties:
- mutex:
- properties:
- name:
- type: string
- type: object
- semaphore:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- type: object
- timeout:
- type: string
- tolerations:
- items:
- properties:
- effect:
- type: string
- key:
- type: string
- operator:
- type: string
- tolerationSeconds:
- format: int64
- type: integer
- value:
- type: string
- type: object
- type: array
- volumes:
- items:
- properties:
- awsElasticBlockStore:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- azureDisk:
- properties:
- cachingMode:
- type: string
- diskName:
- type: string
- diskURI:
- type: string
- fsType:
- type: string
- kind:
- type: string
- readOnly:
- type: boolean
- required:
- - diskName
- - diskURI
- type: object
- azureFile:
- properties:
- readOnly:
- type: boolean
- secretName:
- type: string
- shareName:
- type: string
- required:
- - secretName
- - shareName
- type: object
- cephfs:
- properties:
- monitors:
- items:
- type: string
- type: array
- path:
- type: string
- readOnly:
- type: boolean
- secretFile:
- type: string
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - monitors
- type: object
- cinder:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- configMap:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- csi:
- properties:
- driver:
- type: string
- fsType:
- type: string
- nodePublishSecretRef:
- properties:
- name:
- type: string
- type: object
- readOnly:
- type: boolean
- volumeAttributes:
- additionalProperties:
- type: string
- type: object
- required:
- - driver
- type: object
- downwardAPI:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- emptyDir:
- properties:
- medium:
- type: string
- sizeLimit:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- ephemeral:
- properties:
- volumeClaimTemplate:
- properties:
- metadata:
- type: object
- spec:
- properties:
- accessModes:
- items:
- type: string
- type: array
- dataSource:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- dataSourceRef:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- storageClassName:
- type: string
- volumeMode:
- type: string
- volumeName:
- type: string
- type: object
- required:
- - spec
- type: object
- type: object
- fc:
- properties:
- fsType:
- type: string
- lun:
- format: int32
- type: integer
- readOnly:
- type: boolean
- targetWWNs:
- items:
- type: string
- type: array
- wwids:
- items:
- type: string
- type: array
- type: object
- flexVolume:
- properties:
- driver:
- type: string
- fsType:
- type: string
- options:
- additionalProperties:
- type: string
- type: object
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- required:
- - driver
- type: object
- flocker:
- properties:
- datasetName:
- type: string
- datasetUUID:
- type: string
- type: object
- gcePersistentDisk:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- pdName:
- type: string
- readOnly:
- type: boolean
- required:
- - pdName
- type: object
- gitRepo:
- properties:
- directory:
- type: string
- repository:
- type: string
- revision:
- type: string
- required:
- - repository
- type: object
- glusterfs:
- properties:
- endpoints:
- type: string
- path:
- type: string
- readOnly:
- type: boolean
- required:
- - endpoints
- - path
- type: object
- hostPath:
- properties:
- path:
- type: string
- type:
- type: string
- required:
- - path
- type: object
- iscsi:
- properties:
- chapAuthDiscovery:
- type: boolean
- chapAuthSession:
- type: boolean
- fsType:
- type: string
- initiatorName:
- type: string
- iqn:
- type: string
- iscsiInterface:
- type: string
- lun:
- format: int32
- type: integer
- portals:
- items:
- type: string
- type: array
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- targetPortal:
- type: string
- required:
- - iqn
- - lun
- - targetPortal
- type: object
- name:
- type: string
- nfs:
- properties:
- path:
- type: string
- readOnly:
- type: boolean
- server:
- type: string
- required:
- - path
- - server
- type: object
- persistentVolumeClaim:
- properties:
- claimName:
- type: string
- readOnly:
- type: boolean
- required:
- - claimName
- type: object
- photonPersistentDisk:
- properties:
- fsType:
- type: string
- pdID:
- type: string
- required:
- - pdID
- type: object
- portworxVolume:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- projected:
- properties:
- defaultMode:
- format: int32
- type: integer
- sources:
- items:
- properties:
- configMap:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- downwardAPI:
- properties:
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- secret:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- serviceAccountToken:
- properties:
- audience:
- type: string
- expirationSeconds:
- format: int64
- type: integer
- path:
- type: string
- required:
- - path
- type: object
- type: object
- type: array
- type: object
- quobyte:
- properties:
- group:
- type: string
- readOnly:
- type: boolean
- registry:
- type: string
- tenant:
- type: string
- user:
- type: string
- volume:
- type: string
- required:
- - registry
- - volume
- type: object
- rbd:
- properties:
- fsType:
- type: string
- image:
- type: string
- keyring:
- type: string
- monitors:
- items:
- type: string
- type: array
- pool:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - image
- - monitors
- type: object
- scaleIO:
- properties:
- fsType:
- type: string
- gateway:
- type: string
- protectionDomain:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- sslEnabled:
- type: boolean
- storageMode:
- type: string
- storagePool:
- type: string
- system:
- type: string
- volumeName:
- type: string
- required:
- - gateway
- - secretRef
- - system
- type: object
- secret:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- optional:
- type: boolean
- secretName:
- type: string
- type: object
- storageos:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeName:
- type: string
- volumeNamespace:
- type: string
- type: object
- vsphereVolume:
- properties:
- fsType:
- type: string
- storagePolicyID:
- type: string
- storagePolicyName:
- type: string
- volumePath:
- type: string
- required:
- - volumePath
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- type: array
- tolerations:
- items:
- properties:
- effect:
- type: string
- key:
- type: string
- operator:
- type: string
- tolerationSeconds:
- format: int64
- type: integer
- value:
- type: string
- type: object
- type: array
- ttlStrategy:
- properties:
- secondsAfterCompletion:
- format: int32
- type: integer
- secondsAfterFailure:
- format: int32
- type: integer
- secondsAfterSuccess:
- format: int32
- type: integer
- type: object
- volumeClaimGC:
- properties:
- strategy:
- type: string
- type: object
- volumeClaimTemplates:
- items:
- properties:
- apiVersion:
- type: string
- kind:
- type: string
- metadata:
- type: object
- spec:
- properties:
- accessModes:
- items:
- type: string
- type: array
- dataSource:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- dataSourceRef:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- storageClassName:
- type: string
- volumeMode:
- type: string
- volumeName:
- type: string
- type: object
- status:
- properties:
- accessModes:
- items:
- type: string
- type: array
- allocatedResources:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- capacity:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- conditions:
- items:
- properties:
- lastProbeTime:
- format: date-time
- type: string
- lastTransitionTime:
- format: date-time
- type: string
- message:
- type: string
- reason:
- type: string
- status:
- type: string
- type:
- type: string
- required:
- - status
- - type
- type: object
- type: array
- phase:
- type: string
- resizeStatus:
- type: string
- type: object
- type: object
- type: array
- volumes:
- items:
- properties:
- awsElasticBlockStore:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- azureDisk:
- properties:
- cachingMode:
- type: string
- diskName:
- type: string
- diskURI:
- type: string
- fsType:
- type: string
- kind:
- type: string
- readOnly:
- type: boolean
- required:
- - diskName
- - diskURI
- type: object
- azureFile:
- properties:
- readOnly:
- type: boolean
- secretName:
- type: string
- shareName:
- type: string
- required:
- - secretName
- - shareName
- type: object
- cephfs:
- properties:
- monitors:
- items:
- type: string
- type: array
- path:
- type: string
- readOnly:
- type: boolean
- secretFile:
- type: string
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - monitors
- type: object
- cinder:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- configMap:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- csi:
- properties:
- driver:
- type: string
- fsType:
- type: string
- nodePublishSecretRef:
- properties:
- name:
- type: string
- type: object
- readOnly:
- type: boolean
- volumeAttributes:
- additionalProperties:
- type: string
- type: object
- required:
- - driver
- type: object
- downwardAPI:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- emptyDir:
- properties:
- medium:
- type: string
- sizeLimit:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- ephemeral:
- properties:
- volumeClaimTemplate:
- properties:
- metadata:
- type: object
- spec:
- properties:
- accessModes:
- items:
- type: string
- type: array
- dataSource:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- dataSourceRef:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- storageClassName:
- type: string
- volumeMode:
- type: string
- volumeName:
- type: string
- type: object
- required:
- - spec
- type: object
- type: object
- fc:
- properties:
- fsType:
- type: string
- lun:
- format: int32
- type: integer
- readOnly:
- type: boolean
- targetWWNs:
- items:
- type: string
- type: array
- wwids:
- items:
- type: string
- type: array
- type: object
- flexVolume:
- properties:
- driver:
- type: string
- fsType:
- type: string
- options:
- additionalProperties:
- type: string
- type: object
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- required:
- - driver
- type: object
- flocker:
- properties:
- datasetName:
- type: string
- datasetUUID:
- type: string
- type: object
- gcePersistentDisk:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- pdName:
- type: string
- readOnly:
- type: boolean
- required:
- - pdName
- type: object
- gitRepo:
- properties:
- directory:
- type: string
- repository:
- type: string
- revision:
- type: string
- required:
- - repository
- type: object
- glusterfs:
- properties:
- endpoints:
- type: string
- path:
- type: string
- readOnly:
- type: boolean
- required:
- - endpoints
- - path
- type: object
- hostPath:
- properties:
- path:
- type: string
- type:
- type: string
- required:
- - path
- type: object
- iscsi:
- properties:
- chapAuthDiscovery:
- type: boolean
- chapAuthSession:
- type: boolean
- fsType:
- type: string
- initiatorName:
- type: string
- iqn:
- type: string
- iscsiInterface:
- type: string
- lun:
- format: int32
- type: integer
- portals:
- items:
- type: string
- type: array
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- targetPortal:
- type: string
- required:
- - iqn
- - lun
- - targetPortal
- type: object
- name:
- type: string
- nfs:
- properties:
- path:
- type: string
- readOnly:
- type: boolean
- server:
- type: string
- required:
- - path
- - server
- type: object
- persistentVolumeClaim:
- properties:
- claimName:
- type: string
- readOnly:
- type: boolean
- required:
- - claimName
- type: object
- photonPersistentDisk:
- properties:
- fsType:
- type: string
- pdID:
- type: string
- required:
- - pdID
- type: object
- portworxVolume:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- projected:
- properties:
- defaultMode:
- format: int32
- type: integer
- sources:
- items:
- properties:
- configMap:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- downwardAPI:
- properties:
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- secret:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- serviceAccountToken:
- properties:
- audience:
- type: string
- expirationSeconds:
- format: int64
- type: integer
- path:
- type: string
- required:
- - path
- type: object
- type: object
- type: array
- type: object
- quobyte:
- properties:
- group:
- type: string
- readOnly:
- type: boolean
- registry:
- type: string
- tenant:
- type: string
- user:
- type: string
- volume:
- type: string
- required:
- - registry
- - volume
- type: object
- rbd:
- properties:
- fsType:
- type: string
- image:
- type: string
- keyring:
- type: string
- monitors:
- items:
- type: string
- type: array
- pool:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - image
- - monitors
- type: object
- scaleIO:
- properties:
- fsType:
- type: string
- gateway:
- type: string
- protectionDomain:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- sslEnabled:
- type: boolean
- storageMode:
- type: string
- storagePool:
- type: string
- system:
- type: string
- volumeName:
- type: string
- required:
- - gateway
- - secretRef
- - system
- type: object
- secret:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- optional:
- type: boolean
- secretName:
- type: string
- type: object
- storageos:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeName:
- type: string
- volumeNamespace:
- type: string
- type: object
- vsphereVolume:
- properties:
- fsType:
- type: string
- storagePolicyID:
- type: string
- storagePolicyName:
- type: string
- volumePath:
- type: string
- required:
- - volumePath
- type: object
- required:
- - name
- type: object
- type: array
- workflowMetadata:
- properties:
- annotations:
- additionalProperties:
- type: string
- type: object
- labels:
- additionalProperties:
- type: string
- type: object
- labelsFrom:
- additionalProperties:
- properties:
- expression:
- type: string
- required:
- - expression
- type: object
- type: object
- type: object
- workflowTemplateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- type: object
- type: object
- synchronization:
- properties:
- mutex:
- properties:
- holding:
- items:
- properties:
- holder:
- type: string
- mutex:
- type: string
- type: object
- type: array
- x-kubernetes-list-type: atomic
- waiting:
- items:
- properties:
- holder:
- type: string
- mutex:
- type: string
- type: object
- type: array
- x-kubernetes-list-type: atomic
- type: object
- semaphore:
- properties:
- holding:
- items:
- properties:
- holders:
- items:
- type: string
- type: array
- x-kubernetes-list-type: atomic
- semaphore:
- type: string
- type: object
- type: array
- waiting:
- items:
- properties:
- holders:
- items:
- type: string
- type: array
- x-kubernetes-list-type: atomic
- semaphore:
- type: string
- type: object
- type: array
- type: object
- type: object
- type: object
- required:
- - metadata
- - spec
- type: object
- served: true
- storage: true
- subresources: {}
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workflowtaskresults.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workflowtaskresults.yaml
deleted file mode 100644
index 8d7803e..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workflowtaskresults.yaml
+++ /dev/null
@@ -1,426 +0,0 @@
-# This is an auto-generated file. DO NOT EDIT
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata: # kpt-merge: /workflowtaskresults.argoproj.io
- name: workflowtaskresults.argoproj.io
-spec:
- group: argoproj.io
- names:
- kind: WorkflowTaskResult
- listKind: WorkflowTaskResultList
- plural: workflowtaskresults
- singular: workflowtaskresult
- scope: Namespaced
- versions:
- - name: v1alpha1
- schema:
- openAPIV3Schema:
- properties:
- apiVersion:
- type: string
- kind:
- type: string
- message:
- type: string
- metadata:
- type: object
- outputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- exitCode:
- type: string
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- result:
- type: string
- type: object
- phase:
- type: string
- progress:
- type: string
- required:
- - metadata
- type: object
- served: true
- storage: true
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workflowtasksets.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workflowtasksets.yaml
deleted file mode 100644
index de25052..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workflowtasksets.yaml
+++ /dev/null
@@ -1,7102 +0,0 @@
-# This is an auto-generated file. DO NOT EDIT
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata: # kpt-merge: /workflowtasksets.argoproj.io
- name: workflowtasksets.argoproj.io
-spec:
- group: argoproj.io
- names:
- kind: WorkflowTaskSet
- listKind: WorkflowTaskSetList
- plural: workflowtasksets
- shortNames:
- - wfts
- singular: workflowtaskset
- scope: Namespaced
- versions:
- - name: v1alpha1
- schema:
- openAPIV3Schema:
- properties:
- apiVersion:
- type: string
- kind:
- type: string
- metadata:
- type: object
- spec:
- properties:
- tasks:
- additionalProperties:
- properties:
- activeDeadlineSeconds:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- affinity:
- properties:
- nodeAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- preference:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- weight:
- format: int32
- type: integer
- required:
- - preference
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- properties:
- nodeSelectorTerms:
- items:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- type: array
- required:
- - nodeSelectorTerms
- type: object
- type: object
- podAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- podAntiAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- type: object
- archiveLocation:
- properties:
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- type: object
- automountServiceAccountToken:
- type: boolean
- container:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- containerSet:
- properties:
- containers:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- dependencies:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- retryStrategy:
- properties:
- duration:
- type: string
- retries:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - retries
- type: object
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- required:
- - containers
- type: object
- daemon:
- type: boolean
- dag:
- properties:
- failFast:
- type: boolean
- target:
- type: string
- tasks:
- items:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- continueOn:
- properties:
- error:
- type: boolean
- failed:
- type: boolean
- type: object
- dependencies:
- items:
- type: string
- type: array
- depends:
- type: string
- hooks:
- additionalProperties:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- expression:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- type: object
- type: object
- inline: {}
- name:
- type: string
- onExit:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- when:
- type: string
- withItems:
- items:
- type: object
- type: array
- withParam:
- type: string
- withSequence:
- properties:
- count:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- end:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- format:
- type: string
- start:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- type: object
- required:
- - name
- type: object
- type: array
- required:
- - tasks
- type: object
- data:
- properties:
- source:
- properties:
- artifactPaths:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: object
- transformation:
- items:
- properties:
- expression:
- type: string
- required:
- - expression
- type: object
- type: array
- required:
- - source
- - transformation
- type: object
- executor:
- properties:
- serviceAccountName:
- type: string
- type: object
- failFast:
- type: boolean
- hostAliases:
- items:
- properties:
- hostnames:
- items:
- type: string
- type: array
- ip:
- type: string
- type: object
- type: array
- http:
- properties:
- body:
- type: string
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- insecureSkipVerify:
- type: boolean
- method:
- type: string
- successCondition:
- type: string
- timeoutSeconds:
- format: int64
- type: integer
- url:
- type: string
- required:
- - url
- type: object
- initContainers:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- mirrorVolumeMounts:
- type: boolean
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- inputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- memoize:
- properties:
- cache:
- properties:
- configMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - configMap
- type: object
- key:
- type: string
- maxAge:
- type: string
- required:
- - cache
- - key
- - maxAge
- type: object
- metadata:
- properties:
- annotations:
- additionalProperties:
- type: string
- type: object
- labels:
- additionalProperties:
- type: string
- type: object
- type: object
- metrics:
- properties:
- prometheus:
- items:
- properties:
- counter:
- properties:
- value:
- type: string
- required:
- - value
- type: object
- gauge:
- properties:
- realtime:
- type: boolean
- value:
- type: string
- required:
- - realtime
- - value
- type: object
- help:
- type: string
- histogram:
- properties:
- buckets:
- items:
- type: number
- type: array
- value:
- type: string
- required:
- - buckets
- - value
- type: object
- labels:
- items:
- properties:
- key:
- type: string
- value:
- type: string
- required:
- - key
- - value
- type: object
- type: array
- name:
- type: string
- when:
- type: string
- required:
- - help
- - name
- type: object
- type: array
- required:
- - prometheus
- type: object
- name:
- type: string
- nodeSelector:
- additionalProperties:
- type: string
- type: object
- outputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- exitCode:
- type: string
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- result:
- type: string
- type: object
- parallelism:
- format: int64
- type: integer
- plugin:
- type: object
- podSpecPatch:
- type: string
- priority:
- format: int32
- type: integer
- priorityClassName:
- type: string
- resource:
- properties:
- action:
- type: string
- failureCondition:
- type: string
- flags:
- items:
- type: string
- type: array
- manifest:
- type: string
- mergeStrategy:
- type: string
- setOwnerReference:
- type: boolean
- successCondition:
- type: string
- required:
- - action
- type: object
- retryStrategy:
- properties:
- affinity:
- properties:
- nodeAntiAffinity:
- type: object
- type: object
- backoff:
- properties:
- duration:
- type: string
- factor:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- maxDuration:
- type: string
- type: object
- expression:
- type: string
- limit:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- retryPolicy:
- type: string
- type: object
- schedulerName:
- type: string
- script:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- source:
- type: string
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- - source
- type: object
- securityContext:
- properties:
- fsGroup:
- format: int64
- type: integer
- fsGroupChangePolicy:
- type: string
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- supplementalGroups:
- items:
- format: int64
- type: integer
- type: array
- sysctls:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- serviceAccountName:
- type: string
- sidecars:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- mirrorVolumeMounts:
- type: boolean
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- steps:
- items:
- type: array
- type: array
- suspend:
- properties:
- duration:
- type: string
- type: object
- synchronization:
- properties:
- mutex:
- properties:
- name:
- type: string
- type: object
- semaphore:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- type: object
- timeout:
- type: string
- tolerations:
- items:
- properties:
- effect:
- type: string
- key:
- type: string
- operator:
- type: string
- tolerationSeconds:
- format: int64
- type: integer
- value:
- type: string
- type: object
- type: array
- volumes:
- items:
- properties:
- awsElasticBlockStore:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- azureDisk:
- properties:
- cachingMode:
- type: string
- diskName:
- type: string
- diskURI:
- type: string
- fsType:
- type: string
- kind:
- type: string
- readOnly:
- type: boolean
- required:
- - diskName
- - diskURI
- type: object
- azureFile:
- properties:
- readOnly:
- type: boolean
- secretName:
- type: string
- shareName:
- type: string
- required:
- - secretName
- - shareName
- type: object
- cephfs:
- properties:
- monitors:
- items:
- type: string
- type: array
- path:
- type: string
- readOnly:
- type: boolean
- secretFile:
- type: string
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - monitors
- type: object
- cinder:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- configMap:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- csi:
- properties:
- driver:
- type: string
- fsType:
- type: string
- nodePublishSecretRef:
- properties:
- name:
- type: string
- type: object
- readOnly:
- type: boolean
- volumeAttributes:
- additionalProperties:
- type: string
- type: object
- required:
- - driver
- type: object
- downwardAPI:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- emptyDir:
- properties:
- medium:
- type: string
- sizeLimit:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- ephemeral:
- properties:
- volumeClaimTemplate:
- properties:
- metadata:
- type: object
- spec:
- properties:
- accessModes:
- items:
- type: string
- type: array
- dataSource:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- dataSourceRef:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- storageClassName:
- type: string
- volumeMode:
- type: string
- volumeName:
- type: string
- type: object
- required:
- - spec
- type: object
- type: object
- fc:
- properties:
- fsType:
- type: string
- lun:
- format: int32
- type: integer
- readOnly:
- type: boolean
- targetWWNs:
- items:
- type: string
- type: array
- wwids:
- items:
- type: string
- type: array
- type: object
- flexVolume:
- properties:
- driver:
- type: string
- fsType:
- type: string
- options:
- additionalProperties:
- type: string
- type: object
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- required:
- - driver
- type: object
- flocker:
- properties:
- datasetName:
- type: string
- datasetUUID:
- type: string
- type: object
- gcePersistentDisk:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- pdName:
- type: string
- readOnly:
- type: boolean
- required:
- - pdName
- type: object
- gitRepo:
- properties:
- directory:
- type: string
- repository:
- type: string
- revision:
- type: string
- required:
- - repository
- type: object
- glusterfs:
- properties:
- endpoints:
- type: string
- path:
- type: string
- readOnly:
- type: boolean
- required:
- - endpoints
- - path
- type: object
- hostPath:
- properties:
- path:
- type: string
- type:
- type: string
- required:
- - path
- type: object
- iscsi:
- properties:
- chapAuthDiscovery:
- type: boolean
- chapAuthSession:
- type: boolean
- fsType:
- type: string
- initiatorName:
- type: string
- iqn:
- type: string
- iscsiInterface:
- type: string
- lun:
- format: int32
- type: integer
- portals:
- items:
- type: string
- type: array
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- targetPortal:
- type: string
- required:
- - iqn
- - lun
- - targetPortal
- type: object
- name:
- type: string
- nfs:
- properties:
- path:
- type: string
- readOnly:
- type: boolean
- server:
- type: string
- required:
- - path
- - server
- type: object
- persistentVolumeClaim:
- properties:
- claimName:
- type: string
- readOnly:
- type: boolean
- required:
- - claimName
- type: object
- photonPersistentDisk:
- properties:
- fsType:
- type: string
- pdID:
- type: string
- required:
- - pdID
- type: object
- portworxVolume:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- projected:
- properties:
- defaultMode:
- format: int32
- type: integer
- sources:
- items:
- properties:
- configMap:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- downwardAPI:
- properties:
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- secret:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- serviceAccountToken:
- properties:
- audience:
- type: string
- expirationSeconds:
- format: int64
- type: integer
- path:
- type: string
- required:
- - path
- type: object
- type: object
- type: array
- type: object
- quobyte:
- properties:
- group:
- type: string
- readOnly:
- type: boolean
- registry:
- type: string
- tenant:
- type: string
- user:
- type: string
- volume:
- type: string
- required:
- - registry
- - volume
- type: object
- rbd:
- properties:
- fsType:
- type: string
- image:
- type: string
- keyring:
- type: string
- monitors:
- items:
- type: string
- type: array
- pool:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - image
- - monitors
- type: object
- scaleIO:
- properties:
- fsType:
- type: string
- gateway:
- type: string
- protectionDomain:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- sslEnabled:
- type: boolean
- storageMode:
- type: string
- storagePool:
- type: string
- system:
- type: string
- volumeName:
- type: string
- required:
- - gateway
- - secretRef
- - system
- type: object
- secret:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- optional:
- type: boolean
- secretName:
- type: string
- type: object
- storageos:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeName:
- type: string
- volumeNamespace:
- type: string
- type: object
- vsphereVolume:
- properties:
- fsType:
- type: string
- storagePolicyID:
- type: string
- storagePolicyName:
- type: string
- volumePath:
- type: string
- required:
- - volumePath
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- type: object
- type: object
- status:
- properties:
- nodes:
- additionalProperties:
- properties:
- message:
- type: string
- outputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- exitCode:
- type: string
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- result:
- type: string
- type: object
- phase:
- type: string
- progress:
- type: string
- type: object
- type: object
- type: object
- required:
- - metadata
- - spec
- type: object
- served: true
- storage: true
- subresources:
- status: {}
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workflowtemplates.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workflowtemplates.yaml
deleted file mode 100644
index 5b71375..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workflowtemplates.yaml
+++ /dev/null
@@ -1,15718 +0,0 @@
-# This is an auto-generated file. DO NOT EDIT
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata: # kpt-merge: /workflowtemplates.argoproj.io
- name: workflowtemplates.argoproj.io
-spec:
- group: argoproj.io
- names:
- kind: WorkflowTemplate
- listKind: WorkflowTemplateList
- plural: workflowtemplates
- shortNames:
- - wftmpl
- singular: workflowtemplate
- scope: Namespaced
- versions:
- - name: v1alpha1
- schema:
- openAPIV3Schema:
- properties:
- apiVersion:
- type: string
- kind:
- type: string
- metadata:
- type: object
- spec:
- properties:
- activeDeadlineSeconds:
- format: int64
- type: integer
- affinity:
- properties:
- nodeAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- preference:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- weight:
- format: int32
- type: integer
- required:
- - preference
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- properties:
- nodeSelectorTerms:
- items:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- type: array
- required:
- - nodeSelectorTerms
- type: object
- type: object
- podAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- podAntiAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- type: object
- archiveLogs:
- type: boolean
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- artifactRepositoryRef:
- properties:
- configMap:
- type: string
- key:
- type: string
- type: object
- automountServiceAccountToken:
- type: boolean
- dnsConfig:
- properties:
- nameservers:
- items:
- type: string
- type: array
- options:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- type: object
- type: array
- searches:
- items:
- type: string
- type: array
- type: object
- dnsPolicy:
- type: string
- entrypoint:
- type: string
- executor:
- properties:
- serviceAccountName:
- type: string
- type: object
- hooks:
- additionalProperties:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- expression:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- type: object
- type: object
- hostAliases:
- items:
- properties:
- hostnames:
- items:
- type: string
- type: array
- ip:
- type: string
- type: object
- type: array
- hostNetwork:
- type: boolean
- imagePullSecrets:
- items:
- properties:
- name:
- type: string
- type: object
- type: array
- metrics:
- properties:
- prometheus:
- items:
- properties:
- counter:
- properties:
- value:
- type: string
- required:
- - value
- type: object
- gauge:
- properties:
- realtime:
- type: boolean
- value:
- type: string
- required:
- - realtime
- - value
- type: object
- help:
- type: string
- histogram:
- properties:
- buckets:
- items:
- type: number
- type: array
- value:
- type: string
- required:
- - buckets
- - value
- type: object
- labels:
- items:
- properties:
- key:
- type: string
- value:
- type: string
- required:
- - key
- - value
- type: object
- type: array
- name:
- type: string
- when:
- type: string
- required:
- - help
- - name
- type: object
- type: array
- required:
- - prometheus
- type: object
- nodeSelector:
- additionalProperties:
- type: string
- type: object
- onExit:
- type: string
- parallelism:
- format: int64
- type: integer
- podDisruptionBudget:
- properties:
- maxUnavailable:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- minAvailable:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- type: object
- podGC:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- strategy:
- type: string
- type: object
- podMetadata:
- properties:
- annotations:
- additionalProperties:
- type: string
- type: object
- labels:
- additionalProperties:
- type: string
- type: object
- type: object
- podPriority:
- format: int32
- type: integer
- podPriorityClassName:
- type: string
- podSpecPatch:
- type: string
- priority:
- format: int32
- type: integer
- retryStrategy:
- properties:
- affinity:
- properties:
- nodeAntiAffinity:
- type: object
- type: object
- backoff:
- properties:
- duration:
- type: string
- factor:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- maxDuration:
- type: string
- type: object
- expression:
- type: string
- limit:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- retryPolicy:
- type: string
- type: object
- schedulerName:
- type: string
- securityContext:
- properties:
- fsGroup:
- format: int64
- type: integer
- fsGroupChangePolicy:
- type: string
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- supplementalGroups:
- items:
- format: int64
- type: integer
- type: array
- sysctls:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- serviceAccountName:
- type: string
- shutdown:
- type: string
- suspend:
- type: boolean
- synchronization:
- properties:
- mutex:
- properties:
- name:
- type: string
- type: object
- semaphore:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- type: object
- templateDefaults:
- properties:
- activeDeadlineSeconds:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- affinity:
- properties:
- nodeAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- preference:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- weight:
- format: int32
- type: integer
- required:
- - preference
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- properties:
- nodeSelectorTerms:
- items:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- type: array
- required:
- - nodeSelectorTerms
- type: object
- type: object
- podAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- podAntiAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- type: object
- archiveLocation:
- properties:
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- type: object
- automountServiceAccountToken:
- type: boolean
- container:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- containerSet:
- properties:
- containers:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- dependencies:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- retryStrategy:
- properties:
- duration:
- type: string
- retries:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - retries
- type: object
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- required:
- - containers
- type: object
- daemon:
- type: boolean
- dag:
- properties:
- failFast:
- type: boolean
- target:
- type: string
- tasks:
- items:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- continueOn:
- properties:
- error:
- type: boolean
- failed:
- type: boolean
- type: object
- dependencies:
- items:
- type: string
- type: array
- depends:
- type: string
- hooks:
- additionalProperties:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- expression:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- type: object
- type: object
- inline: {}
- name:
- type: string
- onExit:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- when:
- type: string
- withItems:
- items:
- type: object
- type: array
- withParam:
- type: string
- withSequence:
- properties:
- count:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- end:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- format:
- type: string
- start:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- type: object
- required:
- - name
- type: object
- type: array
- required:
- - tasks
- type: object
- data:
- properties:
- source:
- properties:
- artifactPaths:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: object
- transformation:
- items:
- properties:
- expression:
- type: string
- required:
- - expression
- type: object
- type: array
- required:
- - source
- - transformation
- type: object
- executor:
- properties:
- serviceAccountName:
- type: string
- type: object
- failFast:
- type: boolean
- hostAliases:
- items:
- properties:
- hostnames:
- items:
- type: string
- type: array
- ip:
- type: string
- type: object
- type: array
- http:
- properties:
- body:
- type: string
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- insecureSkipVerify:
- type: boolean
- method:
- type: string
- successCondition:
- type: string
- timeoutSeconds:
- format: int64
- type: integer
- url:
- type: string
- required:
- - url
- type: object
- initContainers:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- mirrorVolumeMounts:
- type: boolean
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- inputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- memoize:
- properties:
- cache:
- properties:
- configMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - configMap
- type: object
- key:
- type: string
- maxAge:
- type: string
- required:
- - cache
- - key
- - maxAge
- type: object
- metadata:
- properties:
- annotations:
- additionalProperties:
- type: string
- type: object
- labels:
- additionalProperties:
- type: string
- type: object
- type: object
- metrics:
- properties:
- prometheus:
- items:
- properties:
- counter:
- properties:
- value:
- type: string
- required:
- - value
- type: object
- gauge:
- properties:
- realtime:
- type: boolean
- value:
- type: string
- required:
- - realtime
- - value
- type: object
- help:
- type: string
- histogram:
- properties:
- buckets:
- items:
- type: number
- type: array
- value:
- type: string
- required:
- - buckets
- - value
- type: object
- labels:
- items:
- properties:
- key:
- type: string
- value:
- type: string
- required:
- - key
- - value
- type: object
- type: array
- name:
- type: string
- when:
- type: string
- required:
- - help
- - name
- type: object
- type: array
- required:
- - prometheus
- type: object
- name:
- type: string
- nodeSelector:
- additionalProperties:
- type: string
- type: object
- outputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- exitCode:
- type: string
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- result:
- type: string
- type: object
- parallelism:
- format: int64
- type: integer
- plugin:
- type: object
- podSpecPatch:
- type: string
- priority:
- format: int32
- type: integer
- priorityClassName:
- type: string
- resource:
- properties:
- action:
- type: string
- failureCondition:
- type: string
- flags:
- items:
- type: string
- type: array
- manifest:
- type: string
- mergeStrategy:
- type: string
- setOwnerReference:
- type: boolean
- successCondition:
- type: string
- required:
- - action
- type: object
- retryStrategy:
- properties:
- affinity:
- properties:
- nodeAntiAffinity:
- type: object
- type: object
- backoff:
- properties:
- duration:
- type: string
- factor:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- maxDuration:
- type: string
- type: object
- expression:
- type: string
- limit:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- retryPolicy:
- type: string
- type: object
- schedulerName:
- type: string
- script:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- source:
- type: string
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- - source
- type: object
- securityContext:
- properties:
- fsGroup:
- format: int64
- type: integer
- fsGroupChangePolicy:
- type: string
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- supplementalGroups:
- items:
- format: int64
- type: integer
- type: array
- sysctls:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- serviceAccountName:
- type: string
- sidecars:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- mirrorVolumeMounts:
- type: boolean
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- steps:
- items:
- type: array
- type: array
- suspend:
- properties:
- duration:
- type: string
- type: object
- synchronization:
- properties:
- mutex:
- properties:
- name:
- type: string
- type: object
- semaphore:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- type: object
- timeout:
- type: string
- tolerations:
- items:
- properties:
- effect:
- type: string
- key:
- type: string
- operator:
- type: string
- tolerationSeconds:
- format: int64
- type: integer
- value:
- type: string
- type: object
- type: array
- volumes:
- items:
- properties:
- awsElasticBlockStore:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- azureDisk:
- properties:
- cachingMode:
- type: string
- diskName:
- type: string
- diskURI:
- type: string
- fsType:
- type: string
- kind:
- type: string
- readOnly:
- type: boolean
- required:
- - diskName
- - diskURI
- type: object
- azureFile:
- properties:
- readOnly:
- type: boolean
- secretName:
- type: string
- shareName:
- type: string
- required:
- - secretName
- - shareName
- type: object
- cephfs:
- properties:
- monitors:
- items:
- type: string
- type: array
- path:
- type: string
- readOnly:
- type: boolean
- secretFile:
- type: string
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - monitors
- type: object
- cinder:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- configMap:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- csi:
- properties:
- driver:
- type: string
- fsType:
- type: string
- nodePublishSecretRef:
- properties:
- name:
- type: string
- type: object
- readOnly:
- type: boolean
- volumeAttributes:
- additionalProperties:
- type: string
- type: object
- required:
- - driver
- type: object
- downwardAPI:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- emptyDir:
- properties:
- medium:
- type: string
- sizeLimit:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- ephemeral:
- properties:
- volumeClaimTemplate:
- properties:
- metadata:
- type: object
- spec:
- properties:
- accessModes:
- items:
- type: string
- type: array
- dataSource:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- dataSourceRef:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- storageClassName:
- type: string
- volumeMode:
- type: string
- volumeName:
- type: string
- type: object
- required:
- - spec
- type: object
- type: object
- fc:
- properties:
- fsType:
- type: string
- lun:
- format: int32
- type: integer
- readOnly:
- type: boolean
- targetWWNs:
- items:
- type: string
- type: array
- wwids:
- items:
- type: string
- type: array
- type: object
- flexVolume:
- properties:
- driver:
- type: string
- fsType:
- type: string
- options:
- additionalProperties:
- type: string
- type: object
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- required:
- - driver
- type: object
- flocker:
- properties:
- datasetName:
- type: string
- datasetUUID:
- type: string
- type: object
- gcePersistentDisk:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- pdName:
- type: string
- readOnly:
- type: boolean
- required:
- - pdName
- type: object
- gitRepo:
- properties:
- directory:
- type: string
- repository:
- type: string
- revision:
- type: string
- required:
- - repository
- type: object
- glusterfs:
- properties:
- endpoints:
- type: string
- path:
- type: string
- readOnly:
- type: boolean
- required:
- - endpoints
- - path
- type: object
- hostPath:
- properties:
- path:
- type: string
- type:
- type: string
- required:
- - path
- type: object
- iscsi:
- properties:
- chapAuthDiscovery:
- type: boolean
- chapAuthSession:
- type: boolean
- fsType:
- type: string
- initiatorName:
- type: string
- iqn:
- type: string
- iscsiInterface:
- type: string
- lun:
- format: int32
- type: integer
- portals:
- items:
- type: string
- type: array
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- targetPortal:
- type: string
- required:
- - iqn
- - lun
- - targetPortal
- type: object
- name:
- type: string
- nfs:
- properties:
- path:
- type: string
- readOnly:
- type: boolean
- server:
- type: string
- required:
- - path
- - server
- type: object
- persistentVolumeClaim:
- properties:
- claimName:
- type: string
- readOnly:
- type: boolean
- required:
- - claimName
- type: object
- photonPersistentDisk:
- properties:
- fsType:
- type: string
- pdID:
- type: string
- required:
- - pdID
- type: object
- portworxVolume:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- projected:
- properties:
- defaultMode:
- format: int32
- type: integer
- sources:
- items:
- properties:
- configMap:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- downwardAPI:
- properties:
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- secret:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- serviceAccountToken:
- properties:
- audience:
- type: string
- expirationSeconds:
- format: int64
- type: integer
- path:
- type: string
- required:
- - path
- type: object
- type: object
- type: array
- type: object
- quobyte:
- properties:
- group:
- type: string
- readOnly:
- type: boolean
- registry:
- type: string
- tenant:
- type: string
- user:
- type: string
- volume:
- type: string
- required:
- - registry
- - volume
- type: object
- rbd:
- properties:
- fsType:
- type: string
- image:
- type: string
- keyring:
- type: string
- monitors:
- items:
- type: string
- type: array
- pool:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - image
- - monitors
- type: object
- scaleIO:
- properties:
- fsType:
- type: string
- gateway:
- type: string
- protectionDomain:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- sslEnabled:
- type: boolean
- storageMode:
- type: string
- storagePool:
- type: string
- system:
- type: string
- volumeName:
- type: string
- required:
- - gateway
- - secretRef
- - system
- type: object
- secret:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- optional:
- type: boolean
- secretName:
- type: string
- type: object
- storageos:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeName:
- type: string
- volumeNamespace:
- type: string
- type: object
- vsphereVolume:
- properties:
- fsType:
- type: string
- storagePolicyID:
- type: string
- storagePolicyName:
- type: string
- volumePath:
- type: string
- required:
- - volumePath
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- templates:
- items:
- properties:
- activeDeadlineSeconds:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- affinity:
- properties:
- nodeAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- preference:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- weight:
- format: int32
- type: integer
- required:
- - preference
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- properties:
- nodeSelectorTerms:
- items:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchFields:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- type: array
- required:
- - nodeSelectorTerms
- type: object
- type: object
- podAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- podAntiAffinity:
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- podAffinityTerm:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- weight:
- format: int32
- type: integer
- required:
- - podAffinityTerm
- - weight
- type: object
- type: array
- requiredDuringSchedulingIgnoredDuringExecution:
- items:
- properties:
- labelSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaceSelector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- namespaces:
- items:
- type: string
- type: array
- topologyKey:
- type: string
- required:
- - topologyKey
- type: object
- type: array
- type: object
- type: object
- archiveLocation:
- properties:
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- type: object
- automountServiceAccountToken:
- type: boolean
- container:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - image
- type: object
- containerSet:
- properties:
- containers:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- dependencies:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- retryStrategy:
- properties:
- duration:
- type: string
- retries:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - retries
- type: object
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- required:
- - containers
- type: object
- daemon:
- type: boolean
- dag:
- properties:
- failFast:
- type: boolean
- target:
- type: string
- tasks:
- items:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- continueOn:
- properties:
- error:
- type: boolean
- failed:
- type: boolean
- type: object
- dependencies:
- items:
- type: string
- type: array
- depends:
- type: string
- hooks:
- additionalProperties:
- properties:
- arguments:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- expression:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- type: object
- type: object
- inline: {}
- name:
- type: string
- onExit:
- type: string
- template:
- type: string
- templateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- template:
- type: string
- type: object
- when:
- type: string
- withItems:
- items:
- type: object
- type: array
- withParam:
- type: string
- withSequence:
- properties:
- count:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- end:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- format:
- type: string
- start:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- type: object
- required:
- - name
- type: object
- type: array
- required:
- - tasks
- type: object
- data:
- properties:
- source:
- properties:
- artifactPaths:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: object
- transformation:
- items:
- properties:
- expression:
- type: string
- required:
- - expression
- type: object
- type: array
- required:
- - source
- - transformation
- type: object
- executor:
- properties:
- serviceAccountName:
- type: string
- type: object
- failFast:
- type: boolean
- hostAliases:
- items:
- properties:
- hostnames:
- items:
- type: string
- type: array
- ip:
- type: string
- type: object
- type: array
- http:
- properties:
- body:
- type: string
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- insecureSkipVerify:
- type: boolean
- method:
- type: string
- successCondition:
- type: string
- timeoutSeconds:
- format: int64
- type: integer
- url:
- type: string
- required:
- - url
- type: object
- initContainers:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- mirrorVolumeMounts:
- type: boolean
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- inputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- memoize:
- properties:
- cache:
- properties:
- configMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - configMap
- type: object
- key:
- type: string
- maxAge:
- type: string
- required:
- - cache
- - key
- - maxAge
- type: object
- metadata:
- properties:
- annotations:
- additionalProperties:
- type: string
- type: object
- labels:
- additionalProperties:
- type: string
- type: object
- type: object
- metrics:
- properties:
- prometheus:
- items:
- properties:
- counter:
- properties:
- value:
- type: string
- required:
- - value
- type: object
- gauge:
- properties:
- realtime:
- type: boolean
- value:
- type: string
- required:
- - realtime
- - value
- type: object
- help:
- type: string
- histogram:
- properties:
- buckets:
- items:
- type: number
- type: array
- value:
- type: string
- required:
- - buckets
- - value
- type: object
- labels:
- items:
- properties:
- key:
- type: string
- value:
- type: string
- required:
- - key
- - value
- type: object
- type: array
- name:
- type: string
- when:
- type: string
- required:
- - help
- - name
- type: object
- type: array
- required:
- - prometheus
- type: object
- name:
- type: string
- nodeSelector:
- additionalProperties:
- type: string
- type: object
- outputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- exitCode:
- type: string
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- result:
- type: string
- type: object
- parallelism:
- format: int64
- type: integer
- plugin:
- type: object
- podSpecPatch:
- type: string
- priority:
- format: int32
- type: integer
- priorityClassName:
- type: string
- resource:
- properties:
- action:
- type: string
- failureCondition:
- type: string
- flags:
- items:
- type: string
- type: array
- manifest:
- type: string
- mergeStrategy:
- type: string
- setOwnerReference:
- type: boolean
- successCondition:
- type: string
- required:
- - action
- type: object
- retryStrategy:
- properties:
- affinity:
- properties:
- nodeAntiAffinity:
- type: object
- type: object
- backoff:
- properties:
- duration:
- type: string
- factor:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- maxDuration:
- type: string
- type: object
- expression:
- type: string
- limit:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- retryPolicy:
- type: string
- type: object
- schedulerName:
- type: string
- script:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- source:
- type: string
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - image
- - source
- type: object
- securityContext:
- properties:
- fsGroup:
- format: int64
- type: integer
- fsGroupChangePolicy:
- type: string
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- supplementalGroups:
- items:
- format: int64
- type: integer
- type: array
- sysctls:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- serviceAccountName:
- type: string
- sidecars:
- items:
- properties:
- args:
- items:
- type: string
- type: array
- command:
- items:
- type: string
- type: array
- env:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- secretKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- envFrom:
- items:
- properties:
- configMapRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- prefix:
- type: string
- secretRef:
- properties:
- name:
- type: string
- optional:
- type: boolean
- type: object
- type: object
- type: array
- image:
- type: string
- imagePullPolicy:
- type: string
- lifecycle:
- properties:
- postStart:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- preStop:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- type: object
- type: object
- livenessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- mirrorVolumeMounts:
- type: boolean
- name:
- type: string
- ports:
- items:
- properties:
- containerPort:
- format: int32
- type: integer
- hostIP:
- type: string
- hostPort:
- format: int32
- type: integer
- name:
- type: string
- protocol:
- default: TCP
- type: string
- required:
- - containerPort
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - containerPort
- - protocol
- x-kubernetes-list-type: map
- readinessProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- securityContext:
- properties:
- allowPrivilegeEscalation:
- type: boolean
- capabilities:
- properties:
- add:
- items:
- type: string
- type: array
- drop:
- items:
- type: string
- type: array
- type: object
- privileged:
- type: boolean
- procMount:
- type: string
- readOnlyRootFilesystem:
- type: boolean
- runAsGroup:
- format: int64
- type: integer
- runAsNonRoot:
- type: boolean
- runAsUser:
- format: int64
- type: integer
- seLinuxOptions:
- properties:
- level:
- type: string
- role:
- type: string
- type:
- type: string
- user:
- type: string
- type: object
- seccompProfile:
- properties:
- localhostProfile:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- windowsOptions:
- properties:
- gmsaCredentialSpec:
- type: string
- gmsaCredentialSpecName:
- type: string
- hostProcess:
- type: boolean
- runAsUserName:
- type: string
- type: object
- type: object
- startupProbe:
- properties:
- exec:
- properties:
- command:
- items:
- type: string
- type: array
- type: object
- failureThreshold:
- format: int32
- type: integer
- grpc:
- properties:
- port:
- format: int32
- type: integer
- service:
- type: string
- required:
- - port
- type: object
- httpGet:
- properties:
- host:
- type: string
- httpHeaders:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- path:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- scheme:
- type: string
- required:
- - port
- type: object
- initialDelaySeconds:
- format: int32
- type: integer
- periodSeconds:
- format: int32
- type: integer
- successThreshold:
- format: int32
- type: integer
- tcpSocket:
- properties:
- host:
- type: string
- port:
- anyOf:
- - type: integer
- - type: string
- x-kubernetes-int-or-string: true
- required:
- - port
- type: object
- terminationGracePeriodSeconds:
- format: int64
- type: integer
- timeoutSeconds:
- format: int32
- type: integer
- type: object
- stdin:
- type: boolean
- stdinOnce:
- type: boolean
- terminationMessagePath:
- type: string
- terminationMessagePolicy:
- type: string
- tty:
- type: boolean
- volumeDevices:
- items:
- properties:
- devicePath:
- type: string
- name:
- type: string
- required:
- - devicePath
- - name
- type: object
- type: array
- volumeMounts:
- items:
- properties:
- mountPath:
- type: string
- mountPropagation:
- type: string
- name:
- type: string
- readOnly:
- type: boolean
- subPath:
- type: string
- subPathExpr:
- type: string
- required:
- - mountPath
- - name
- type: object
- type: array
- workingDir:
- type: string
- required:
- - name
- type: object
- type: array
- steps:
- items:
- type: array
- type: array
- suspend:
- properties:
- duration:
- type: string
- type: object
- synchronization:
- properties:
- mutex:
- properties:
- name:
- type: string
- type: object
- semaphore:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- type: object
- timeout:
- type: string
- tolerations:
- items:
- properties:
- effect:
- type: string
- key:
- type: string
- operator:
- type: string
- tolerationSeconds:
- format: int64
- type: integer
- value:
- type: string
- type: object
- type: array
- volumes:
- items:
- properties:
- awsElasticBlockStore:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- azureDisk:
- properties:
- cachingMode:
- type: string
- diskName:
- type: string
- diskURI:
- type: string
- fsType:
- type: string
- kind:
- type: string
- readOnly:
- type: boolean
- required:
- - diskName
- - diskURI
- type: object
- azureFile:
- properties:
- readOnly:
- type: boolean
- secretName:
- type: string
- shareName:
- type: string
- required:
- - secretName
- - shareName
- type: object
- cephfs:
- properties:
- monitors:
- items:
- type: string
- type: array
- path:
- type: string
- readOnly:
- type: boolean
- secretFile:
- type: string
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - monitors
- type: object
- cinder:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- configMap:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- csi:
- properties:
- driver:
- type: string
- fsType:
- type: string
- nodePublishSecretRef:
- properties:
- name:
- type: string
- type: object
- readOnly:
- type: boolean
- volumeAttributes:
- additionalProperties:
- type: string
- type: object
- required:
- - driver
- type: object
- downwardAPI:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- emptyDir:
- properties:
- medium:
- type: string
- sizeLimit:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- ephemeral:
- properties:
- volumeClaimTemplate:
- properties:
- metadata:
- type: object
- spec:
- properties:
- accessModes:
- items:
- type: string
- type: array
- dataSource:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- dataSourceRef:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- storageClassName:
- type: string
- volumeMode:
- type: string
- volumeName:
- type: string
- type: object
- required:
- - spec
- type: object
- type: object
- fc:
- properties:
- fsType:
- type: string
- lun:
- format: int32
- type: integer
- readOnly:
- type: boolean
- targetWWNs:
- items:
- type: string
- type: array
- wwids:
- items:
- type: string
- type: array
- type: object
- flexVolume:
- properties:
- driver:
- type: string
- fsType:
- type: string
- options:
- additionalProperties:
- type: string
- type: object
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- required:
- - driver
- type: object
- flocker:
- properties:
- datasetName:
- type: string
- datasetUUID:
- type: string
- type: object
- gcePersistentDisk:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- pdName:
- type: string
- readOnly:
- type: boolean
- required:
- - pdName
- type: object
- gitRepo:
- properties:
- directory:
- type: string
- repository:
- type: string
- revision:
- type: string
- required:
- - repository
- type: object
- glusterfs:
- properties:
- endpoints:
- type: string
- path:
- type: string
- readOnly:
- type: boolean
- required:
- - endpoints
- - path
- type: object
- hostPath:
- properties:
- path:
- type: string
- type:
- type: string
- required:
- - path
- type: object
- iscsi:
- properties:
- chapAuthDiscovery:
- type: boolean
- chapAuthSession:
- type: boolean
- fsType:
- type: string
- initiatorName:
- type: string
- iqn:
- type: string
- iscsiInterface:
- type: string
- lun:
- format: int32
- type: integer
- portals:
- items:
- type: string
- type: array
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- targetPortal:
- type: string
- required:
- - iqn
- - lun
- - targetPortal
- type: object
- name:
- type: string
- nfs:
- properties:
- path:
- type: string
- readOnly:
- type: boolean
- server:
- type: string
- required:
- - path
- - server
- type: object
- persistentVolumeClaim:
- properties:
- claimName:
- type: string
- readOnly:
- type: boolean
- required:
- - claimName
- type: object
- photonPersistentDisk:
- properties:
- fsType:
- type: string
- pdID:
- type: string
- required:
- - pdID
- type: object
- portworxVolume:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- projected:
- properties:
- defaultMode:
- format: int32
- type: integer
- sources:
- items:
- properties:
- configMap:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- downwardAPI:
- properties:
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- secret:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- serviceAccountToken:
- properties:
- audience:
- type: string
- expirationSeconds:
- format: int64
- type: integer
- path:
- type: string
- required:
- - path
- type: object
- type: object
- type: array
- type: object
- quobyte:
- properties:
- group:
- type: string
- readOnly:
- type: boolean
- registry:
- type: string
- tenant:
- type: string
- user:
- type: string
- volume:
- type: string
- required:
- - registry
- - volume
- type: object
- rbd:
- properties:
- fsType:
- type: string
- image:
- type: string
- keyring:
- type: string
- monitors:
- items:
- type: string
- type: array
- pool:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - image
- - monitors
- type: object
- scaleIO:
- properties:
- fsType:
- type: string
- gateway:
- type: string
- protectionDomain:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- sslEnabled:
- type: boolean
- storageMode:
- type: string
- storagePool:
- type: string
- system:
- type: string
- volumeName:
- type: string
- required:
- - gateway
- - secretRef
- - system
- type: object
- secret:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- optional:
- type: boolean
- secretName:
- type: string
- type: object
- storageos:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeName:
- type: string
- volumeNamespace:
- type: string
- type: object
- vsphereVolume:
- properties:
- fsType:
- type: string
- storagePolicyID:
- type: string
- storagePolicyName:
- type: string
- volumePath:
- type: string
- required:
- - volumePath
- type: object
- required:
- - name
- type: object
- type: array
- type: object
- type: array
- tolerations:
- items:
- properties:
- effect:
- type: string
- key:
- type: string
- operator:
- type: string
- tolerationSeconds:
- format: int64
- type: integer
- value:
- type: string
- type: object
- type: array
- ttlStrategy:
- properties:
- secondsAfterCompletion:
- format: int32
- type: integer
- secondsAfterFailure:
- format: int32
- type: integer
- secondsAfterSuccess:
- format: int32
- type: integer
- type: object
- volumeClaimGC:
- properties:
- strategy:
- type: string
- type: object
- volumeClaimTemplates:
- items:
- properties:
- apiVersion:
- type: string
- kind:
- type: string
- metadata:
- type: object
- spec:
- properties:
- accessModes:
- items:
- type: string
- type: array
- dataSource:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- dataSourceRef:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- storageClassName:
- type: string
- volumeMode:
- type: string
- volumeName:
- type: string
- type: object
- status:
- properties:
- accessModes:
- items:
- type: string
- type: array
- allocatedResources:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- capacity:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- conditions:
- items:
- properties:
- lastProbeTime:
- format: date-time
- type: string
- lastTransitionTime:
- format: date-time
- type: string
- message:
- type: string
- reason:
- type: string
- status:
- type: string
- type:
- type: string
- required:
- - status
- - type
- type: object
- type: array
- phase:
- type: string
- resizeStatus:
- type: string
- type: object
- type: object
- type: array
- volumes:
- items:
- properties:
- awsElasticBlockStore:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- azureDisk:
- properties:
- cachingMode:
- type: string
- diskName:
- type: string
- diskURI:
- type: string
- fsType:
- type: string
- kind:
- type: string
- readOnly:
- type: boolean
- required:
- - diskName
- - diskURI
- type: object
- azureFile:
- properties:
- readOnly:
- type: boolean
- secretName:
- type: string
- shareName:
- type: string
- required:
- - secretName
- - shareName
- type: object
- cephfs:
- properties:
- monitors:
- items:
- type: string
- type: array
- path:
- type: string
- readOnly:
- type: boolean
- secretFile:
- type: string
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - monitors
- type: object
- cinder:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- configMap:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- csi:
- properties:
- driver:
- type: string
- fsType:
- type: string
- nodePublishSecretRef:
- properties:
- name:
- type: string
- type: object
- readOnly:
- type: boolean
- volumeAttributes:
- additionalProperties:
- type: string
- type: object
- required:
- - driver
- type: object
- downwardAPI:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- emptyDir:
- properties:
- medium:
- type: string
- sizeLimit:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- ephemeral:
- properties:
- volumeClaimTemplate:
- properties:
- metadata:
- type: object
- spec:
- properties:
- accessModes:
- items:
- type: string
- type: array
- dataSource:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- dataSourceRef:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- name:
- type: string
- required:
- - kind
- - name
- type: object
- resources:
- properties:
- limits:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- requests:
- additionalProperties:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- type: object
- type: object
- selector:
- properties:
- matchExpressions:
- items:
- properties:
- key:
- type: string
- operator:
- type: string
- values:
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- type: object
- type: object
- storageClassName:
- type: string
- volumeMode:
- type: string
- volumeName:
- type: string
- type: object
- required:
- - spec
- type: object
- type: object
- fc:
- properties:
- fsType:
- type: string
- lun:
- format: int32
- type: integer
- readOnly:
- type: boolean
- targetWWNs:
- items:
- type: string
- type: array
- wwids:
- items:
- type: string
- type: array
- type: object
- flexVolume:
- properties:
- driver:
- type: string
- fsType:
- type: string
- options:
- additionalProperties:
- type: string
- type: object
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- required:
- - driver
- type: object
- flocker:
- properties:
- datasetName:
- type: string
- datasetUUID:
- type: string
- type: object
- gcePersistentDisk:
- properties:
- fsType:
- type: string
- partition:
- format: int32
- type: integer
- pdName:
- type: string
- readOnly:
- type: boolean
- required:
- - pdName
- type: object
- gitRepo:
- properties:
- directory:
- type: string
- repository:
- type: string
- revision:
- type: string
- required:
- - repository
- type: object
- glusterfs:
- properties:
- endpoints:
- type: string
- path:
- type: string
- readOnly:
- type: boolean
- required:
- - endpoints
- - path
- type: object
- hostPath:
- properties:
- path:
- type: string
- type:
- type: string
- required:
- - path
- type: object
- iscsi:
- properties:
- chapAuthDiscovery:
- type: boolean
- chapAuthSession:
- type: boolean
- fsType:
- type: string
- initiatorName:
- type: string
- iqn:
- type: string
- iscsiInterface:
- type: string
- lun:
- format: int32
- type: integer
- portals:
- items:
- type: string
- type: array
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- targetPortal:
- type: string
- required:
- - iqn
- - lun
- - targetPortal
- type: object
- name:
- type: string
- nfs:
- properties:
- path:
- type: string
- readOnly:
- type: boolean
- server:
- type: string
- required:
- - path
- - server
- type: object
- persistentVolumeClaim:
- properties:
- claimName:
- type: string
- readOnly:
- type: boolean
- required:
- - claimName
- type: object
- photonPersistentDisk:
- properties:
- fsType:
- type: string
- pdID:
- type: string
- required:
- - pdID
- type: object
- portworxVolume:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- volumeID:
- type: string
- required:
- - volumeID
- type: object
- projected:
- properties:
- defaultMode:
- format: int32
- type: integer
- sources:
- items:
- properties:
- configMap:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- downwardAPI:
- properties:
- items:
- items:
- properties:
- fieldRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- required:
- - fieldPath
- type: object
- mode:
- format: int32
- type: integer
- path:
- type: string
- resourceFieldRef:
- properties:
- containerName:
- type: string
- divisor:
- anyOf:
- - type: integer
- - type: string
- pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
- x-kubernetes-int-or-string: true
- resource:
- type: string
- required:
- - resource
- type: object
- required:
- - path
- type: object
- type: array
- type: object
- secret:
- properties:
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- name:
- type: string
- optional:
- type: boolean
- type: object
- serviceAccountToken:
- properties:
- audience:
- type: string
- expirationSeconds:
- format: int64
- type: integer
- path:
- type: string
- required:
- - path
- type: object
- type: object
- type: array
- type: object
- quobyte:
- properties:
- group:
- type: string
- readOnly:
- type: boolean
- registry:
- type: string
- tenant:
- type: string
- user:
- type: string
- volume:
- type: string
- required:
- - registry
- - volume
- type: object
- rbd:
- properties:
- fsType:
- type: string
- image:
- type: string
- keyring:
- type: string
- monitors:
- items:
- type: string
- type: array
- pool:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- user:
- type: string
- required:
- - image
- - monitors
- type: object
- scaleIO:
- properties:
- fsType:
- type: string
- gateway:
- type: string
- protectionDomain:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- sslEnabled:
- type: boolean
- storageMode:
- type: string
- storagePool:
- type: string
- system:
- type: string
- volumeName:
- type: string
- required:
- - gateway
- - secretRef
- - system
- type: object
- secret:
- properties:
- defaultMode:
- format: int32
- type: integer
- items:
- items:
- properties:
- key:
- type: string
- mode:
- format: int32
- type: integer
- path:
- type: string
- required:
- - key
- - path
- type: object
- type: array
- optional:
- type: boolean
- secretName:
- type: string
- type: object
- storageos:
- properties:
- fsType:
- type: string
- readOnly:
- type: boolean
- secretRef:
- properties:
- name:
- type: string
- type: object
- volumeName:
- type: string
- volumeNamespace:
- type: string
- type: object
- vsphereVolume:
- properties:
- fsType:
- type: string
- storagePolicyID:
- type: string
- storagePolicyName:
- type: string
- volumePath:
- type: string
- required:
- - volumePath
- type: object
- required:
- - name
- type: object
- type: array
- workflowMetadata:
- properties:
- annotations:
- additionalProperties:
- type: string
- type: object
- labels:
- additionalProperties:
- type: string
- type: object
- labelsFrom:
- additionalProperties:
- properties:
- expression:
- type: string
- required:
- - expression
- type: object
- type: object
- type: object
- workflowTemplateRef:
- properties:
- clusterScope:
- type: boolean
- name:
- type: string
- type: object
- type: object
- required:
- - metadata
- - spec
- type: object
- served: true
- storage: true
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/full/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/full/kustomization.yaml
deleted file mode 100644
index 62ba490..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/full/kustomization.yaml
+++ /dev/null
@@ -1,10 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
-- argoproj.io_clusterworkflowtemplates.yaml
-- argoproj.io_cronworkflows.yaml
-- argoproj.io_workflows.yaml
-- argoproj.io_workflowtemplates.yaml
-- argoproj.io_workfloweventbindings.yaml
-- argoproj.io_workflowtasksets.yaml
-- argoproj.io_workflowtaskresults.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/kustomization.yaml
deleted file mode 100644
index 25ffbec..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/kustomization.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
- - minimal
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/minimal/README.md b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/minimal/README.md
deleted file mode 100644
index 55f48f0..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/minimal/README.md
+++ /dev/null
@@ -1,3 +0,0 @@
-# Minimal CRDs
-
-These CRDs omit schema validation.
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/minimal/argoproj.io_clusterworkflowtemplates.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/minimal/argoproj.io_clusterworkflowtemplates.yaml
deleted file mode 100644
index 90c8fb8..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/minimal/argoproj.io_clusterworkflowtemplates.yaml
+++ /dev/null
@@ -1,36 +0,0 @@
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata: # kpt-merge: /clusterworkflowtemplates.argoproj.io
- name: clusterworkflowtemplates.argoproj.io
-spec:
- group: argoproj.io
- names:
- kind: ClusterWorkflowTemplate
- listKind: ClusterWorkflowTemplateList
- plural: clusterworkflowtemplates
- shortNames:
- - clusterwftmpl
- - cwft
- singular: clusterworkflowtemplate
- scope: Cluster
- versions:
- - name: v1alpha1
- schema:
- openAPIV3Schema:
- properties:
- apiVersion:
- type: string
- kind:
- type: string
- metadata:
- type: object
- spec:
- type: object
- x-kubernetes-map-type: atomic
- x-kubernetes-preserve-unknown-fields: true
- required:
- - metadata
- - spec
- type: object
- served: true
- storage: true
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/minimal/argoproj.io_cronworkflows.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/minimal/argoproj.io_cronworkflows.yaml
deleted file mode 100644
index 1809239..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/minimal/argoproj.io_cronworkflows.yaml
+++ /dev/null
@@ -1,40 +0,0 @@
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata: # kpt-merge: /cronworkflows.argoproj.io
- name: cronworkflows.argoproj.io
-spec:
- group: argoproj.io
- names:
- kind: CronWorkflow
- listKind: CronWorkflowList
- plural: cronworkflows
- shortNames:
- - cwf
- - cronwf
- singular: cronworkflow
- scope: Namespaced
- versions:
- - name: v1alpha1
- schema:
- openAPIV3Schema:
- properties:
- apiVersion:
- type: string
- kind:
- type: string
- metadata:
- type: object
- spec:
- type: object
- x-kubernetes-map-type: atomic
- x-kubernetes-preserve-unknown-fields: true
- status:
- type: object
- x-kubernetes-map-type: atomic
- x-kubernetes-preserve-unknown-fields: true
- required:
- - metadata
- - spec
- type: object
- served: true
- storage: true
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/minimal/argoproj.io_workfloweventbindings.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/minimal/argoproj.io_workfloweventbindings.yaml
deleted file mode 100644
index ab81216..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/minimal/argoproj.io_workfloweventbindings.yaml
+++ /dev/null
@@ -1,35 +0,0 @@
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata: # kpt-merge: /workfloweventbindings.argoproj.io
- name: workfloweventbindings.argoproj.io
-spec:
- group: argoproj.io
- names:
- kind: WorkflowEventBinding
- listKind: WorkflowEventBindingList
- plural: workfloweventbindings
- shortNames:
- - wfeb
- singular: workfloweventbinding
- scope: Namespaced
- versions:
- - name: v1alpha1
- schema:
- openAPIV3Schema:
- properties:
- apiVersion:
- type: string
- kind:
- type: string
- metadata:
- type: object
- spec:
- type: object
- x-kubernetes-map-type: atomic
- x-kubernetes-preserve-unknown-fields: true
- required:
- - metadata
- - spec
- type: object
- served: true
- storage: true
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/minimal/argoproj.io_workflows.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/minimal/argoproj.io_workflows.yaml
deleted file mode 100644
index f13fb38..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/minimal/argoproj.io_workflows.yaml
+++ /dev/null
@@ -1,50 +0,0 @@
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata: # kpt-merge: /workflows.argoproj.io
- name: workflows.argoproj.io
-spec:
- group: argoproj.io
- names:
- kind: Workflow
- listKind: WorkflowList
- plural: workflows
- shortNames:
- - wf
- singular: workflow
- scope: Namespaced
- versions:
- - additionalPrinterColumns:
- - description: Status of the workflow
- jsonPath: .status.phase
- name: Status
- type: string
- - description: When the workflow was started
- format: date-time
- jsonPath: .status.startedAt
- name: Age
- type: date
- name: v1alpha1
- schema:
- openAPIV3Schema:
- properties:
- apiVersion:
- type: string
- kind:
- type: string
- metadata:
- type: object
- spec:
- type: object
- x-kubernetes-map-type: atomic
- x-kubernetes-preserve-unknown-fields: true
- status:
- type: object
- x-kubernetes-map-type: atomic
- x-kubernetes-preserve-unknown-fields: true
- required:
- - metadata
- - spec
- type: object
- served: true
- storage: true
- subresources: {}
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/minimal/argoproj.io_workflowtaskresults.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/minimal/argoproj.io_workflowtaskresults.yaml
deleted file mode 100644
index 6ef09a5..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/minimal/argoproj.io_workflowtaskresults.yaml
+++ /dev/null
@@ -1,425 +0,0 @@
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata: # kpt-merge: /workflowtaskresults.argoproj.io
- name: workflowtaskresults.argoproj.io
-spec:
- group: argoproj.io
- names:
- kind: WorkflowTaskResult
- listKind: WorkflowTaskResultList
- plural: workflowtaskresults
- singular: workflowtaskresult
- scope: Namespaced
- versions:
- - name: v1alpha1
- schema:
- openAPIV3Schema:
- properties:
- apiVersion:
- type: string
- kind:
- type: string
- message:
- type: string
- metadata:
- type: object
- outputs:
- properties:
- artifacts:
- items:
- properties:
- archive:
- properties:
- none:
- type: object
- tar:
- properties:
- compressionLevel:
- format: int32
- type: integer
- type: object
- zip:
- type: object
- type: object
- archiveLogs:
- type: boolean
- artifactory:
- properties:
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- url:
- type: string
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - url
- type: object
- from:
- type: string
- fromExpression:
- type: string
- gcs:
- properties:
- bucket:
- type: string
- key:
- type: string
- serviceAccountKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - key
- type: object
- git:
- properties:
- depth:
- format: int64
- type: integer
- disableSubmodules:
- type: boolean
- fetch:
- items:
- type: string
- type: array
- insecureIgnoreHostKey:
- type: boolean
- passwordSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- repo:
- type: string
- revision:
- type: string
- sshPrivateKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- usernameSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- required:
- - repo
- type: object
- globalName:
- type: string
- hdfs:
- properties:
- addresses:
- items:
- type: string
- type: array
- force:
- type: boolean
- hdfsUser:
- type: string
- krbCCacheSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbConfigConfigMap:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbKeytabSecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- krbRealm:
- type: string
- krbServicePrincipalName:
- type: string
- krbUsername:
- type: string
- path:
- type: string
- required:
- - path
- type: object
- http:
- properties:
- headers:
- items:
- properties:
- name:
- type: string
- value:
- type: string
- required:
- - name
- - value
- type: object
- type: array
- url:
- type: string
- required:
- - url
- type: object
- mode:
- format: int32
- type: integer
- name:
- type: string
- optional:
- type: boolean
- oss:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- type: boolean
- endpoint:
- type: string
- key:
- type: string
- lifecycleRule:
- properties:
- markDeletionAfterDays:
- format: int32
- type: integer
- markInfrequentAccessAfterDays:
- format: int32
- type: integer
- type: object
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- securityToken:
- type: string
- required:
- - key
- type: object
- path:
- type: string
- raw:
- properties:
- data:
- type: string
- required:
- - data
- type: object
- recurseMode:
- type: boolean
- s3:
- properties:
- accessKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- bucket:
- type: string
- createBucketIfNotPresent:
- properties:
- objectLocking:
- type: boolean
- type: object
- encryptionOptions:
- properties:
- enableEncryption:
- type: boolean
- kmsEncryptionContext:
- type: string
- kmsKeyId:
- type: string
- serverSideCustomerKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- type: object
- endpoint:
- type: string
- insecure:
- type: boolean
- key:
- type: string
- region:
- type: string
- roleARN:
- type: string
- secretKeySecret:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- useSDKCreds:
- type: boolean
- type: object
- subPath:
- type: string
- required:
- - name
- type: object
- type: array
- exitCode:
- type: string
- parameters:
- items:
- properties:
- default:
- type: string
- description:
- type: string
- enum:
- items:
- type: string
- type: array
- globalName:
- type: string
- name:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- key:
- type: string
- name:
- type: string
- optional:
- type: boolean
- required:
- - key
- type: object
- default:
- type: string
- event:
- type: string
- expression:
- type: string
- jqFilter:
- type: string
- jsonPath:
- type: string
- parameter:
- type: string
- path:
- type: string
- supplied:
- type: object
- type: object
- required:
- - name
- type: object
- type: array
- result:
- type: string
- type: object
- phase:
- type: string
- progress:
- type: string
- required:
- - metadata
- type: object
- served: true
- storage: true
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/minimal/argoproj.io_workflowtasksets.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/minimal/argoproj.io_workflowtasksets.yaml
deleted file mode 100644
index 9620d8e..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/minimal/argoproj.io_workflowtasksets.yaml
+++ /dev/null
@@ -1,41 +0,0 @@
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata: # kpt-merge: /workflowtasksets.argoproj.io
- name: workflowtasksets.argoproj.io
-spec:
- group: argoproj.io
- names:
- kind: WorkflowTaskSet
- listKind: WorkflowTaskSetList
- plural: workflowtasksets
- shortNames:
- - wfts
- singular: workflowtaskset
- scope: Namespaced
- versions:
- - name: v1alpha1
- schema:
- openAPIV3Schema:
- properties:
- apiVersion:
- type: string
- kind:
- type: string
- metadata:
- type: object
- spec:
- type: object
- x-kubernetes-map-type: atomic
- x-kubernetes-preserve-unknown-fields: true
- status:
- type: object
- x-kubernetes-map-type: atomic
- x-kubernetes-preserve-unknown-fields: true
- required:
- - metadata
- - spec
- type: object
- served: true
- storage: true
- subresources:
- status: {}
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/minimal/argoproj.io_workflowtemplates.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/minimal/argoproj.io_workflowtemplates.yaml
deleted file mode 100644
index d2c87bf..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/minimal/argoproj.io_workflowtemplates.yaml
+++ /dev/null
@@ -1,35 +0,0 @@
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata: # kpt-merge: /workflowtemplates.argoproj.io
- name: workflowtemplates.argoproj.io
-spec:
- group: argoproj.io
- names:
- kind: WorkflowTemplate
- listKind: WorkflowTemplateList
- plural: workflowtemplates
- shortNames:
- - wftmpl
- singular: workflowtemplate
- scope: Namespaced
- versions:
- - name: v1alpha1
- schema:
- openAPIV3Schema:
- properties:
- apiVersion:
- type: string
- kind:
- type: string
- metadata:
- type: object
- spec:
- type: object
- x-kubernetes-map-type: atomic
- x-kubernetes-preserve-unknown-fields: true
- required:
- - metadata
- - spec
- type: object
- served: true
- storage: true
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/minimal/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/minimal/kustomization.yaml
deleted file mode 100644
index 62ba490..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/crds/minimal/kustomization.yaml
+++ /dev/null
@@ -1,10 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
-- argoproj.io_clusterworkflowtemplates.yaml
-- argoproj.io_cronworkflows.yaml
-- argoproj.io_workflows.yaml
-- argoproj.io_workflowtemplates.yaml
-- argoproj.io_workfloweventbindings.yaml
-- argoproj.io_workflowtasksets.yaml
-- argoproj.io_workflowtaskresults.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/kustomization.yaml
deleted file mode 100644
index 02094eb..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/kustomization.yaml
+++ /dev/null
@@ -1,6 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
-- crds
-- workflow-controller
-- argo-server
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/workflow-controller/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/workflow-controller/kustomization.yaml
deleted file mode 100644
index 9b852af..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/workflow-controller/kustomization.yaml
+++ /dev/null
@@ -1,8 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
-- workflow-controller-configmap.yaml
-- workflow-controller-deployment.yaml
-- workflow-controller-sa.yaml
-- workflow-controller-metrics-service.yaml
-- workflow-controller-priorityclass.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/workflow-controller/workflow-controller-configmap.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/workflow-controller/workflow-controller-configmap.yaml
deleted file mode 100644
index 3d1f253..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/workflow-controller/workflow-controller-configmap.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: ConfigMap
-metadata: # kpt-merge: /workflow-controller-configmap
- name: workflow-controller-configmap
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/workflow-controller/workflow-controller-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/workflow-controller/workflow-controller-deployment.yaml
deleted file mode 100644
index 27ebd13..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/workflow-controller/workflow-controller-deployment.yaml
+++ /dev/null
@@ -1,55 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata: # kpt-merge: /workflow-controller
- name: workflow-controller
-spec:
- selector:
- matchLabels:
- app: workflow-controller
- template:
- metadata:
- labels:
- app: workflow-controller
- spec:
- priorityClassName: workflow-controller
- serviceAccountName: argo
- containers:
- - name: workflow-controller
- image: quay.io/argoproj/workflow-controller:latest
- securityContext:
- readOnlyRootFilesystem: true
- runAsNonRoot: true
- allowPrivilegeEscalation: false
- capabilities:
- drop:
- - ALL
- command:
- - workflow-controller
- args:
- - --configmap
- - workflow-controller-configmap
- - --executor-image
- - quay.io/argoproj/argoexec:latest
- env:
- - name: LEADER_ELECTION_IDENTITY
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.name
- ports:
- - name: metrics
- containerPort: 9090
- - containerPort: 6060
- livenessProbe:
- httpGet:
- port: 6060
- path: /healthz
- # Require three failures to tolerate transient errors.
- failureThreshold: 3
- initialDelaySeconds: 90
- periodSeconds: 60
- timeoutSeconds: 30
- securityContext:
- runAsNonRoot: true
- nodeSelector:
- kubernetes.io/os: linux
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/workflow-controller/workflow-controller-metrics-service.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/workflow-controller/workflow-controller-metrics-service.yaml
deleted file mode 100644
index 525f0a2..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/workflow-controller/workflow-controller-metrics-service.yaml
+++ /dev/null
@@ -1,19 +0,0 @@
-apiVersion: v1
-kind: Service
-metadata: # kpt-merge: /workflow-controller-metrics
- name: workflow-controller-metrics
- labels:
- app: workflow-controller
- annotations:
- workflows.argoproj.io/description: |
- This service is deprecated. It will be removed in v3.4.
-
- https://github.com/argoproj/argo-workflows/issues/8441
-spec:
- selector:
- app: workflow-controller
- ports:
- - name: metrics
- port: 9090
- targetPort: 9090
- protocol: TCP
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/workflow-controller/workflow-controller-priorityclass.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/workflow-controller/workflow-controller-priorityclass.yaml
deleted file mode 100644
index 37a7716..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/workflow-controller/workflow-controller-priorityclass.yaml
+++ /dev/null
@@ -1,5 +0,0 @@
-apiVersion: scheduling.k8s.io/v1
-kind: PriorityClass
-metadata: # kpt-merge: /workflow-controller
- name: workflow-controller
-value: 1000000
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/workflow-controller/workflow-controller-sa.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/workflow-controller/workflow-controller-sa.yaml
deleted file mode 100644
index bc31906..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/base/workflow-controller/workflow-controller-sa.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata: # kpt-merge: /argo
- name: argo
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/cluster-install/argo-server-rbac/argo-server-clusterole.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/cluster-install/argo-server-rbac/argo-server-clusterole.yaml
deleted file mode 100644
index fa21441..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/cluster-install/argo-server-rbac/argo-server-clusterole.yaml
+++ /dev/null
@@ -1,67 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata: # kpt-merge: /argo-server-cluster-role
- name: argo-server-cluster-role
-rules:
- - apiGroups:
- - ""
- resources:
- - configmaps
- verbs:
- - get
- - watch
- - list
- - apiGroups:
- - ""
- resources:
- - secrets
- verbs:
- - get
- - create
- - list
- - watch
- - apiGroups:
- - ""
- resources:
- - pods
- - pods/exec
- - pods/log
- verbs:
- - get
- - list
- - watch
- - delete
- - apiGroups:
- - ""
- resources:
- - events
- verbs:
- - watch
- - create
- - patch
- - apiGroups:
- - ""
- resources:
- - serviceaccounts
- verbs:
- - get
- - list
- - watch
- - apiGroups:
- - argoproj.io
- resources:
- - eventsources
- - sensors
- - workflows
- - workfloweventbindings
- - workflowtemplates
- - cronworkflows
- - clusterworkflowtemplates
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/cluster-install/argo-server-rbac/argo-server-clusterolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/cluster-install/argo-server-rbac/argo-server-clusterolebinding.yaml
deleted file mode 100644
index 1e54be5..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/cluster-install/argo-server-rbac/argo-server-clusterolebinding.yaml
+++ /dev/null
@@ -1,12 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata: # kpt-merge: /argo-server-binding
- name: argo-server-binding
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: argo-server-cluster-role
-subjects:
- - kind: ServiceAccount
- name: argo-server
- namespace: argo
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/cluster-install/argo-server-rbac/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/cluster-install/argo-server-rbac/kustomization.yaml
deleted file mode 100644
index 91d213a..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/cluster-install/argo-server-rbac/kustomization.yaml
+++ /dev/null
@@ -1,5 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
-- argo-server-clusterole.yaml
-- argo-server-clusterolebinding.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/cluster-install/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/cluster-install/kustomization.yaml
deleted file mode 100644
index bfdc9ec..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/cluster-install/kustomization.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
-- ../base
-- ./workflow-controller-rbac
-- ./argo-server-rbac
-namespace: argo
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/cluster-install/workflow-controller-rbac/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/cluster-install/workflow-controller-rbac/kustomization.yaml
deleted file mode 100644
index ab7574c..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/cluster-install/workflow-controller-rbac/kustomization.yaml
+++ /dev/null
@@ -1,8 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
-- workflow-aggregate-roles.yaml
-- workflow-controller-clusterrole.yaml
-- workflow-controller-clusterrolebinding.yaml
-- workflow-controller-role.yaml
-- workflow-controller-rolebinding.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/cluster-install/workflow-controller-rbac/workflow-aggregate-roles.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/cluster-install/workflow-controller-rbac/workflow-aggregate-roles.yaml
deleted file mode 100644
index e44cf34..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/cluster-install/workflow-controller-rbac/workflow-aggregate-roles.yaml
+++ /dev/null
@@ -1,86 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata: # kpt-merge: /argo-aggregate-to-view
- name: argo-aggregate-to-view
- labels:
- rbac.authorization.k8s.io/aggregate-to-view: "true"
-rules:
-- apiGroups:
- - argoproj.io
- resources:
- - workflows
- - workflows/finalizers
- - workfloweventbindings
- - workfloweventbindings/finalizers
- - workflowtemplates
- - workflowtemplates/finalizers
- - cronworkflows
- - cronworkflows/finalizers
- - clusterworkflowtemplates
- - clusterworkflowtemplates/finalizers
- verbs:
- - get
- - list
- - watch
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata: # kpt-merge: /argo-aggregate-to-edit
- name: argo-aggregate-to-edit
- labels:
- rbac.authorization.k8s.io/aggregate-to-edit: "true"
-rules:
-- apiGroups:
- - argoproj.io
- resources:
- - workflows
- - workflows/finalizers
- - workfloweventbindings
- - workfloweventbindings/finalizers
- - workflowtemplates
- - workflowtemplates/finalizers
- - cronworkflows
- - cronworkflows/finalizers
- - clusterworkflowtemplates
- - clusterworkflowtemplates/finalizers
- verbs:
- - create
- - delete
- - deletecollection
- - get
- - list
- - patch
- - update
- - watch
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata: # kpt-merge: /argo-aggregate-to-admin
- name: argo-aggregate-to-admin
- labels:
- rbac.authorization.k8s.io/aggregate-to-admin: "true"
-rules:
-- apiGroups:
- - argoproj.io
- resources:
- - workflows
- - workflows/finalizers
- - workfloweventbindings
- - workfloweventbindings/finalizers
- - workflowtemplates
- - workflowtemplates/finalizers
- - cronworkflows
- - cronworkflows/finalizers
- - clusterworkflowtemplates
- - clusterworkflowtemplates/finalizers
- - workflowtasksets
- - workflowtasksets/finalizers
- verbs:
- - create
- - delete
- - deletecollection
- - get
- - list
- - patch
- - update
- - watch
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/cluster-install/workflow-controller-rbac/workflow-controller-clusterrole.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/cluster-install/workflow-controller-rbac/workflow-controller-clusterrole.yaml
deleted file mode 100644
index e14d00b..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/cluster-install/workflow-controller-rbac/workflow-controller-clusterrole.yaml
+++ /dev/null
@@ -1,104 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata: # kpt-merge: /argo-cluster-role
- name: argo-cluster-role
-rules:
-- apiGroups:
- - ""
- resources:
- - pods
- - pods/exec
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
-- apiGroups:
- - ""
- resources:
- - configmaps
- verbs:
- - get
- - watch
- - list
-- apiGroups:
- - ""
- resources:
- - persistentvolumeclaims
- - persistentvolumeclaims/finalizers
- verbs:
- - create
- - update
- - delete
- - get
-- apiGroups:
- - argoproj.io
- resources:
- - workflows
- - workflows/finalizers
- - workflowtasksets
- - workflowtasksets/finalizers
- verbs:
- - get
- - list
- - watch
- - update
- - patch
- - delete
- - create
-- apiGroups:
- - argoproj.io
- resources:
- - workflowtemplates
- - workflowtemplates/finalizers
- - clusterworkflowtemplates
- - clusterworkflowtemplates/finalizers
- verbs:
- - get
- - list
- - watch
-- apiGroups:
- - argoproj.io
- resources:
- - workflowtaskresults
- verbs:
- - list
- - watch
- - deletecollection
-- apiGroups:
- - ""
- resources:
- - serviceaccounts
- verbs:
- - get
- - list
-- apiGroups:
- - argoproj.io
- resources:
- - cronworkflows
- - cronworkflows/finalizers
- verbs:
- - get
- - list
- - watch
- - update
- - patch
- - delete
-- apiGroups:
- - ""
- resources:
- - events
- verbs:
- - create
- - patch
-- apiGroups:
- - "policy"
- resources:
- - poddisruptionbudgets
- verbs:
- - create
- - get
- - delete
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/cluster-install/workflow-controller-rbac/workflow-controller-clusterrolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/cluster-install/workflow-controller-rbac/workflow-controller-clusterrolebinding.yaml
deleted file mode 100644
index 0988ebd..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/cluster-install/workflow-controller-rbac/workflow-controller-clusterrolebinding.yaml
+++ /dev/null
@@ -1,12 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata: # kpt-merge: /argo-binding
- name: argo-binding
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: argo-cluster-role
-subjects:
-- kind: ServiceAccount
- name: argo
- namespace: argo
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/cluster-install/workflow-controller-rbac/workflow-controller-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/cluster-install/workflow-controller-rbac/workflow-controller-role.yaml
deleted file mode 100755
index 4a9ae4f..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/cluster-install/workflow-controller-rbac/workflow-controller-role.yaml
+++ /dev/null
@@ -1,19 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata: # kpt-merge: /argo-role
- name: argo-role
-rules:
- - apiGroups:
- - coordination.k8s.io
- resources:
- - leases
- verbs:
- - create
- - get
- - update
- - apiGroups:
- - ""
- resources:
- - secrets
- verbs:
- - get
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/cluster-install/workflow-controller-rbac/workflow-controller-rolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/cluster-install/workflow-controller-rbac/workflow-controller-rolebinding.yaml
deleted file mode 100644
index cb4f33d..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/cluster-install/workflow-controller-rbac/workflow-controller-rolebinding.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata: # kpt-merge: /argo-binding
- name: argo-binding
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: argo-role
-subjects:
- - kind: ServiceAccount
- name: argo
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/namespace-install/argo-server-rbac/argo-server-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/namespace-install/argo-server-rbac/argo-server-role.yaml
deleted file mode 100644
index cff53de..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/namespace-install/argo-server-rbac/argo-server-role.yaml
+++ /dev/null
@@ -1,67 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata: # kpt-merge: /argo-server-role
- name: argo-server-role
-rules:
- - apiGroups:
- - ""
- resources:
- - configmaps
- verbs:
- - get
- - watch
- - list
- - apiGroups:
- - ""
- resources:
- - secrets
- verbs:
- - get
- - create
- - list
- - watch
- - apiGroups:
- - ""
- resources:
- - pods
- - pods/exec
- - pods/log
- verbs:
- - get
- - list
- - watch
- - delete
- - apiGroups:
- - ""
- resources:
- - events
- verbs:
- - watch
- - create
- - patch
- - apiGroups:
- - ""
- resources:
- - serviceaccounts
- verbs:
- - get
- - list
- - watch
- - apiGroups:
- - argoproj.io
- resources:
- - eventsources
- - sensors
- - workflows
- - workfloweventbindings
- - workflowtemplates
- - cronworkflows
- - cronworkflows/finalizers
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/namespace-install/argo-server-rbac/argo-server-rolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/namespace-install/argo-server-rbac/argo-server-rolebinding.yaml
deleted file mode 100644
index 6d0e838..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/namespace-install/argo-server-rbac/argo-server-rolebinding.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata: # kpt-merge: /argo-server-binding
- name: argo-server-binding
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: argo-server-role
-subjects:
-- kind: ServiceAccount
- name: argo-server
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/namespace-install/argo-server-rbac/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/namespace-install/argo-server-rbac/kustomization.yaml
deleted file mode 100644
index c1ca948..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/namespace-install/argo-server-rbac/kustomization.yaml
+++ /dev/null
@@ -1,5 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
-- argo-server-role.yaml
-- argo-server-rolebinding.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/namespace-install/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/namespace-install/kustomization.yaml
deleted file mode 100644
index a3c7fe6..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/namespace-install/kustomization.yaml
+++ /dev/null
@@ -1,19 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
- - ../base
- - ./argo-server-rbac
- - ./workflow-controller-rbac
-patchesJson6902:
- - target:
- version: v1
- group: apps
- kind: Deployment
- name: workflow-controller
- path: ./overlays/workflow-controller-deployment.yaml
- - target:
- version: v1
- group: apps
- kind: Deployment
- name: argo-server
- path: ./overlays/argo-server-deployment.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/namespace-install/overlays/argo-server-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/namespace-install/overlays/argo-server-deployment.yaml
deleted file mode 100644
index 90fd8a5..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/namespace-install/overlays/argo-server-deployment.yaml
+++ /dev/null
@@ -1,3 +0,0 @@
-- op: add
- path: /spec/template/spec/containers/0/args/-
- value: --namespaced
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/namespace-install/overlays/workflow-controller-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/namespace-install/overlays/workflow-controller-deployment.yaml
deleted file mode 100644
index 90fd8a5..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/namespace-install/overlays/workflow-controller-deployment.yaml
+++ /dev/null
@@ -1,3 +0,0 @@
-- op: add
- path: /spec/template/spec/containers/0/args/-
- value: --namespaced
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/namespace-install/workflow-controller-rbac/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/namespace-install/workflow-controller-rbac/kustomization.yaml
deleted file mode 100644
index 1f9553f..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/namespace-install/workflow-controller-rbac/kustomization.yaml
+++ /dev/null
@@ -1,5 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
-- workflow-controller-role.yaml
-- workflow-controller-rolebinding.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/namespace-install/workflow-controller-rbac/workflow-controller-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/namespace-install/workflow-controller-rbac/workflow-controller-role.yaml
deleted file mode 100644
index 22a7751..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/namespace-install/workflow-controller-rbac/workflow-controller-role.yaml
+++ /dev/null
@@ -1,123 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata: # kpt-merge: /argo-role
- name: argo-role
-rules:
- - apiGroups:
- - coordination.k8s.io
- resources:
- - leases
- verbs:
- - create
- - get
- - update
- - apiGroups:
- - ""
- resources:
- - pods
- - pods/exec
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
- - apiGroups:
- - ""
- resources:
- - configmaps
- verbs:
- - get
- - watch
- - list
- - apiGroups:
- - ""
- resources:
- - persistentvolumeclaims
- - persistentvolumeclaims/finalizers
- verbs:
- - create
- - update
- - delete
- - get
- - apiGroups:
- - argoproj.io
- resources:
- - workflows
- - workflows/finalizers
- - workflowtasksets
- - workflowtasksets/finalizers
- verbs:
- - get
- - list
- - watch
- - update
- - patch
- - delete
- - create
- - apiGroups:
- - argoproj.io
- resources:
- - workflowtemplates
- - workflowtemplates/finalizers
- verbs:
- - get
- - list
- - watch
- - apiGroups:
- - ""
- resources:
- - serviceaccounts
- verbs:
- - get
- - list
- - apiGroups:
- - argoproj.io
- resources:
- - workflowtaskresults
- verbs:
- - list
- - watch
- - deletecollection
- - apiGroups:
- - ""
- resources:
- - serviceaccounts
- verbs:
- - get
- - list
- - apiGroups:
- - ""
- resources:
- - secrets
- verbs:
- - get
- - apiGroups:
- - argoproj.io
- resources:
- - cronworkflows
- - cronworkflows/finalizers
- verbs:
- - get
- - list
- - watch
- - update
- - patch
- - delete
- - apiGroups:
- - ""
- resources:
- - events
- verbs:
- - create
- - patch
- - apiGroups:
- - "policy"
- resources:
- - poddisruptionbudgets
- verbs:
- - create
- - get
- - delete
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/namespace-install/workflow-controller-rbac/workflow-controller-rolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/namespace-install/workflow-controller-rbac/workflow-controller-rolebinding.yaml
deleted file mode 100644
index 300cb6c..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/namespace-install/workflow-controller-rbac/workflow-controller-rolebinding.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata: # kpt-merge: /argo-binding
- name: argo-binding
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: argo-role
-subjects:
-- kind: ServiceAccount
- name: argo
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/agent-default-rolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/agent-default-rolebinding.yaml
deleted file mode 100644
index 0c21120..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/agent-default-rolebinding.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata: # kpt-merge: /agent-default
- name: agent-default
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: agent
-subjects:
- - kind: ServiceAccount
- name: default
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/agent-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/agent-role.yaml
deleted file mode 100644
index 6bd90ea..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/agent-role.yaml
+++ /dev/null
@@ -1,24 +0,0 @@
-# https://argoproj.github.io/argo-workflows/workflow-rbac/
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata: # kpt-merge: /agent
- name: agent
- annotations:
- workflows.argoproj.io/description: |
- This is the minimum recommended permissions needed if you want to use the agent, e.g. for HTTP or plugin templates.
-
- If <= v3.2 you must replace `workflowtasksets/status` with `patch workflowtasksets`.
-rules:
- - apiGroups:
- - argoproj.io
- resources:
- - workflowtasksets
- verbs:
- - list
- - watch
- - apiGroups:
- - argoproj.io
- resources:
- - workflowtasksets/status
- verbs:
- - patch
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/argo-server-sso-secret.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/argo-server-sso-secret.yaml
deleted file mode 100644
index cc6fab1..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/argo-server-sso-secret.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-kind: Secret
-apiVersion: v1
-metadata: # kpt-merge: /argo-server-sso
- name: argo-server-sso
-stringData:
- clientID: argo-server
- clientSecret: ZXhhbXBsZS1hcHAtc2VjcmV0
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/artifact-repositories-configmap.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/artifact-repositories-configmap.yaml
deleted file mode 100644
index b548f41..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/artifact-repositories-configmap.yaml
+++ /dev/null
@@ -1,34 +0,0 @@
-apiVersion: v1
-kind: ConfigMap
-metadata: # kpt-merge: /artifact-repositories
- name: artifact-repositories
- annotations:
- # you'll want to change the default over time, e.g. when you move to new storage solution,
- # so we recommend you version them from the outset by suffixing the version
- workflows.argoproj.io/default-artifact-repository: default-v1
-data:
- default-v1: |
- archiveLogs: true
- s3:
- bucket: my-bucket
- endpoint: minio:9000
- insecure: true
- accessKeySecret:
- name: my-minio-cred
- key: accesskey
- secretKeySecret:
- name: my-minio-cred
- key: secretkey
- my-key: |
- archiveLogs: true
- s3:
- bucket: my-bucket
- endpoint: minio:9000
- insecure: true
- accessKeySecret:
- name: my-minio-cred
- key: accesskey
- secretKeySecret:
- name: my-minio-cred
- key: secretkey
- empty: ""
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/cluster-workflow-template-rbac.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/cluster-workflow-template-rbac.yaml
deleted file mode 100644
index 8b3c37c..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/cluster-workflow-template-rbac.yaml
+++ /dev/null
@@ -1,58 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata: # kpt-merge: /argo-server-clusterworkflowtemplate-role
- name: argo-server-clusterworkflowtemplate-role
-rules:
- - apiGroups:
- - argoproj.io
- resources:
- - clusterworkflowtemplates
- - clusterworkflowtemplates/finalizers
- verbs:
- - create
- - delete
- - watch
- - get
- - list
- - watch
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata: # kpt-merge: /argo-clusterworkflowtemplate-role
- name: argo-clusterworkflowtemplate-role
-rules:
- - apiGroups:
- - argoproj.io
- resources:
- - clusterworkflowtemplates
- - clusterworkflowtemplates/finalizers
- verbs:
- - get
- - list
- - watch
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata: # kpt-merge: /argo-clusterworkflowtemplate-role-binding
- name: argo-clusterworkflowtemplate-role-binding
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: argo-clusterworkflowtemplate-role
-subjects:
- - kind: ServiceAccount
- name: argo
- namespace: argo
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata: # kpt-merge: /argo-server-clusterworkflowtemplate-role-binding
- name: argo-server-clusterworkflowtemplate-role-binding
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: argo-server-clusterworkflowtemplate-role
-subjects:
- - kind: ServiceAccount
- name: argo-server
- namespace: argo
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/executor-default-rolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/executor-default-rolebinding.yaml
deleted file mode 100644
index 4283736..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/executor-default-rolebinding.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata: # kpt-merge: /executor-default
- name: executor-default
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: executor
-subjects:
- - kind: ServiceAccount
- name: default
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/executor/docker/executor-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/executor/docker/executor-role.yaml
deleted file mode 100644
index 6cf1527..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/executor/docker/executor-role.yaml
+++ /dev/null
@@ -1,17 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata: # kpt-merge: /executor
- name: executor
- annotations:
- workflows.argoproj.io/description: |
- Recommended minimum permissions for the `docker` executor.
-
- This executor is superseded by the `emmisary` executor, so we do not recommend you use it anymore.
-rules:
- - apiGroups:
- - argoproj.io
- resources:
- - workflowtaskresults
- verbs:
- - create
- - patch
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/executor/emissary/executor-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/executor/emissary/executor-role.yaml
deleted file mode 100644
index 89a3b41..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/executor/emissary/executor-role.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata: # kpt-merge: /executor
- name: executor
- annotations:
- workflows.argoproj.io/description: |
- Recomended minimum permissions for the `emissary` executor.
-rules:
- - apiGroups:
- - argoproj.io
- resources:
- - workflowtaskresults
- verbs:
- - create
- - patch
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/executor/k8sapi/executor-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/executor/k8sapi/executor-role.yaml
deleted file mode 100644
index 02da876..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/executor/k8sapi/executor-role.yaml
+++ /dev/null
@@ -1,36 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata: # kpt-merge: /executor
- name: executor
- annotations:
- workflows.argoproj.io/description: |
- Recommended minimum permissions for `k8siapi` executor.
-
- This executor is superseded by the `emmisary` executor, so we do not recommend you use it anymore.
-rules:
- - apiGroups:
- - argoproj.io
- resources:
- - workflowtaskresults
- verbs:
- - create
- - patch
- - apiGroups:
- - ""
- resources:
- - pods
- verbs:
- - get
- - watch
- - apiGroups:
- - ""
- resources:
- - pods/exec
- verbs:
- - create
- - apiGroups:
- - ""
- resources:
- - pods/log
- verbs:
- - get
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/executor/kubelet/executor-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/executor/kubelet/executor-role.yaml
deleted file mode 100644
index 2234052..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/executor/kubelet/executor-role.yaml
+++ /dev/null
@@ -1,17 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata: # kpt-merge: /executor
- name: executor
- annotations:
- workflows.argoproj.io/description: |
- Recommended minimum permissions for `kubelet` executor.
-
- This executor is superseded by the `emmisary` executor, so we do not recommend you use it anymore.
-rules:
- - apiGroups:
- - argoproj.io
- resources:
- - workflowtaskresults
- verbs:
- - create
- - patch
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/executor/kubelet/kubelet-executor-clusterrole.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/executor/kubelet/kubelet-executor-clusterrole.yaml
deleted file mode 100644
index 9d5e609..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/executor/kubelet/kubelet-executor-clusterrole.yaml
+++ /dev/null
@@ -1,12 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata: # kpt-merge: /kubelet-executor
- name: kubelet-executor
-rules:
- # This allows the kubelet executor.
- - apiGroups:
- - ""
- resources:
- - nodes/proxy
- verbs:
- - get
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/executor/kubelet/kubelet-executor-default-clusterrolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/executor/kubelet/kubelet-executor-default-clusterrolebinding.yaml
deleted file mode 100644
index 3697ef6..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/executor/kubelet/kubelet-executor-default-clusterrolebinding.yaml
+++ /dev/null
@@ -1,12 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata: # kpt-merge: /kubelet-executor-default
- name: kubelet-executor-default
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: kubelet-executor
-subjects:
- - kind: ServiceAccount
- name: default
- namespace: argo
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/executor/pns/executor-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/executor/pns/executor-role.yaml
deleted file mode 100644
index 50fae28..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/executor/pns/executor-role.yaml
+++ /dev/null
@@ -1,27 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata: # kpt-merge: /executor
- name: executor
- annotations:
- workflows.argoproj.io/description: |
- Recomended minimum permissions for `pns` executor.
-rules:
- - apiGroups:
- - argoproj.io
- resources:
- - workflowtaskresults
- verbs:
- - create
- - patch
- - apiGroups:
- - ""
- resources:
- - pods
- verbs:
- - watch
- - apiGroups:
- - ""
- resources:
- - pods/log
- verbs:
- - get
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/kustomization.yaml
deleted file mode 100644
index ceef08a..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/kustomization.yaml
+++ /dev/null
@@ -1,20 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
- - ../../namespace-install
- - minio
- - webhooks
- - argo-server-sso-secret.yaml
- - executor/emissary/executor-role.yaml
- - executor-default-rolebinding.yaml
- - pod-manager-role.yaml
- - pod-manager-default-rolebinding.yaml
- - workflow-manager-role.yaml
- - workflow-manager-default-rolebinding.yaml
- - agent-role.yaml
- - agent-default-rolebinding.yaml
- - cluster-workflow-template-rbac.yaml
- - artifact-repositories-configmap.yaml
-patchesStrategicMerge:
- - overlays/workflow-controller-configmap.yaml
- - overlays/argo-server-deployment.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/memoizer-default-rolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/memoizer-default-rolebinding.yaml
deleted file mode 100644
index 926858e..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/memoizer-default-rolebinding.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata: # kpt-merge: /memoizer-default
- name: memoizer-default
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: memoizer
-subjects:
- - kind: ServiceAccount
- name: default
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/memoizer-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/memoizer-role.yaml
deleted file mode 100644
index 84ddab7..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/memoizer-role.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata: # kpt-merge: /memoizer
- name: memoizer
- annotations:
- workflows.argoproj.io/description: |
- Only needed if you are using ConfigMap-based cache for memoization.
-rules:
- - apiGroups:
- - ""
- resources:
- - configmaps
- verbs:
- - create
- - get
- - update
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/minio/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/minio/kustomization.yaml
deleted file mode 100644
index 1199d38..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/minio/kustomization.yaml
+++ /dev/null
@@ -1,6 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
- - minio-deploy.yaml
- - minio-service.yaml
- - my-minio-cred-secret.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/minio/minio-deploy.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/minio/minio-deploy.yaml
deleted file mode 100644
index 2ac1da5..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/minio/minio-deploy.yaml
+++ /dev/null
@@ -1,42 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata: # kpt-merge: /minio
- name: minio
- labels:
- app: minio
-spec:
- selector:
- matchLabels:
- app: minio
- template:
- metadata:
- labels:
- app: minio
- spec:
- containers:
- - name: main
- image: minio/minio
- env:
- - name: MINIO_ACCESS_KEY
- value: admin
- - name: MINIO_SECRET_KEY
- value: password
- ports:
- - containerPort: 9000
- command: [minio, server, /data]
- lifecycle:
- postStart:
- exec:
- command: [mkdir, -p, /data/my-bucket]
- readinessProbe:
- httpGet:
- path: /minio/health/ready
- port: 9000
- initialDelaySeconds: 5
- periodSeconds: 10
- livenessProbe:
- httpGet:
- path: /minio/health/live
- port: 9000
- initialDelaySeconds: 5
- periodSeconds: 10
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/minio/minio-service.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/minio/minio-service.yaml
deleted file mode 100644
index e7b017d..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/minio/minio-service.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: v1
-kind: Service
-metadata: # kpt-merge: /minio
- name: minio
- labels:
- app: minio
-spec:
- selector:
- app: minio
- ports:
- - protocol: TCP
- port: 9000
- targetPort: 9000
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/minio/my-minio-cred-secret.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/minio/my-minio-cred-secret.yaml
deleted file mode 100644
index 52d9564..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/minio/my-minio-cred-secret.yaml
+++ /dev/null
@@ -1,10 +0,0 @@
-apiVersion: v1
-stringData:
- accesskey: admin
- secretkey: password
-kind: Secret
-metadata: # kpt-merge: /my-minio-cred
- name: my-minio-cred
- labels:
- app: minio
-type: Opaque
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/overlays/argo-server-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/overlays/argo-server-deployment.yaml
deleted file mode 100644
index 9fab5a8..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/overlays/argo-server-deployment.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata: # kpt-merge: /argo-server
- name: argo-server
-spec:
- template:
- spec:
- containers:
- - name: argo-server
- args:
- - server
- - --namespaced
- - --auth-mode
- - server
- - --auth-mode
- - client
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/overlays/workflow-controller-configmap.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/overlays/workflow-controller-configmap.yaml
deleted file mode 100644
index 89e4fbf..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/overlays/workflow-controller-configmap.yaml
+++ /dev/null
@@ -1,60 +0,0 @@
-apiVersion: v1
-data:
- executor: |
- resources:
- requests:
- cpu: 10m
- memory: 64Mi
- containerRuntimeExecutors: |
- - name: emissary
- selector:
- matchLabels:
- workflows.argoproj.io/container-runtime-executor: emissary
- - name: pns
- selector:
- matchLabels:
- workflows.argoproj.io/container-runtime-executor: pns
- images: |
- argoproj/argosay:v1:
- command: [cowsay]
- argoproj/argosay:v2:
- command: [/argosay]
- docker/whalesay:latest:
- command: [cowsay]
- python:alpine3.6:
- command: [python3]
- artifactRepository: |
- s3:
- bucket: my-bucket
- endpoint: minio:9000
- insecure: true
- accessKeySecret:
- name: my-minio-cred
- key: accesskey
- secretKeySecret:
- name: my-minio-cred
- key: secretkey
- metricsConfig: |
- enabled: true
- path: /metrics
- port: 9090
- namespaceParallelism: "10"
- links: |
- - name: Workflow Link
- scope: workflow
- url: http://logging-facility?namespace=${metadata.namespace}&workflowName=${metadata.name}&startedAt=${status.startedAt}&finishedAt=${status.finishedAt}
- - name: Pod Link
- scope: pod
- url: http://logging-facility?namespace=${metadata.namespace}&podName=${metadata.name}&startedAt=${status.startedAt}&finishedAt=${status.finishedAt}
- - name: Pod Logs Link
- scope: pod-logs
- url: http://logging-facility?namespace=${metadata.namespace}&podName=${metadata.name}&startedAt=${status.startedAt}&finishedAt=${status.finishedAt}
- - name: Event Source Logs Link
- scope: event-source-logs
- url: http://logging-facility?namespace=${metadata.namespace}&podName=${metadata.name}&startedAt=${status.startedAt}&finishedAt=${status.finishedAt}
- - name: Sensor Logs Link
- scope: sensor-logs
- url: http://logging-facility?namespace=${metadata.namespace}&podName=${metadata.name}&startedAt=${status.startedAt}&finishedAt=${status.finishedAt}
-kind: ConfigMap
-metadata: # kpt-merge: /workflow-controller-configmap
- name: workflow-controller-configmap
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/pod-manager-default-rolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/pod-manager-default-rolebinding.yaml
deleted file mode 100644
index a2e1c35..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/pod-manager-default-rolebinding.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata: # kpt-merge: /pod-manager-default
- name: pod-manager-default
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: pod-manager
-subjects:
- - kind: ServiceAccount
- name: default
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/pod-manager-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/pod-manager-role.yaml
deleted file mode 100644
index e98f0df..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/pod-manager-role.yaml
+++ /dev/null
@@ -1,17 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata: # kpt-merge: /pod-manager
- name: pod-manager
- annotations:
- workflows.argoproj.io/description: |
- This is an example of the permissions you would need if you wanted to use a resource template to create and manage
- other pods. The same pattern would be suitable for other resurces, e.g. a service
-rules:
- - apiGroups:
- - ""
- resources:
- - pods
- verbs:
- - create
- - get
- - patch
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/prometheus/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/prometheus/kustomization.yaml
deleted file mode 100644
index 32db823..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/prometheus/kustomization.yaml
+++ /dev/null
@@ -1,6 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
- - prometheus-deployment.yaml
- - prometheus-config-cluster.yaml
- - prometheus-service.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/prometheus/prometheus-config-cluster.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/prometheus/prometheus-config-cluster.yaml
deleted file mode 100644
index c99a335..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/prometheus/prometheus-config-cluster.yaml
+++ /dev/null
@@ -1,12 +0,0 @@
-apiVersion: v1
-kind: ConfigMap
-metadata: # kpt-merge: /prometheus-config
- name: prometheus-config
-data:
- prometheus.yaml: |
- global:
- scrape_interval: 15s
- scrape_configs:
- - job_name: 'argo'
- static_configs:
- - targets: ['workflow-controller-metrics:9090', 'argo-server:2746']
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/prometheus/prometheus-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/prometheus/prometheus-deployment.yaml
deleted file mode 100644
index ec13d7f..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/prometheus/prometheus-deployment.yaml
+++ /dev/null
@@ -1,35 +0,0 @@
-# This manifests creates a minimal Prometheus server to scrape and display the metrics emitted by the workflow
-# controller. To open this server, create an external IP for the prometheus service or use kubectl port-forward,
-# then open:
-#
-# localhost:9091/graph
-#
-# Note: this assumes the workflow-controller is emitting metrics in the default port (9090). This will need to
-# be modified if the default is overriden.
-apiVersion: apps/v1
-kind: Deployment
-metadata: # kpt-merge: /prometheus
- name: prometheus
-spec:
- replicas: 1
- selector:
- matchLabels:
- app: prometheus
- template:
- metadata:
- labels:
- app: prometheus
- name: prometheus
- spec:
- containers:
- - name: prometheus
- image: prom/prometheus
- args:
- - --config.file=/config/prometheus.yaml
- volumeMounts:
- - name: config
- mountPath: /config
- volumes:
- - name: config
- configMap:
- name: prometheus-config
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/prometheus/prometheus-service.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/prometheus/prometheus-service.yaml
deleted file mode 100644
index 26ce49d..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/prometheus/prometheus-service.yaml
+++ /dev/null
@@ -1,10 +0,0 @@
-apiVersion: v1
-kind: Service
-metadata: # kpt-merge: /prometheus
- name: prometheus
-spec:
- selector:
- app: prometheus
- ports:
- - name: metrics
- port: 9090
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/webhooks/argo-workflows-webhook-clients-secret.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/webhooks/argo-workflows-webhook-clients-secret.yaml
deleted file mode 100644
index 079013e..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/webhooks/argo-workflows-webhook-clients-secret.yaml
+++ /dev/null
@@ -1,22 +0,0 @@
-kind: Secret
-apiVersion: v1
-metadata: # kpt-merge: /argo-workflows-webhook-clients
- name: argo-workflows-webhook-clients
-# The data keys must be the name of a service account.
-stringData:
- # https://support.atlassian.com/bitbucket-cloud/docs/manage-webhooks/
- bitbucket.org: |
- type: bitbucket
- secret: "my-uuid"
- # https://confluence.atlassian.com/bitbucketserver/managing-webhooks-in-bitbucket-server-938025878.html
- bitbucketserver: |
- type: bitbucketserver
- secret: "shh!"
- # https://developer.github.com/webhooks/securing/
- github.com: |
- type: github
- secret: "shh!"
- # https://docs.gitlab.com/ee/user/project/integrations/webhooks.html
- gitlab.com: |-
- type: gitlab
- secret: "shh!"
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/webhooks/github.com-rolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/webhooks/github.com-rolebinding.yaml
deleted file mode 100644
index 959f8bd..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/webhooks/github.com-rolebinding.yaml
+++ /dev/null
@@ -1,12 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata: # kpt-merge: /github.com
- name: github.com
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: submit-workflow-template
-subjects:
- - kind: ServiceAccount
- name: github.com
- namespace: argo
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/webhooks/github.com-sa.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/webhooks/github.com-sa.yaml
deleted file mode 100644
index a259109..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/webhooks/github.com-sa.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata: # kpt-merge: /github.com
- name: github.com
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/webhooks/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/webhooks/kustomization.yaml
deleted file mode 100644
index 162751c..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/webhooks/kustomization.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
- - submit-workflow-template-role.yaml
- - github.com-sa.yaml
- - github.com-rolebinding.yaml
- - argo-workflows-webhook-clients-secret.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/webhooks/submit-workflow-template-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/webhooks/submit-workflow-template-role.yaml
deleted file mode 100644
index b1dee3f..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/webhooks/submit-workflow-template-role.yaml
+++ /dev/null
@@ -1,25 +0,0 @@
-# Just enough permissions to submit a workflow template.
-# You could tighten this further (but perhaps impractically) by using `resourceNames`
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata: # kpt-merge: /submit-workflow-template
- name: submit-workflow-template
-rules:
- - apiGroups:
- - argoproj.io
- resources:
- - workfloweventbindings
- verbs:
- - list
- - apiGroups:
- - argoproj.io
- resources:
- - workflowtemplates
- verbs:
- - get
- - apiGroups:
- - argoproj.io
- resources:
- - workflows
- verbs:
- - create
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/workflow-default-rolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/workflow-default-rolebinding.yaml
deleted file mode 100644
index ebfc4c7..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/workflow-default-rolebinding.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata: # kpt-merge: /workflow-default-binding
- name: workflow-default-binding
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: workflow
-subjects:
- - kind: ServiceAccount
- name: default
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/workflow-manager-default-rolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/workflow-manager-default-rolebinding.yaml
deleted file mode 100644
index 5c4b9d2..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/workflow-manager-default-rolebinding.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata: # kpt-merge: /workflow-manager-default
- name: workflow-manager-default
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: workflow-manager
-subjects:
- - kind: ServiceAccount
- name: default
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/workflow-manager-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/workflow-manager-role.yaml
deleted file mode 100644
index 7cebf4b..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/base/workflow-manager-role.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata: # kpt-merge: /workflow-manager
- name: workflow-manager
- annotations:
- workflows.argoproj.io/description: |
- This is an example of the permissions you would need if you wanted to use a resource template to create and manage
- other workflows. The same pattern would be suitable for other resurces, e.g. a service
-rules:
- - apiGroups:
- - argoproj.io
- resources:
- - workflows
- verbs:
- - create
- - get
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/minimal/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/minimal/kustomization.yaml
deleted file mode 100644
index b376c09..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/minimal/kustomization.yaml
+++ /dev/null
@@ -1,6 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
- - ../base
-patchesStrategicMerge:
- - overlays/workflow-controller-configmap.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/minimal/overlays/workflow-controller-configmap.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/minimal/overlays/workflow-controller-configmap.yaml
deleted file mode 100644
index 870c83a..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/minimal/overlays/workflow-controller-configmap.yaml
+++ /dev/null
@@ -1,9 +0,0 @@
-apiVersion: v1
-data:
- retentionPolicy: |
- completed: 10
- failed: 3
- errored: 3
-kind: ConfigMap
-metadata: # kpt-merge: /workflow-controller-configmap
- name: workflow-controller-configmap
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/mysql/argo-mysql-config-secret.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/mysql/argo-mysql-config-secret.yaml
deleted file mode 100644
index cfe014f..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/mysql/argo-mysql-config-secret.yaml
+++ /dev/null
@@ -1,10 +0,0 @@
-apiVersion: v1
-stringData:
- username: mysql
- password: password
-kind: Secret
-metadata: # kpt-merge: /argo-mysql-config
- name: argo-mysql-config
- labels:
- app: mysql
-type: Opaque
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/mysql/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/mysql/kustomization.yaml
deleted file mode 100644
index edacf51..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/mysql/kustomization.yaml
+++ /dev/null
@@ -1,9 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
- - ../base
- - argo-mysql-config-secret.yaml
- - mysql-deployment.yaml
- - mysql-service.yaml
-patchesStrategicMerge:
- - overlays/workflow-controller-configmap.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/mysql/mysql-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/mysql/mysql-deployment.yaml
deleted file mode 100644
index 4334cd9..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/mysql/mysql-deployment.yaml
+++ /dev/null
@@ -1,37 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata: # kpt-merge: /mysql
- name: mysql
- labels:
- app: mysql
-spec:
- selector:
- matchLabels:
- app: mysql
- template:
- metadata:
- name: mysql
- labels:
- app: mysql
- spec:
- containers:
- - name: main
- image: mysql:8
- env:
- - name: MYSQL_USER
- value: mysql
- - name: MYSQL_PASSWORD
- value: password
- - name: MYSQL_DATABASE
- value: argo
- - name: MYSQL_RANDOM_ROOT_PASSWORD
- value: "yes"
- ports:
- - containerPort: 3306
- readinessProbe:
- exec:
- command: ["mysql", "-u", "mysql", "-ppassword", "argo", "-e", "SELECT 1"]
- initialDelaySeconds: 15
- timeoutSeconds: 2
- nodeSelector:
- kubernetes.io/os: linux
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/mysql/mysql-service.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/mysql/mysql-service.yaml
deleted file mode 100644
index 45a03a0..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/mysql/mysql-service.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: v1
-kind: Service
-metadata: # kpt-merge: /mysql
- name: mysql
- labels:
- app: mysql
-spec:
- selector:
- app: mysql
- ports:
- - protocol: TCP
- port: 3306
- targetPort: 3306
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/mysql/overlays/workflow-controller-configmap.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/mysql/overlays/workflow-controller-configmap.yaml
deleted file mode 100644
index 1468932..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/mysql/overlays/workflow-controller-configmap.yaml
+++ /dev/null
@@ -1,28 +0,0 @@
-apiVersion: v1
-data:
- persistence: |
- connectionPool:
- maxIdleConns: 100
- maxOpenConns: 0
- connMaxLifetime: 0s
- nodeStatusOffLoad: true
- archive: true
- archiveTTL: 7d
- mysql:
- host: mysql
- port: 3306
- database: argo
- tableName: argo_workflows
- userNameSecret:
- name: argo-mysql-config
- key: username
- passwordSecret:
- name: argo-mysql-config
- key: password
- retentionPolicy: |
- completed: 10
- failed: 3
- errored: 3
-kind: ConfigMap
-metadata: # kpt-merge: /workflow-controller-configmap
- name: workflow-controller-configmap
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/postgres/argo-postgres-config-secret.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/postgres/argo-postgres-config-secret.yaml
deleted file mode 100644
index e14013f..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/postgres/argo-postgres-config-secret.yaml
+++ /dev/null
@@ -1,10 +0,0 @@
-apiVersion: v1
-stringData:
- username: postgres
- password: password
-kind: Secret
-metadata: # kpt-merge: /argo-postgres-config
- name: argo-postgres-config
- labels:
- app: postgres
-type: Opaque
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/postgres/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/postgres/kustomization.yaml
deleted file mode 100644
index a70a0cc..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/postgres/kustomization.yaml
+++ /dev/null
@@ -1,9 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
- - ../base
- - argo-postgres-config-secret.yaml
- - postgres-deployment.yaml
- - postgres-service.yaml
-patchesStrategicMerge:
- - overlays/workflow-controller-configmap.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/postgres/overlays/workflow-controller-configmap.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/postgres/overlays/workflow-controller-configmap.yaml
deleted file mode 100644
index 7c7eb92..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/postgres/overlays/workflow-controller-configmap.yaml
+++ /dev/null
@@ -1,28 +0,0 @@
-apiVersion: v1
-data:
- persistence: |
- connectionPool:
- maxIdleConns: 100
- maxOpenConns: 0
- connMaxLifetime: 0s
- nodeStatusOffLoad: true
- archive: true
- archiveTTL: 7d
- postgresql:
- host: postgres
- port: 5432
- database: postgres
- tableName: argo_workflows
- userNameSecret:
- name: argo-postgres-config
- key: username
- passwordSecret:
- name: argo-postgres-config
- key: password
- retentionPolicy: |
- completed: 10
- failed: 3
- errored: 3
-kind: ConfigMap
-metadata: # kpt-merge: /workflow-controller-configmap
- name: workflow-controller-configmap
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/postgres/postgres-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/postgres/postgres-deployment.yaml
deleted file mode 100644
index 4f88e40..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/postgres/postgres-deployment.yaml
+++ /dev/null
@@ -1,31 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata: # kpt-merge: /postgres
- name: postgres
- labels:
- app: postgres
-spec:
- selector:
- matchLabels:
- app: postgres
- template:
- metadata:
- name: postgres
- labels:
- app: postgres
- spec:
- containers:
- - name: main
- image: postgres:12-alpine
- env:
- - name: POSTGRES_PASSWORD
- value: password
- ports:
- - containerPort: 5432
- readinessProbe:
- exec:
- command: ["psql", "-U", "postgres", "-c", "SELECT 1"]
- initialDelaySeconds: 15
- timeoutSeconds: 2
- nodeSelector:
- kubernetes.io/os: linux
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/postgres/postgres-service.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/postgres/postgres-service.yaml
deleted file mode 100644
index b613893..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/postgres/postgres-service.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: v1
-kind: Service
-metadata: # kpt-merge: /postgres
- name: postgres
- labels:
- app: postgres
-spec:
- selector:
- app: postgres
- ports:
- - protocol: TCP
- port: 5432
- targetPort: 5432
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/sso/dex/dev-svc.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/sso/dex/dev-svc.yaml
deleted file mode 100644
index cd36975..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/sso/dex/dev-svc.yaml
+++ /dev/null
@@ -1,10 +0,0 @@
-apiVersion: v1
-kind: Service
-metadata: # kpt-merge: /dex
- name: dex
-spec:
- ports:
- - name: http
- port: 5556
- selector:
- app: dex
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/sso/dex/dex-cm.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/sso/dex/dex-cm.yaml
deleted file mode 100644
index fb409ff..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/sso/dex/dex-cm.yaml
+++ /dev/null
@@ -1,34 +0,0 @@
-apiVersion: v1
-# this contain secret data, so do not use in production
-data:
- # https://github.com/dexidp/dex/blob/master/examples/config-dev.yaml
- config.yaml: |
- issuer: http://dex:5556/dex
- storage:
- type: sqlite3
- config:
- file: ":memory:"
- web:
- http: 0.0.0.0:5556
- logger:
- level: debug
- staticClients:
- - id: argo-server
- redirectURIs:
- - http://localhost:2746/oauth2/callback
- - http://localhost:8080/oauth2/callback
- name: Argo Server
- secret: ZXhhbXBsZS1hcHAtc2VjcmV0
- connectors:
- - type: mockCallback
- id: mock
- name: Example
- enablePasswordDB: true
- staticPasswords:
- - email: admin@example.com
- hash: $2a$10$2b2cU8CPhOTaGrs1HRQuAueS7JTT5ZHsHSzYiFPm1leZck7Mc8T4W
- username: admin
- userID: 08a8684b-db88-4b73-90a9-3cd1661f5466
-kind: ConfigMap
-metadata: # kpt-merge: /dex
- name: dex
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/sso/dex/dex-deploy.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/sso/dex/dex-deploy.yaml
deleted file mode 100644
index 0f15abc..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/sso/dex/dex-deploy.yaml
+++ /dev/null
@@ -1,32 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata: # kpt-merge: /dex
- labels:
- app: dex
- name: dex
-spec:
- selector:
- matchLabels:
- app: dex
- template:
- metadata:
- labels:
- app: dex
- spec:
- serviceAccountName: dex
- containers:
- - name: dex
- image: quay.io/dexidp/dex:v2.23.0
- args:
- - serve
- - /data/config.yaml
- ports:
- - name: http
- containerPort: 5556
- volumeMounts:
- - mountPath: /data
- name: config
- volumes:
- - name: config
- configMap:
- name: dex
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/sso/dex/dex-rb.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/sso/dex/dex-rb.yaml
deleted file mode 100644
index ce07b69..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/sso/dex/dex-rb.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata: # kpt-merge: /dex
- name: dex
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: dex
-subjects:
- - kind: ServiceAccount
- name: dex
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/sso/dex/dex-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/sso/dex/dex-role.yaml
deleted file mode 100644
index bb9a4fb..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/sso/dex/dex-role.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata: # kpt-merge: /dex
- name: dex
-rules:
-- apiGroups:
- - ""
- resources:
- - secrets
- - configmaps
- verbs:
- - get
- - list
- - watch
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/sso/dex/dex-sa.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/sso/dex/dex-sa.yaml
deleted file mode 100644
index 561106c..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/sso/dex/dex-sa.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata: # kpt-merge: /dex
- name: dex
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/sso/dex/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/sso/dex/kustomization.yaml
deleted file mode 100644
index 8ea85c1..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/sso/dex/kustomization.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-commonLabels:
- "app.kubernetes.io/part-of": "dex"
-resources:
- - dex-cm.yaml
- - dex-role.yaml
- - dex-sa.yaml
- - dex-rb.yaml
- - dex-deploy.yaml
- - dev-svc.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/sso/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/sso/kustomization.yaml
deleted file mode 100644
index 70aafea..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/sso/kustomization.yaml
+++ /dev/null
@@ -1,8 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
- - ../base
- - dex
-patchesStrategicMerge:
- - overlays/workflow-controller-configmap.yaml
- - overlays/argo-server-sa.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/sso/overlays/argo-server-sa.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/sso/overlays/argo-server-sa.yaml
deleted file mode 100644
index c09b7ac..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/sso/overlays/argo-server-sa.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata: # kpt-merge: /argo-server
- name: argo-server
- annotations:
- workflows.argoproj.io/rbac-rule: "'authors' in groups && email == 'kilgore@kilgore.trout'"
- workflows.argoproj.io/rbac-rule-precedence: "1"
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/sso/overlays/workflow-controller-configmap.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/sso/overlays/workflow-controller-configmap.yaml
deleted file mode 100644
index fb694c0..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/argo/upstream/manifests/quick-start/sso/overlays/workflow-controller-configmap.yaml
+++ /dev/null
@@ -1,21 +0,0 @@
-apiVersion: v1
-data:
- sso: |
- issuer: http://dex:5556/dex
- issuerAlias: http://dex:5556/dex
- clientId:
- name: argo-server-sso
- key: clientID
- clientSecret:
- name: argo-server-sso
- key: clientSecret
- redirectUrl: http://localhost:8080/oauth2/callback
- scopes:
- - groups
- - email
- - profile
- rbac:
- enabled: true
-kind: ConfigMap
-metadata: # kpt-merge: /workflow-controller-configmap
- name: workflow-controller-configmap
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/grafana/grafana-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/grafana/grafana-deployment.yaml
deleted file mode 100644
index be9b77b..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/grafana/grafana-deployment.yaml
+++ /dev/null
@@ -1,60 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: grafana
- namespace: kubeflow
- labels:
- app: grafana
-spec:
- replicas: 1
- selector:
- matchLabels:
- app: grafana
- revisionHistoryLimit: 10
- template:
- metadata:
- labels:
- app: grafana
- spec:
- containers:
- - name: grafana
- image: grafana/grafana:5.3.4
- imagePullPolicy: IfNotPresent
- ports:
- - containerPort: 3000
- name: grafana
- env:
- - name: GF_SECURITY_ADMIN_USER
- value: admin
- - name: GF_SECURITY_ADMIN_PASSWORD
- value: admin
- readinessProbe:
- failureThreshold: 10
- httpGet:
- path: /api/health
- port: 3000
- scheme: HTTP
- initialDelaySeconds: 60
- periodSeconds: 10
- successThreshold: 1
- timeoutSeconds: 30
- livenessProbe:
- failureThreshold: 3
- httpGet:
- path: /api/health
- port: 3000
- scheme: HTTP
- periodSeconds: 10
- successThreshold: 1
- timeoutSeconds: 1
- resources:
- limits:
- cpu: 100m
- memory: 256Mi
- requests:
- cpu: 100m
- memory: 256Mi
- securityContext:
- fsGroup: 472
- runAsUser: 472
-# TODO(jingzhang36): consider adding persistent volume if you would like the created dashboards to persist.
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/grafana/grafana-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/grafana/grafana-role.yaml
deleted file mode 100644
index e06c9e9..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/grafana/grafana-role.yaml
+++ /dev/null
@@ -1,19 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata:
- labels:
- app: grafana
- name: grafana
-rules:
-- apiGroups: [""]
- resources:
- - nodes
- - services
- - endpoints
- - pods
- verbs: ["get", "list", "watch"]
-- apiGroups:
- - extensions
- resources:
- - ingresses
- verbs: ["get", "list", "watch"]
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/grafana/grafana-rolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/grafana/grafana-rolebinding.yaml
deleted file mode 100644
index c9f8b62..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/grafana/grafana-rolebinding.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- labels:
- app: grafana
- name: grafana
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: grafana
-subjects:
-- kind: ServiceAccount
- name: grafana
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/grafana/grafana-sa.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/grafana/grafana-sa.yaml
deleted file mode 100644
index 1ec8b08..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/grafana/grafana-sa.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: grafana
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/grafana/grafana-service.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/grafana/grafana-service.yaml
deleted file mode 100644
index ced9c38..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/grafana/grafana-service.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: grafana
- name: grafana
-spec:
- selector:
- app: grafana
- ports:
- - name: grafanaui
- protocol: TCP
- port: 3000
- targetPort: 3000
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/grafana/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/grafana/kustomization.yaml
deleted file mode 100644
index fd1cf02..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/grafana/kustomization.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
-- grafana-deployment.yaml
-- grafana-service.yaml
-- grafana-role.yaml
-- grafana-sa.yaml
-- grafana-rolebinding.yaml
-images:
- - name: grafana/grafana
- newTag: 5.3.4
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/kfp-csi-s3/csi-s3-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/kfp-csi-s3/csi-s3-deployment.yaml
deleted file mode 100644
index 1146c46..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/kfp-csi-s3/csi-s3-deployment.yaml
+++ /dev/null
@@ -1,532 +0,0 @@
-
-# Source: dlf-chart/charts/csi-s3-chart/templates/csi-s3.yaml
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: kfp-csi-s3
- labels:
- app.kubernetes.io/name: "kubeflow"
- namespace: kubeflow
----
-# Source: dlf-chart/charts/csi-sidecars-rbac/templates/attacher-rbac.yaml
-# This YAML file contains all RBAC objects that are necessary to run external
-# CSI attacher.
-#
-# In production, each CSI driver deployment has to be customized:
-# - to avoid conflicts, use non-default namespace and different names
-# for non-namespaced entities like the ClusterRole
-# - decide whether the deployment replicates the external CSI
-# attacher, in which case leadership election must be enabled;
-# this influences the RBAC setup, see below
-
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: kfp-csi-attacher
- # replace with non-default namespace name
- namespace: kubeflow
- labels:
- app.kubernetes.io/name: "kubeflow"
----
-# Source: dlf-chart/charts/csi-sidecars-rbac/templates/provisioner-rbac.yaml
-# This YAML file contains all RBAC objects that are necessary to run external
-# CSI provisioner.
-#
-# In production, each CSI driver deployment has to be customized:
-# - to avoid conflicts, use non-default namespace and different names
-# for non-namespaced entities like the ClusterRole
-# - decide whether the deployment replicates the external CSI
-# provisioner, in which case leadership election must be enabled;
-# this influences the RBAC setup, see below
-
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: kfp-csi-provisioner
- # replace with non-default namespace name
- namespace: kubeflow
- labels:
- app.kubernetes.io/name: "kubeflow"
----
-# Source: dlf-chart/charts/csi-s3-chart/templates/storageclass.yaml
-kind: StorageClass
-apiVersion: storage.k8s.io/v1
-metadata:
- name: kfp-csi-s3
- labels:
- app.kubernetes.io/name: "kubeflow"
-provisioner: ch.ctrox.csi.s3-driver
-parameters:
- # specify which mounter to use
- # can be set to s3fs, goofys
- # OTHER OPTIONS NOT WORKING!
- mounter: goofys
-
- csi.storage.k8s.io/provisioner-secret-name: kfp-csi-secret
- csi.storage.k8s.io/provisioner-secret-namespace: kubeflow
-
- csi.storage.k8s.io/controller-publish-secret-name: kfp-csi-secret
- csi.storage.k8s.io/controller-publish-secret-namespace: kubeflow
-
- csi.storage.k8s.io/node-stage-secret-name: kfp-csi-secret
- csi.storage.k8s.io/node-stage-secret-namespace: kubeflow
-
- csi.storage.k8s.io/node-publish-secret-name: kfp-csi-secret
- csi.storage.k8s.io/node-publish-secret-namespace: kubeflow
----
-# Source: dlf-chart/charts/csi-s3-chart/templates/csi-s3.yaml
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: kfp-csi-s3
- labels:
- app.kubernetes.io/name: "kubeflow"
- namespace: kubeflow
-rules:
- - apiGroups: [""]
- resources: ["secrets"]
- verbs: ["get", "list"]
- - apiGroups: [""]
- resources: ["nodes"]
- verbs: ["get", "list", "update"]
- - apiGroups: [""]
- resources: ["namespaces"]
- verbs: ["get", "list"]
- - apiGroups: [""]
- resources: ["persistentvolumes"]
- verbs: ["get", "list", "watch", "update"]
- - apiGroups: ["storage.k8s.io"]
- resources: ["volumeattachments"]
- verbs: ["get", "list", "watch", "update","create"]
----
-# Source: dlf-chart/charts/csi-sidecars-rbac/templates/attacher-rbac.yaml
-# Attacher must be able to work with PVs, CSINodes and VolumeAttachments
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: kfp-external-attacher-runner
- labels:
- app.kubernetes.io/name: "kubeflow"
-rules:
- - apiGroups: [""]
- resources: ["persistentvolumes"]
- verbs: ["get", "list", "watch", "update", "patch"] #Adding "update"
- - apiGroups: ["storage.k8s.io"]
- resources: ["csinodes"]
- verbs: ["get", "list", "watch"]
- - apiGroups: ["storage.k8s.io"]
- resources: ["volumeattachments"]
- verbs: ["get", "list", "watch", "update", "patch", "create"] #Adding "update"
- - apiGroups: ["storage.k8s.io"]
- resources: ["volumeattachments/status"]
- verbs: ["patch"]
-#Secret permission is optional.
-#Enable it if you need value from secret.
-#For example, you have key `csi.storage.k8s.io/controller-publish-secret-name` in StorageClass.parameters
-#see https://kubernetes-csi.github.io/docs/secrets-and-credentials.html
-# - apiGroups: [""]
-# resources: ["secrets"]
-# verbs: ["get", "list"]
----
-# Source: dlf-chart/charts/csi-sidecars-rbac/templates/provisioner-rbac.yaml
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: kfp-external-provisioner-runner
- labels:
- app.kubernetes.io/name: "kubeflow"
- namespace: kubeflow
-rules:
- # The following rule should be uncommented for plugins that require secrets
- # for provisioning. #Enabling secrets
- - apiGroups: [""]
- resources: ["secrets"]
- verbs: ["get", "list"]
- - apiGroups: [""]
- resources: ["persistentvolumes"]
- verbs: ["get", "list", "watch", "create", "delete"]
- - apiGroups: [""]
- resources: ["persistentvolumeclaims"]
- verbs: ["get", "list", "watch", "update"]
- - apiGroups: ["storage.k8s.io"]
- resources: ["storageclasses"]
- verbs: ["get", "list", "watch"]
- - apiGroups: [""]
- resources: ["events"]
- verbs: ["list", "watch", "create", "update", "patch"]
- - apiGroups: ["snapshot.storage.k8s.io"]
- resources: ["volumesnapshots"]
- verbs: ["get", "list"]
- - apiGroups: ["snapshot.storage.k8s.io"]
- resources: ["volumesnapshotcontents"]
- verbs: ["get", "list"]
- - apiGroups: ["storage.k8s.io"]
- resources: ["csinodes"]
- verbs: ["get", "list", "watch"]
- - apiGroups: [""]
- resources: ["nodes"]
- verbs: ["get", "list", "watch"]
- # Access to volumeattachments is only needed when the CSI driver
- # has the PUBLISH_UNPUBLISH_VOLUME controller capability.
- # In that case, external-provisioner will watch volumeattachments
- # to determine when it is safe to delete a volume.
- - apiGroups: ["storage.k8s.io"]
- resources: ["volumeattachments"]
- verbs: ["get", "list", "watch","create"]
----
-# Source: dlf-chart/charts/csi-s3-chart/templates/csi-s3.yaml
-kind: ClusterRoleBinding
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: kfp-csi-s3
- labels:
- app.kubernetes.io/name: "kubeflow"
- namespace: kubeflow
-subjects:
- - kind: ServiceAccount
- name: kfp-csi-s3
- namespace: kubeflow
-roleRef:
- kind: ClusterRole
- name: kfp-csi-s3
- apiGroup: rbac.authorization.k8s.io
----
-# Source: dlf-chart/charts/csi-sidecars-rbac/templates/attacher-rbac.yaml
-kind: ClusterRoleBinding
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: kfp-csi-attacher-role
- labels:
- app.kubernetes.io/name: "kubeflow"
-subjects:
- - kind: ServiceAccount
- name: kfp-csi-attacher
- # replace with non-default namespace name
- namespace: kubeflow
-roleRef:
- kind: ClusterRole
- name: kfp-external-attacher-runner
- apiGroup: rbac.authorization.k8s.io
----
-# Source: dlf-chart/charts/csi-sidecars-rbac/templates/provisioner-rbac.yaml
-kind: ClusterRoleBinding
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: kfp-csi-provisioner-role
- labels:
- app.kubernetes.io/name: "kubeflow"
- namespace: kubeflow
-subjects:
- - kind: ServiceAccount
- name: kfp-csi-provisioner
- # replace with non-default namespace name
- namespace: kubeflow
-roleRef:
- kind: ClusterRole
- name: kfp-external-provisioner-runner
- apiGroup: rbac.authorization.k8s.io
----
-# Source: dlf-chart/charts/csi-sidecars-rbac/templates/attacher-rbac.yaml
-# Attacher must be able to work with configmaps or leases in the current namespace
-# if (and only if) leadership election is enabled
-kind: Role
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- # replace with non-default namespace name
- namespace: kubeflow
- name: kfp-external-attacher-cfg
- labels:
- app.kubernetes.io/name: "kubeflow"
-rules:
- - apiGroups: ["coordination.k8s.io"]
- resources: ["leases"]
- verbs: ["get", "watch", "list", "delete", "update", "create"]
----
-# Source: dlf-chart/charts/csi-sidecars-rbac/templates/provisioner-rbac.yaml
-# Provisioner must be able to work with endpoints in current namespace
-# if (and only if) leadership election is enabled
-kind: Role
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- # replace with non-default namespace name
- namespace: kubeflow
- name: kfp-external-provisioner-cfg
- labels:
- app.kubernetes.io/name: "kubeflow"
-rules:
- # Only one of the following rules for endpoints or leases is required based on
- # what is set for `--leader-election-type`. Endpoints are deprecated in favor of Leases.
- - apiGroups: [""]
- resources: ["endpoints"]
- verbs: ["get", "watch", "list", "delete", "update", "create"]
- - apiGroups: ["coordination.k8s.io"]
- resources: ["leases"]
- verbs: ["get", "watch", "list", "delete", "update", "create"]
- # Permissions for CSIStorageCapacity are only needed enabling the publishing
- # of storage capacity information.
- - apiGroups: ["storage.k8s.io"]
- resources: ["csistoragecapacities"]
- verbs: ["get", "list", "watch", "create", "update", "patch", "delete"]
- # The GET permissions below are needed for walking up the ownership chain
- # for CSIStorageCapacity. They are sufficient for deployment via
- # StatefulSet (only needs to get Pod) and Deployment (needs to get
- # Pod and then ReplicaSet to find the Deployment).
- - apiGroups: [""]
- resources: ["pods"]
- verbs: ["get"]
- - apiGroups: ["apps"]
- resources: ["replicasets"]
- verbs: ["get"]
----
-# Source: dlf-chart/charts/csi-sidecars-rbac/templates/attacher-rbac.yaml
-kind: RoleBinding
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: kfp-csi-attacher-role-cfg
- # replace with non-default namespace name
- namespace: kubeflow
- labels:
- app.kubernetes.io/name: "kubeflow"
-subjects:
- - kind: ServiceAccount
- name: kfp-csi-attacher
- # replace with non-default namespace name
- namespace: kubeflow
-roleRef:
- kind: Role
- name: kfp-external-attacher-cfg
- apiGroup: rbac.authorization.k8s.io
----
-# Source: dlf-chart/charts/csi-sidecars-rbac/templates/provisioner-rbac.yaml
-kind: RoleBinding
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: kfp-csi-provisioner-role-cfg
- # replace with non-default namespace name
- namespace: kubeflow
- labels:
- app.kubernetes.io/name: "kubeflow"
-subjects:
- - kind: ServiceAccount
- name: kfp-csi-provisioner
- # replace with non-default namespace name
- namespace: kubeflow
-roleRef:
- kind: Role
- name: kfp-external-provisioner-cfg
- apiGroup: rbac.authorization.k8s.io
----
-# Source: dlf-chart/charts/csi-s3-chart/templates/attacher.yaml
-# needed for StatefulSet
-kind: Service
-apiVersion: v1
-metadata:
- name: kfp-csi-attacher-s3
- namespace: kubeflow
- labels:
- app: kfp-csi-attacher-s3
- app.kubernetes.io/name: "kubeflow"
-spec:
- selector:
- app: kfp-csi-attacher-s3
- ports:
- - name: dummy
- port: 12345
----
-# Source: dlf-chart/charts/csi-s3-chart/templates/provisioner.yaml
-kind: Service
-apiVersion: v1
-metadata:
- name: kfp-csi-provisioner-s3
- namespace: kubeflow
- labels:
- app: kfp-csi-provisioner-s3
- app.kubernetes.io/name: "kubeflow"
-spec:
- selector:
- app: kfp-csi-provisioner-s3
- ports:
- - name: dummy
- port: 12345
----
-# Source: dlf-chart/charts/csi-s3-chart/templates/csi-s3.yaml
-kind: DaemonSet
-apiVersion: apps/v1
-metadata:
- name: kfp-csi-s3
- labels:
- app.kubernetes.io/name: "kubeflow"
- namespace: kubeflow
-spec:
- selector:
- matchLabels:
- app: kfp-csi-s3
- template:
- metadata:
- labels:
- app.kubernetes.io/name: "kubeflow"
- app: kfp-csi-s3
- spec:
- serviceAccountName: kfp-csi-s3
- containers:
- - name: driver-registrar
- image: "k8s.gcr.io/sig-storage/csi-node-driver-registrar:v2.3.0"
- imagePullPolicy: Always
- args:
- - --v=5
- - --csi-address=/csi/csi.sock
- - --kubelet-registration-path
- - $(kubelet-path)/kubelet/plugins/kfp-csi-s3/csi.sock
- securityContext:
- # This is necessary only for systems with SELinux, where
- # non-privileged sidecar containers cannot access unix domain socket
- # created by privileged CSI driver container.
- privileged: false
- env:
- - name: KUBE_NODE_NAME
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: spec.nodeName
- volumeMounts:
- - mountPath: /csi
- name: socket-dir
- - mountPath: /registration
- name: registration-dir
- - name: kfp-csi-s3
- image: "quay.io/datashim-io/csi-s3:latest"
- imagePullPolicy: Always
- args:
- - "--v=5"
- - "--endpoint=$(CSI_ENDPOINT)"
- - "--nodeid=$(KUBE_NODE_NAME)"
- env:
- - name: CSI_ENDPOINT
- value: unix:///csi/csi.sock
- - name: KUBE_NODE_NAME
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: spec.nodeName
- - name: cheap
- value: "off"
- securityContext:
- privileged: true
- volumeMounts:
- - mountPath: /csi
- name: socket-dir
- - mountPath: $(kubelet-path)/kubelet/pods
- mountPropagation: Bidirectional
- name: mountpoint-dir
- - mountPath: /dev
- name: dev-dir
- volumes:
- - hostPath:
- path: $(kubelet-path)/kubelet/plugins/kfp-csi-s3
- type: DirectoryOrCreate
- name: socket-dir
- - hostPath:
- path: $(kubelet-path)/kubelet/pods
- type: DirectoryOrCreate
- name: mountpoint-dir
- - hostPath:
- path: $(kubelet-path)/kubelet/plugins_registry
- type: Directory
- name: registration-dir
- - hostPath:
- path: /dev
- type: Directory
- name: dev-dir
----
-# Source: dlf-chart/charts/csi-s3-chart/templates/attacher.yaml
-kind: StatefulSet
-apiVersion: apps/v1
-metadata:
- name: kfp-csi-attacher-s3
- namespace: kubeflow
- labels:
- app.kubernetes.io/name: "kubeflow"
-spec:
- serviceName: "kfp-csi-attacher-s3"
- replicas: 1
- selector:
- matchLabels:
- app: kfp-csi-attacher-s3
- template:
- metadata:
- labels:
- app.kubernetes.io/name: "kubeflow"
- app: kfp-csi-attacher-s3
- spec:
- serviceAccountName: kfp-csi-attacher
- containers:
- - name: kfp-csi-attacher
- image: "k8s.gcr.io/sig-storage/csi-attacher:v3.3.0"
- imagePullPolicy: Always
- args:
- - --v=5
- - --csi-address=/csi/csi.sock
- securityContext:
- # This is necessary only for systems with SELinux, where
- # non-privileged sidecar containers cannot access unix domain socket
- # created by privileged CSI driver container.
- privileged: true
- volumeMounts:
- - mountPath: /csi
- name: socket-dir
- volumes:
- - hostPath:
- path: $(kubelet-path)/kubelet/plugins/kfp-csi-s3
- type: DirectoryOrCreate
- name: socket-dir
----
-# Source: dlf-chart/charts/csi-s3-chart/templates/provisioner.yaml
-kind: StatefulSet
-apiVersion: apps/v1
-metadata:
- name: kfp-csi-provisioner-s3
- labels:
- app.kubernetes.io/name: "kubeflow"
- namespace: kubeflow
-spec:
- serviceName: "kfp-csi-provisioner-s3"
- replicas: 1
- selector:
- matchLabels:
- app: kfp-csi-provisioner-s3
- template:
- metadata:
- labels:
- app: kfp-csi-provisioner-s3
- spec:
- serviceAccountName: kfp-csi-provisioner
- containers:
- - name: kfp-csi-provisioner
- image: "k8s.gcr.io/sig-storage/csi-provisioner:v2.2.2"
- imagePullPolicy: Always
- args:
- - -v=5
- - --csi-address=/csi/csi.sock
- - --feature-gates=Topology=true
- securityContext:
- # This is necessary only for systems with SELinux, where
- # non-privileged sidecar containers cannot access unix domain socket
- # created by privileged CSI driver container.
- privileged: true
- volumeMounts:
- - mountPath: /csi
- name: socket-dir
- volumes:
- - hostPath:
- path: $(kubelet-path)/kubelet/plugins/kfp-csi-s3
- type: DirectoryOrCreate
- name: socket-dir
----
-# Source: dlf-chart/charts/csi-s3-chart/templates/driver.yaml
-apiVersion: storage.k8s.io/v1
-kind: CSIDriver
-metadata:
- name: ch.ctrox.csi.s3-driver
-spec:
- attachRequired: false
- podInfoOnMount: false
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/kfp-csi-s3/csi-s3-secret.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/kfp-csi-s3/csi-s3-secret.yaml
deleted file mode 100644
index 340d79a..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/kfp-csi-s3/csi-s3-secret.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-apiVersion: v1
-data:
- accessKeyID: $(accessKeyID-base64)
- bucket: $(bucket-base64)
- endpoint: $(endpoint-base64)
- extract: ZmFsc2U=
- provision: ZmFsc2U=
- readonly: ZmFsc2U=
- region: ""
- remove-on-delete: ZmFsc2U=
- secretAccessKey: $(secretAccessKey-bas64)
-kind: Secret
-metadata:
- name: kfp-csi-secret
- namespace: kubeflow
-type: Opaque
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/kfp-csi-s3/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/kfp-csi-s3/kustomization.yaml
deleted file mode 100644
index 3064939..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/kfp-csi-s3/kustomization.yaml
+++ /dev/null
@@ -1,123 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
-- csi-s3-deployment.yaml
-- csi-s3-secret.yaml
-
-namespace: kubeflow
-
-configMapGenerator:
-- name: csi-s3-parameters
- literals:
- # Update the credentials for the below fields before apply.
- - endpoint-base64=aHR0cDovL21pbmlvLXNlcnZpY2Uua3ViZWZsb3c6OTAwMA==
- - bucket-base64=bWxwaXBlbGluZQ==
- - accessKeyID-base64=bWluaW8=
- - secretAccessKey-bas64=bWluaW8xMjM=
- - kubelet-path=/var/data
-generatorOptions:
- disableNameSuffixHash: true
-replacements:
-- source:
- name: csi-s3-parameters
- kind: ConfigMap
- version: v1
- fieldpath: data.endpoint-base64
- targets:
- - select:
- kind: Secret
- name: kfp-csi-secret
- fieldPaths:
- - data.endpoint
-- source:
- name: csi-s3-parameters
- kind: ConfigMap
- version: v1
- fieldpath: data.bucket-base64
- targets:
- - select:
- kind: Secret
- name: kfp-csi-secret
- fieldPaths:
- - data.bucket
-- source:
- name: csi-s3-parameters
- kind: ConfigMap
- version: v1
- fieldpath: data.accessKeyID-base64
- targets:
- - select:
- kind: Secret
- name: kfp-csi-secret
- fieldPaths:
- - data.accessKeyID
-- source:
- name: csi-s3-parameters
- kind: ConfigMap
- version: v1
- fieldpath: data.secretAccessKey-bas64
- targets:
- - select:
- kind: Secret
- name: kfp-csi-secret
- fieldPaths:
- - data.secretAccessKey
-- source:
- name: csi-s3-parameters
- kind: ConfigMap
- version: v1
- fieldpath: data.kubelet-path
- targets:
- - select:
- kind: DaemonSet
- name: kfp-csi-s3
- fieldPaths:
- - spec.template.spec.containers.[name=driver-registrar].args.3
- options:
- delimiter: /
- index: 0
- - select:
- kind: DaemonSet
- name: kfp-csi-s3
- fieldPaths:
- - spec.template.spec.containers.[name=kfp-csi-s3].volumeMounts.[name=mountpoint-dir].mountPath
- - spec.template.spec.volumes.[name=mountpoint-dir].hostPath.path
- options:
- delimiter: /
- index: 0
- - select:
- kind: DaemonSet
- name: kfp-csi-s3
- fieldPaths:
- - spec.template.spec.volumes.[name=registration-dir].hostPath.path
- options:
- delimiter: /
- index: 0
- - select:
- kind: DaemonSet
- name: kfp-csi-s3
- fieldPaths:
- - spec.template.spec.volumes.[name=socket-dir].hostPath.path
- options:
- delimiter: /
- index: 0
- - select:
- kind: StatefulSet
- name: kfp-csi-attacher-s3
- fieldPaths:
- - spec.template.spec.volumes.[name=socket-dir].hostPath.path
- options:
- delimiter: /
- index: 0
- - select:
- kind: StatefulSet
- name: kfp-csi-provisioner-s3
- fieldPaths:
- - spec.template.spec.volumes.[name=socket-dir].hostPath.path
- options:
- delimiter: /
- index: 0
-
-configurations:
-- params.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/kfp-csi-s3/params.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/kfp-csi-s3/params.yaml
deleted file mode 100644
index 64b1b0d..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/kfp-csi-s3/params.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-varReference:
-- path: data
- kind: Secret
-- path: spec/template/spec/volumes/hostPath/path
- kind: StatefulSet
-- path: spec/template/spec/containers[]/args[2]
- kind: DaemonSet
-- path: spec/template/spec/containers[]/volumeMounts[]/mountPath
- kind: DaemonSet
-- path: spec/template/spec/volumes/hostPath/path
- kind: DaemonSet
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/metacontroller/base/cluster-role-binding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/metacontroller/base/cluster-role-binding.yaml
deleted file mode 100644
index dc9c732..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/metacontroller/base/cluster-role-binding.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: meta-controller-cluster-role-binding
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: cluster-admin
-subjects:
-- kind: ServiceAccount
- name: meta-controller-service
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/metacontroller/base/crd.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/metacontroller/base/crd.yaml
deleted file mode 100644
index d34b806..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/metacontroller/base/crd.yaml
+++ /dev/null
@@ -1,533 +0,0 @@
----
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- annotations:
- "api-approved.kubernetes.io": "unapproved, request not yet submitted"
- name: compositecontrollers.metacontroller.k8s.io
-spec:
- group: metacontroller.k8s.io
- names:
- kind: CompositeController
- listKind: CompositeControllerList
- plural: compositecontrollers
- shortNames:
- - cc
- - cctl
- singular: compositecontroller
- scope: Cluster
- versions:
- - name: v1alpha1
- schema:
- openAPIV3Schema:
- properties:
- apiVersion:
- description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
- type: string
- kind:
- description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
- type: string
- metadata:
- type: object
- spec:
- properties:
- childResources:
- items:
- properties:
- apiVersion:
- type: string
- resource:
- type: string
- updateStrategy:
- properties:
- method:
- type: string
- statusChecks:
- properties:
- conditions:
- items:
- properties:
- reason:
- type: string
- status:
- type: string
- type:
- type: string
- required:
- - type
- type: object
- type: array
- type: object
- type: object
- required:
- - apiVersion
- - resource
- type: object
- type: array
- generateSelector:
- type: boolean
- hooks:
- properties:
- customize:
- properties:
- webhook:
- properties:
- path:
- type: string
- service:
- properties:
- name:
- type: string
- namespace:
- type: string
- port:
- format: int32
- type: integer
- protocol:
- type: string
- required:
- - name
- - namespace
- type: object
- timeout:
- type: string
- url:
- type: string
- type: object
- type: object
- finalize:
- properties:
- webhook:
- properties:
- path:
- type: string
- service:
- properties:
- name:
- type: string
- namespace:
- type: string
- port:
- format: int32
- type: integer
- protocol:
- type: string
- required:
- - name
- - namespace
- type: object
- timeout:
- type: string
- url:
- type: string
- type: object
- type: object
- postUpdateChild:
- properties:
- webhook:
- properties:
- path:
- type: string
- service:
- properties:
- name:
- type: string
- namespace:
- type: string
- port:
- format: int32
- type: integer
- protocol:
- type: string
- required:
- - name
- - namespace
- type: object
- timeout:
- type: string
- url:
- type: string
- type: object
- type: object
- preUpdateChild:
- properties:
- webhook:
- properties:
- path:
- type: string
- service:
- properties:
- name:
- type: string
- namespace:
- type: string
- port:
- format: int32
- type: integer
- protocol:
- type: string
- required:
- - name
- - namespace
- type: object
- timeout:
- type: string
- url:
- type: string
- type: object
- type: object
- sync:
- properties:
- webhook:
- properties:
- path:
- type: string
- service:
- properties:
- name:
- type: string
- namespace:
- type: string
- port:
- format: int32
- type: integer
- protocol:
- type: string
- required:
- - name
- - namespace
- type: object
- timeout:
- type: string
- url:
- type: string
- type: object
- type: object
- type: object
- parentResource:
- properties:
- apiVersion:
- type: string
- resource:
- type: string
- revisionHistory:
- properties:
- fieldPaths:
- items:
- type: string
- type: array
- type: object
- required:
- - apiVersion
- - resource
- type: object
- resyncPeriodSeconds:
- format: int32
- type: integer
- required:
- - parentResource
- type: object
- status:
- type: object
- required:
- - metadata
- - spec
- type: object
- served: true
- storage: true
- subresources:
- status: {}
-status:
- acceptedNames:
- kind: ""
- plural: ""
- conditions: []
- storedVersions: []
-
----
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- annotations:
- "api-approved.kubernetes.io": "unapproved, request not yet submitted"
- name: controllerrevisions.metacontroller.k8s.io
-spec:
- group: metacontroller.k8s.io
- names:
- kind: ControllerRevision
- listKind: ControllerRevisionList
- plural: controllerrevisions
- singular: controllerrevision
- scope: Namespaced
- versions:
- - name: v1alpha1
- schema:
- openAPIV3Schema:
- properties:
- apiVersion:
- description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
- type: string
- children:
- items:
- properties:
- apiGroup:
- type: string
- kind:
- type: string
- names:
- items:
- type: string
- type: array
- required:
- - apiGroup
- - kind
- - names
- type: object
- type: array
- kind:
- description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
- type: string
- metadata:
- type: object
- parentPatch:
- type: object
- required:
- - metadata
- - parentPatch
- type: object
- served: true
- storage: true
- subresources:
- status: {}
-status:
- acceptedNames:
- kind: ""
- plural: ""
- conditions: []
- storedVersions: []
-
----
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- annotations:
- "api-approved.kubernetes.io": "unapproved, request not yet submitted"
- name: decoratorcontrollers.metacontroller.k8s.io
-spec:
- group: metacontroller.k8s.io
- names:
- kind: DecoratorController
- listKind: DecoratorControllerList
- plural: decoratorcontrollers
- shortNames:
- - dec
- - decorators
- singular: decoratorcontroller
- scope: Cluster
- versions:
- - name: v1alpha1
- schema:
- openAPIV3Schema:
- properties:
- apiVersion:
- description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
- type: string
- kind:
- description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
- type: string
- metadata:
- type: object
- spec:
- properties:
- attachments:
- items:
- properties:
- apiVersion:
- type: string
- resource:
- type: string
- updateStrategy:
- properties:
- method:
- type: string
- type: object
- required:
- - apiVersion
- - resource
- type: object
- type: array
- hooks:
- properties:
- customize:
- properties:
- webhook:
- properties:
- path:
- type: string
- service:
- properties:
- name:
- type: string
- namespace:
- type: string
- port:
- format: int32
- type: integer
- protocol:
- type: string
- required:
- - name
- - namespace
- type: object
- timeout:
- type: string
- url:
- type: string
- type: object
- type: object
- finalize:
- properties:
- webhook:
- properties:
- path:
- type: string
- service:
- properties:
- name:
- type: string
- namespace:
- type: string
- port:
- format: int32
- type: integer
- protocol:
- type: string
- required:
- - name
- - namespace
- type: object
- timeout:
- type: string
- url:
- type: string
- type: object
- type: object
- sync:
- properties:
- webhook:
- properties:
- path:
- type: string
- service:
- properties:
- name:
- type: string
- namespace:
- type: string
- port:
- format: int32
- type: integer
- protocol:
- type: string
- required:
- - name
- - namespace
- type: object
- timeout:
- type: string
- url:
- type: string
- type: object
- type: object
- type: object
- resources:
- items:
- properties:
- annotationSelector:
- properties:
- matchAnnotations:
- additionalProperties:
- type: string
- type: object
- matchExpressions:
- items:
- description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
- properties:
- key:
- description: key is the label key that the selector applies to.
- type: string
- operator:
- description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
- type: string
- values:
- description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- type: object
- apiVersion:
- type: string
- labelSelector:
- description: A label selector is a label query over a set of resources. The result of matchLabels and matchExpressions are ANDed. An empty label selector matches all objects. A null label selector matches no objects.
- properties:
- matchExpressions:
- description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
- items:
- description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
- properties:
- key:
- description: key is the label key that the selector applies to.
- type: string
- operator:
- description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
- type: string
- values:
- description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
- items:
- type: string
- type: array
- required:
- - key
- - operator
- type: object
- type: array
- matchLabels:
- additionalProperties:
- type: string
- description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
- type: object
- type: object
- resource:
- type: string
- required:
- - apiVersion
- - resource
- type: object
- type: array
- resyncPeriodSeconds:
- format: int32
- type: integer
- required:
- - resources
- type: object
- status:
- type: object
- required:
- - metadata
- - spec
- type: object
- served: true
- storage: true
- subresources:
- status: {}
-status:
- acceptedNames:
- kind: ""
- plural: ""
- conditions: []
- storedVersions: []
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/metacontroller/base/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/metacontroller/base/kustomization.yaml
deleted file mode 100644
index 9b16b60..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/metacontroller/base/kustomization.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-namespace: kubeflow
-resources:
-- cluster-role-binding.yaml
-- crd.yaml
-- service-account.yaml
-- stateful-set.yaml
-commonLabels:
- kustomize.component: metacontroller
-
-# Update metacontroller CRD:
-# Copy the upstream file to crd.yaml in this folder.
-# Upstream file: https://github.com/metacontroller/metacontroller/blob/master/manifests/production/metacontroller-crds-v1.yaml
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/metacontroller/base/service-account.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/metacontroller/base/service-account.yaml
deleted file mode 100644
index 85c48de..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/metacontroller/base/service-account.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: meta-controller-service
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/metacontroller/base/stateful-set.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/metacontroller/base/stateful-set.yaml
deleted file mode 100644
index b0ca007..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/metacontroller/base/stateful-set.yaml
+++ /dev/null
@@ -1,45 +0,0 @@
-apiVersion: apps/v1
-kind: StatefulSet
-metadata:
- labels:
- app: metacontroller
- name: metacontroller
-spec:
- replicas: 1
- selector:
- matchLabels:
- app: metacontroller
- serviceName: ""
- template:
- metadata:
- labels:
- app: metacontroller
- annotations:
- sidecar.istio.io/inject: "false"
- spec:
- containers:
- - resources:
- limits:
- cpu: '1'
- memory: 1Gi
- requests:
- cpu: 100m
- memory: 256Mi
- command:
- - /usr/bin/metacontroller
- - --zap-log-level=4
- - '--discovery-interval=3600s' # less insane than 10 seconds
- securityContext:
- capabilities:
- drop:
- - ALL
- readOnlyRootFilesystem: true
- runAsNonRoot: true
- runAsUser: 1000
- privileged: false
- allowPrivilegeEscalation: false
- name: metacontroller
- image: 'docker.io/metacontrollerio/metacontroller:v2.0.4'
- serviceAccountName: meta-controller-service
- # Workaround for https://github.com/kubernetes-sigs/kustomize/issues/677
- volumeClaimTemplates: []
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/minio/base/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/minio/base/kustomization.yaml
deleted file mode 100644
index e3b41d4..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/minio/base/kustomization.yaml
+++ /dev/null
@@ -1,8 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
-- minio-deployment.yaml
-- minio-pvc.yaml
-- minio-service.yaml
-- mlpipeline-minio-artifact-secret.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/minio/base/minio-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/minio/base/minio-deployment.yaml
deleted file mode 100644
index a1bd963..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/minio/base/minio-deployment.yaml
+++ /dev/null
@@ -1,48 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: minio
- labels:
- app: minio
-spec:
- selector:
- matchLabels:
- app: minio
- strategy:
- type: Recreate
- template:
- metadata:
- labels:
- app: minio
- spec:
- containers:
- - args:
- - server
- - /data
- env:
- - name: MINIO_ACCESS_KEY
- valueFrom:
- secretKeyRef:
- name: mlpipeline-minio-artifact
- key: accesskey
- - name: MINIO_SECRET_KEY
- valueFrom:
- secretKeyRef:
- name: mlpipeline-minio-artifact
- key: secretkey
- image: gcr.io/ml-pipeline/minio:RELEASE.2019-08-14T20-37-41Z-license-compliance
- name: minio
- ports:
- - containerPort: 9000
- volumeMounts:
- - mountPath: /data
- name: data
- subPath: minio
- resources:
- requests:
- cpu: 20m
- memory: 100Mi
- volumes:
- - name: data
- persistentVolumeClaim:
- claimName: minio-pvc
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/minio/base/mlpipeline-minio-artifact-secret.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/minio/base/mlpipeline-minio-artifact-secret.yaml
deleted file mode 100644
index ac298d9..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/minio/base/mlpipeline-minio-artifact-secret.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-kind: Secret
-apiVersion: v1
-metadata:
- name: mlpipeline-minio-artifact
-stringData:
- accesskey: minio
- secretkey: minio123
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/minio/options/istio/istio-authorization-policy.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/minio/options/istio/istio-authorization-policy.yaml
deleted file mode 100644
index 7247cd3..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/minio/options/istio/istio-authorization-policy.yaml
+++ /dev/null
@@ -1,30 +0,0 @@
-apiVersion: security.istio.io/v1beta1
-kind: AuthorizationPolicy
-metadata:
- name: minio-service
-spec:
- action: ALLOW
- selector:
- matchLabels:
- app: minio
- rules:
- - from:
- - source:
- principals:
- - cluster.local/ns/kubeflow/sa/ml-pipeline
- - from:
- - source:
- principals:
- - cluster.local/ns/kubeflow/sa/ml-pipeline-ui
- # Allow traffic from User Pipeline Pods, which don't have a sidecar.
- - {}
----
-apiVersion: "networking.istio.io/v1alpha3"
-kind: DestinationRule
-metadata:
- name: ml-pipeline-minio
-spec:
- host: minio-service.kubeflow.svc.cluster.local
- trafficPolicy:
- tls:
- mode: ISTIO_MUTUAL
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/mysql/base/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/mysql/base/kustomization.yaml
deleted file mode 100644
index df8929c..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/mysql/base/kustomization.yaml
+++ /dev/null
@@ -1,8 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
-- mysql-deployment.yaml
-- mysql-pv-claim.yaml
-- mysql-service.yaml
-- mysql-serviceaccount.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/mysql/base/mysql-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/mysql/base/mysql-deployment.yaml
deleted file mode 100644
index 570fe03..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/mysql/base/mysql-deployment.yaml
+++ /dev/null
@@ -1,66 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: mysql
- labels:
- app: mysql
-spec:
- selector:
- matchLabels:
- app: mysql
- strategy:
- type: Recreate
- template:
- metadata:
- labels:
- app: mysql
- spec:
- serviceAccountName: mysql
- containers:
- - args:
- # https://dev.mysql.com/doc/refman/5.7/en/server-options.html#option_mysqld_ignore-db-dir
- # Ext4, Btrfs etc. volumes root directories have a lost+found directory that should not be treated as a database.
- # ignore-db-dir option has been deprecated in mysql v5.7.16.
- #
- # If upgrading MySQL to v8.0 fails, try removing /var/lib/mysql/lost+found folder in
- # mysql-pv-claim (mysql-persistent-storage):
- #
- # kubectl exec -it -n kubeflow -- bash
- # rm -rf /var/lib/mysql/lost+found
- #
- # More details on upgrading MySQL can be found here:
- # https://dev.mysql.com/doc/refman/8.0/en/upgrade-prerequisites.html
- # https://dev.mysql.com/doc/refman/8.0/en/upgrade-docker-mysql.html
- - --datadir
- - /var/lib/mysql
- # MLMD workloads (metadata-grpc-deployment and metadata-writer) depend on mysql_native_password authentication plugin.
- # mysql_native_password plugin implements native authentication; that is, authentication based on the password
- # hashing method in use from before the introduction of pluggable authentication in MySQL 8.0.
- #
- # As default_authentication_plugin option is deprecated in MySQL 8.0.27 this needs to be replaced with
- # appropriate authentication_policy in the next upgrade. See more details:
- # https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_default_authentication_plugin
- # https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_authentication_policy
- - --default-authentication-plugin=mysql_native_password
- # Disable binlog as the logs grow fast and eat up all disk spaces eventually. And KFP doesn't currently utilize binlog.
- # https://dev.mysql.com/doc/refman/8.0/en/replication-options-binary-log.html#option_mysqld_log-bin
- - --disable-log-bin
- env:
- - name: MYSQL_ALLOW_EMPTY_PASSWORD
- value: "true"
- image: gcr.io/ml-pipeline/mysql:8.0.26
- name: mysql
- ports:
- - containerPort: 3306
- name: mysql
- volumeMounts:
- - mountPath: /var/lib/mysql
- name: mysql-persistent-storage
- resources:
- requests:
- cpu: 100m
- memory: 800Mi
- volumes:
- - name: mysql-persistent-storage
- persistentVolumeClaim:
- claimName: mysql-pv-claim
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/mysql/base/mysql-pv-claim.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/mysql/base/mysql-pv-claim.yaml
deleted file mode 100644
index 108dc24..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/mysql/base/mysql-pv-claim.yaml
+++ /dev/null
@@ -1,10 +0,0 @@
-apiVersion: v1
-kind: PersistentVolumeClaim
-metadata:
- name: mysql-pv-claim
-spec:
- accessModes:
- - ReadWriteOnce
- resources:
- requests:
- storage: 20Gi
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/mysql/base/mysql-service.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/mysql/base/mysql-service.yaml
deleted file mode 100644
index d524827..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/mysql/base/mysql-service.yaml
+++ /dev/null
@@ -1,12 +0,0 @@
-apiVersion: v1
-kind: Service
-metadata:
- name: mysql
-spec:
- ports:
- - # We cannot have name: mysql here, because some requests through istio fail with it.
- port: 3306
- protocol: TCP
- targetPort: 3306
- selector:
- app: mysql
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/mysql/base/mysql-serviceaccount.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/mysql/base/mysql-serviceaccount.yaml
deleted file mode 100644
index e03c27c..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/mysql/base/mysql-serviceaccount.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: mysql
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/mysql/options/istio/istio-authorization-policy.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/mysql/options/istio/istio-authorization-policy.yaml
deleted file mode 100644
index a8dcb20..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/mysql/options/istio/istio-authorization-policy.yaml
+++ /dev/null
@@ -1,32 +0,0 @@
-apiVersion: security.istio.io/v1beta1
-kind: AuthorizationPolicy
-metadata:
- name: mysql
- namespace: kubeflow
-spec:
- selector:
- matchLabels:
- app: mysql
- rules:
- - from:
- - source:
- principals:
- - cluster.local/ns/kubeflow/sa/ml-pipeline
- - cluster.local/ns/kubeflow/sa/ml-pipeline-ui
- - cluster.local/ns/kubeflow/sa/ml-pipeline-persistenceagent
- - cluster.local/ns/kubeflow/sa/ml-pipeline-scheduledworkflow
- - cluster.local/ns/kubeflow/sa/ml-pipeline-viewer-crd-service-account
- - cluster.local/ns/kubeflow/sa/kubeflow-pipelines-cache
- - cluster.local/ns/kubeflow/sa/metadata-grpc-server
-
----
-
-apiVersion: "networking.istio.io/v1alpha3"
-kind: DestinationRule
-metadata:
- name: ml-pipeline-mysql
-spec:
- host: mysql.kubeflow.svc.cluster.local
- trafficPolicy:
- tls:
- mode: ISTIO_MUTUAL
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/mysql/options/istio/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/mysql/options/istio/kustomization.yaml
deleted file mode 100644
index 611e399..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/mysql/options/istio/kustomization.yaml
+++ /dev/null
@@ -1,5 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
-- istio-authorization-policy.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/openshift-pipelines-custom-task/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/openshift-pipelines-custom-task/kustomization.yaml
deleted file mode 100644
index ac7357d..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/openshift-pipelines-custom-task/kustomization.yaml
+++ /dev/null
@@ -1,21 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
- - ../tekton-custom-task
-
-namespace: openshift-pipelines
-
-patches:
-- path: pipelineloop-controller-patch.yaml
- target:
- group: apps
- kind: Deployment
- name: tekton-pipelineloop-controller
- version: v1
-- path: pipelineloop-webhook-patch.yaml
- target:
- group: apps
- kind: Deployment
- name: tekton-pipelineloop-webhook
- version: v1
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/openshift-pipelines-custom-task/pipelineloop-controller-patch.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/openshift-pipelines-custom-task/pipelineloop-controller-patch.yaml
deleted file mode 100644
index c76d6c3..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/openshift-pipelines-custom-task/pipelineloop-controller-patch.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-- op: remove
- path: /spec/template/spec/containers/0/securityContext/runAsGroup
-- op: remove
- path: /spec/template/spec/containers/0/securityContext/runAsUser
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/openshift-pipelines-custom-task/pipelineloop-webhook-patch.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/openshift-pipelines-custom-task/pipelineloop-webhook-patch.yaml
deleted file mode 100644
index c76d6c3..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/openshift-pipelines-custom-task/pipelineloop-webhook-patch.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-- op: remove
- path: /spec/template/spec/containers/0/securityContext/runAsGroup
-- op: remove
- path: /spec/template/spec/containers/0/securityContext/runAsUser
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/openshift/standalone/anyuid-scc.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/openshift/standalone/anyuid-scc.yaml
deleted file mode 100644
index a2b2b72..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/openshift/standalone/anyuid-scc.yaml
+++ /dev/null
@@ -1,63 +0,0 @@
-apiVersion: security.openshift.io/v1
-kind: SecurityContextConstraints
-metadata:
- annotations:
- kubernetes.io/description: kubeflow-anyuid provides all features of the restricted SCC
- but allows users to run with any UID and any GID.
- name: kubeflow-anyuid-kfp-tekton
-allowHostDirVolumePlugin: false
-allowHostIPC: false
-allowHostNetwork: false
-allowHostPID: false
-allowHostPorts: false
-allowPrivilegeEscalation: true
-allowPrivilegedContainer: true
-allowedCapabilities: null
-defaultAddCapabilities: null
-fsGroup:
- type: RunAsAny
-groups:
-- system:cluster-admins
-priority: 10
-readOnlyRootFilesystem: false
-requiredDropCapabilities:
-- MKNOD
-runAsUser:
- type: RunAsAny
-seLinuxContext:
- type: MustRunAs
-supplementalGroups:
- type: RunAsAny
-users:
-#Metadata DB accesses files owned by root
-- system:serviceaccount:kubeflow:metadatadb
-#Minio accesses files owned by root
-- system:serviceaccount:kubeflow:minio
-#Katib injects container into pods which does not run as non-root user, trying to find Dockerfile for that image and fix it
-- system:serviceaccount:kubeflow:default
-- system:serviceaccount:kubeflow:pipeline-runner
-- system:serviceaccount:kubeflow:kubeflow-pipelines-cache
-- system:serviceaccount:kubeflow:kubeflow-pipelines-cache-deployer-sa
-- system:serviceaccount:kubeflow:metadata-grpc-server
-- system:serviceaccount:kubeflow:kubeflow-pipelines-metadata-writer
-- system:serviceaccount:kubeflow:ml-pipeline
-- system:serviceaccount:kubeflow:ml-pipeline-persistenceagent
-- system:serviceaccount:kubeflow:ml-pipeline-scheduledworkflow
-- system:serviceaccount:kubeflow:ml-pipeline-ui
-- system:serviceaccount:kubeflow:ml-pipeline-viewer-crd-service-account
-- system:serviceaccount:kubeflow:ml-pipeline-visualizationserver
-- system:serviceaccount:kubeflow:mysql
-- system:serviceaccount:kubeflow:kfp-csi-s3
-- system:serviceaccount:kubeflow:kfp-csi-attacher
-- system:serviceaccount:kubeflow:kfp-csi-provisioner
-- system:serviceaccount:tekton-pipelines:tekton-pipelineloop-controller
-- system:serviceaccount:tekton-pipelines:tekton-pipelineloop-webhook
-- system:serviceaccount:openshift-pipelines:tekton-pipelineloop-controller
-- system:serviceaccount:openshift-pipelines:tekton-pipelineloop-webhook
-volumes:
-- configMap
-- downwardAPI
-- emptyDir
-- persistentVolumeClaim
-- projected
-- secret
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/openshift/standalone/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/openshift/standalone/kustomization.yaml
deleted file mode 100644
index 707e8b8..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/openshift/standalone/kustomization.yaml
+++ /dev/null
@@ -1,6 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
- - anyuid-scc.yaml
- - privileged-scc.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/openshift/standalone/privileged-scc.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/openshift/standalone/privileged-scc.yaml
deleted file mode 100644
index 3f741d4..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/openshift/standalone/privileged-scc.yaml
+++ /dev/null
@@ -1,64 +0,0 @@
-apiVersion: security.openshift.io/v1
-kind: SecurityContextConstraints
-metadata:
- annotations:
- kubernetes.io/description: kubeflow-anyuid provides all features of the restricted SCC
- but allows users to run with any UID and any GID.
- name: kubeflow-privileged-kfp-tekton
-allowHostDirVolumePlugin: true
-allowHostIPC: false
-allowHostNetwork: false
-allowHostPID: false
-allowHostPorts: false
-allowPrivilegeEscalation: true
-allowPrivilegedContainer: true
-allowedCapabilities: null
-defaultAddCapabilities: null
-fsGroup:
- type: RunAsAny
-groups:
-- system:cluster-admins
-priority: 10
-readOnlyRootFilesystem: false
-requiredDropCapabilities:
-- MKNOD
-runAsUser:
- type: RunAsAny
-seLinuxContext:
- type: MustRunAs
-supplementalGroups:
- type: RunAsAny
-users:
-#Metadata DB accesses files owned by root
-- system:serviceaccount:kubeflow:metadatadb
-#Minio accesses files owned by root
-- system:serviceaccount:kubeflow:minio
-#Katib injects container into pods which does not run as non-root user, trying to find Dockerfile for that image and fix it
-- system:serviceaccount:kubeflow:default
-- system:serviceaccount:kubeflow:pipeline-runner
-- system:serviceaccount:kubeflow:kubeflow-pipelines-cache
-- system:serviceaccount:kubeflow:kubeflow-pipelines-cache-deployer-sa
-- system:serviceaccount:kubeflow:metadata-grpc-server
-- system:serviceaccount:kubeflow:kubeflow-pipelines-metadata-writer
-- system:serviceaccount:kubeflow:ml-pipeline
-- system:serviceaccount:kubeflow:ml-pipeline-persistenceagent
-- system:serviceaccount:kubeflow:ml-pipeline-scheduledworkflow
-- system:serviceaccount:kubeflow:ml-pipeline-ui
-- system:serviceaccount:kubeflow:ml-pipeline-viewer-crd-service-account
-- system:serviceaccount:kubeflow:ml-pipeline-visualizationserver
-- system:serviceaccount:kubeflow:mysql
-- system:serviceaccount:kubeflow:kfp-csi-s3
-- system:serviceaccount:kubeflow:kfp-csi-attacher
-- system:serviceaccount:kubeflow:kfp-csi-provisioner
-- system:serviceaccount:tekton-pipelines:tekton-pipelineloop-controller
-- system:serviceaccount:tekton-pipelines:tekton-pipelineloop-webhook
-- system:serviceaccount:openshift-pipelines:tekton-pipelineloop-controller
-- system:serviceaccount:openshift-pipelines:tekton-pipelineloop-webhook
-volumes:
-- configMap
-- downwardAPI
-- emptyDir
-- persistentVolumeClaim
-- projected
-- secret
-- hostPath
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/prometheus/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/prometheus/kustomization.yaml
deleted file mode 100644
index 9b2d54e..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/prometheus/kustomization.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
-- prometheus-configmap.yaml
-- prometheus-sa.yaml
-- prometheus-role.yaml
-- prometheus-rolebinding.yaml
-- prometheus-service.yaml
-- prometheus-deployment.yaml
-images:
- - name: prom/prometheus
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/prometheus/prometheus-configmap.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/prometheus/prometheus-configmap.yaml
deleted file mode 100644
index 6bb19cc..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/prometheus/prometheus-configmap.yaml
+++ /dev/null
@@ -1,31 +0,0 @@
-apiVersion: v1
-data:
- prometheus.yml: |
- global:
- scrape_interval: 15s # By default, scrape targets every 15 seconds.
-
- # Attach these labels to any time series or alerts when communicating with
- # external systems (federation, remote storage, Alertmanager).
- external_labels:
- monitor: 'kubeflow-pipelines-monitor'
-
- # A scrape configuration containing exactly one endpoint to scrape:
- # Here it's Prometheus itself.
- scrape_configs:
- # The job name is added as a label `job=` to any timeseries scraped from this config.
- - job_name: 'prometheus'
-
- # Override the global default and scrape targets from this job every 5 seconds.
- scrape_interval: 5s
-
- static_configs:
- - targets: ['localhost:9090']
-
- # Monitoring ml-pipeline (aka Kubeflow Pipelines API server)
- - job_name: 'ml-pipeline'
- scrape_interval: 60s
- static_configs:
- - targets: ['ml-pipeline:8888']
-kind: ConfigMap
-metadata:
- name: prometheus-configmap
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/prometheus/prometheus-deployment.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/prometheus/prometheus-deployment.yaml
deleted file mode 100644
index ebd4f8a..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/prometheus/prometheus-deployment.yaml
+++ /dev/null
@@ -1,34 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: prometheus
- labels:
- app: prometheus
-spec:
- replicas: 1
- selector:
- matchLabels:
- app: prometheus
- template:
- metadata:
- labels:
- app: prometheus
- spec:
- containers:
- - name: prometheus
- image: prom/prometheus
- volumeMounts:
- - name: config-volume
- mountPath: /etc/prometheus/prometheus.yml
- subPath: prometheus.yml
- args: ["--storage.tsdb.retention.time=7d", # Adjust retention policy if necessary
- "--storage.tsdb.retention.size=1GB",
- "--config.file=/etc/prometheus/prometheus.yml",
- ]
- ports:
- - containerPort: 9090
- volumes:
- - name: config-volume
- configMap:
- name: prometheus-configmap
- serviceAccountName: prometheus
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/prometheus/prometheus-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/prometheus/prometheus-role.yaml
deleted file mode 100644
index 4cb03fc..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/prometheus/prometheus-role.yaml
+++ /dev/null
@@ -1,19 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata:
- labels:
- app: prometheus
- name: prometheus
-rules:
-- apiGroups: [""]
- resources:
- - nodes
- - services
- - endpoints
- - pods
- verbs: ["get", "list", "watch"]
-- apiGroups:
- - extensions
- resources:
- - ingresses
- verbs: ["get", "list", "watch"]
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/prometheus/prometheus-rolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/prometheus/prometheus-rolebinding.yaml
deleted file mode 100644
index 12a56ee..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/prometheus/prometheus-rolebinding.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- labels:
- app: prometheus
- name: prometheus
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: prometheus
-subjects:
-- kind: ServiceAccount
- name: prometheus
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/prometheus/prometheus-sa.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/prometheus/prometheus-sa.yaml
deleted file mode 100644
index f3fb283..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/prometheus/prometheus-sa.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: prometheus
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/prometheus/prometheus-service.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/prometheus/prometheus-service.yaml
deleted file mode 100644
index 7071bb7..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/prometheus/prometheus-service.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: prometheus
- name: prometheus
-spec:
- selector:
- app: prometheus
- ports:
- - name: promui
- protocol: TCP
- port: 9090
- targetPort: 9090
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton-custom-task/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton-custom-task/kustomization.yaml
deleted file mode 100644
index 66e6b62..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton-custom-task/kustomization.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
-- pipeline-loops
-
-namespace: tekton-pipelines
-
-images:
- - name: quay.io/aipipeline/pipelineloop-controller
- newTag: 1.7.1
- - name: quay.io/aipipeline/pipelineloop-webhook
- newTag: 1.7.1
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton-custom-task/pipeline-loops/200-serviceaccount.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton-custom-task/pipeline-loops/200-serviceaccount.yaml
deleted file mode 100644
index c995e80..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton-custom-task/pipeline-loops/200-serviceaccount.yaml
+++ /dev/null
@@ -1,19 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: tekton-pipelineloop-controller
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
----
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: tekton-pipelineloop-webhook
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton-custom-task/pipeline-loops/201-clusterrole.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton-custom-task/pipeline-loops/201-clusterrole.yaml
deleted file mode 100644
index 40e18c7..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton-custom-task/pipeline-loops/201-clusterrole.yaml
+++ /dev/null
@@ -1,95 +0,0 @@
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: tekton-pipelineloop-controller-cluster-access
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
-rules:
- # Controller needs cluster access to all of the CRDs that it is responsible for managing.
- - apiGroups: ["tekton.dev"]
- resources: ["runs", "customruns", "taskruns", "pipelineruns"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
- - apiGroups: ["tekton.dev"]
- resources: ["runs/status", "customruns/status", "taskruns/status", "pipelineruns/status", "runs/finalizers", "customruns/finalizers",]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
- - apiGroups: ["custom.tekton.dev"]
- resources: ["pipelineloops"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
- - apiGroups: ["apps"]
- resources: ["deployments", "deployments/finalizers"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
----
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- # This is the access that the controller needs on a per-namespace basis.
- name: tekton-pipelineloop-controller-tenant-access
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
-rules:
- - apiGroups: [""]
- resources: ["events"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
----
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: tekton-pipelineloop-webhook-cluster-access
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
-rules:
- # The webhook needs to be able to list and update customresourcedefinitions,
- # mainly to update the webhook certificates.
- - apiGroups: ["apiextensions.k8s.io"]
- resources: ["customresourcedefinitions", "customresourcedefinitions/status"]
- verbs: ["get", "list", "update", "patch", "watch"]
- - apiGroups: [""]
- resources: ["namespaces"]
- verbs: ["get", "list", "update", "patch", "watch"]
- - apiGroups: ["admissionregistration.k8s.io"]
- # The webhook performs a reconciliation on these two resources and continuously
- # updates configuration.
- resources: ["mutatingwebhookconfigurations", "validatingwebhookconfigurations"]
- # knative starts informers on these things, which is why we need get, list and watch.
- verbs: ["list", "watch"]
- - apiGroups: ["admissionregistration.k8s.io"]
- resources: ["mutatingwebhookconfigurations"]
- # This mutating webhook is responsible for applying defaults to tekton objects
- # as they are received.
- resourceNames: ["webhook.pipelineloop.custom.tekton.dev"]
- # When there are changes to the configs or secrets, knative updates the mutatingwebhook config
- # with the updated certificates or the refreshed set of rules.
- verbs: ["get", "update"]
- - apiGroups: ["apps"]
- resources: ["deployments", "deployments/finalizers"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
- - apiGroups: ["admissionregistration.k8s.io"]
- resources: ["validatingwebhookconfigurations"]
- # validation.webhook.pipelineloop.custom.tekton.dev performs schema validation when you, for example, create PipelineLoops.
- resourceNames: ["validation.webhook.pipelineloop.custom.tekton.dev"]
- # When there are changes to the configs or secrets, knative updates the validatingwebhook config
- # with the updated certificates or the refreshed set of rules.
- verbs: ["get", "update"]
- - apiGroups: ["policy"]
- resources: ["podsecuritypolicies"]
- resourceNames: ["tekton-pipelines", "openshift-pipelines"]
- verbs: ["use"]
----
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: tekton-pipelineloop-leader-election
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
-rules:
- # We uses leases for leaderelection
- - apiGroups: ["coordination.k8s.io"]
- resources: ["leases"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton-custom-task/pipeline-loops/201-role.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton-custom-task/pipeline-loops/201-role.yaml
deleted file mode 100644
index 04b47b2..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton-custom-task/pipeline-loops/201-role.yaml
+++ /dev/null
@@ -1,54 +0,0 @@
-kind: Role
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: tekton-pipelineloop-controller
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
-rules:
- - apiGroups: [""]
- resources: ["configmaps"]
- verbs: ["list", "watch"]
- - apiGroups: [""]
- resources: ["configmaps"]
- verbs: ["get"]
- resourceNames: ["config-leader-election", "config-logging", "config-observability", "object-store-config"]
- - apiGroups: ["policy"]
- resources: ["podsecuritypolicies"]
- resourceNames: ["tekton-pipelines", "openshift-pipelines"]
- verbs: ["use"]
----
-kind: Role
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: tekton-pipelineloop-webhook
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
-rules:
- - apiGroups: [""]
- resources: ["configmaps"]
- verbs: ["list", "watch"]
- # The webhook needs access to these configmaps for logging information.
- - apiGroups: [""]
- resources: ["configmaps"]
- verbs: ["get"]
- resourceNames: ["config-logging", "config-observability", "config-leader-election", "object-store-config"]
- - apiGroups: [""]
- resources: ["secrets"]
- verbs: ["list", "watch"]
- # The webhook daemon makes a reconciliation loop on tekton-pipelineloop-webhook-certs. Whenever
- # the secret changes it updates the webhook configurations with the certificates
- # stored in the secret.
- - apiGroups: [""]
- resources: ["secrets"]
- verbs: ["get", "update"]
- resourceNames: ["tekton-pipelineloop-webhook-certs"]
- - apiGroups: ["policy"]
- resources: ["podsecuritypolicies"]
- resourceNames: ["tekton-pipelines", "openshift-pipelines"]
- verbs: ["use"]
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton-custom-task/pipeline-loops/201-rolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton-custom-task/pipeline-loops/201-rolebinding.yaml
deleted file mode 100644
index 0d00408..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton-custom-task/pipeline-loops/201-rolebinding.yaml
+++ /dev/null
@@ -1,35 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: tekton-pipelineloop-controller
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
-subjects:
- - kind: ServiceAccount
- name: tekton-pipelineloop-controller
- namespace: tekton-pipelines
-roleRef:
- kind: Role
- name: tekton-pipelineloop-controller
- apiGroup: rbac.authorization.k8s.io
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: tekton-pipelineloop-webhook
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
-subjects:
- - kind: ServiceAccount
- name: tekton-pipelineloop-webhook
- namespace: tekton-pipelines
-roleRef:
- kind: Role
- name: tekton-pipelineloop-webhook
- apiGroup: rbac.authorization.k8s.io
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton-custom-task/pipeline-loops/202-clusterrolebinding.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton-custom-task/pipeline-loops/202-clusterrolebinding.yaml
deleted file mode 100644
index 9a8e8bc..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton-custom-task/pipeline-loops/202-clusterrolebinding.yaml
+++ /dev/null
@@ -1,88 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: tekton-pipelineloop-controller-cluster-access
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
-subjects:
- - kind: ServiceAccount
- name: tekton-pipelineloop-controller
- namespace: tekton-pipelines
-roleRef:
- kind: ClusterRole
- name: tekton-pipelineloop-controller-cluster-access
- apiGroup: rbac.authorization.k8s.io
----
-# If this ClusterRoleBinding is replaced with a RoleBinding
-# then the ClusterRole would be namespaced. The access described by
-# the tekton-pipelineloop-controller-tenant-access ClusterRole would
-# be scoped to individual tenant namespaces.
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: tekton-pipelineloop-controller-tenant-access
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
-subjects:
- - kind: ServiceAccount
- name: tekton-pipelineloop-controller
- namespace: tekton-pipelines
-roleRef:
- kind: ClusterRole
- name: tekton-pipelineloop-controller-tenant-access
- apiGroup: rbac.authorization.k8s.io
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: tekton-pipelineloop-controller-leaderelection
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
-subjects:
- - kind: ServiceAccount
- name: tekton-pipelineloop-controller
- namespace: tekton-pipelines
-roleRef:
- kind: ClusterRole
- name: tekton-pipelineloop-leader-election
- apiGroup: rbac.authorization.k8s.io
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: tekton-pipelineloop-webhook-cluster-access
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
-subjects:
- - kind: ServiceAccount
- name: tekton-pipelineloop-webhook
- namespace: tekton-pipelines
-roleRef:
- kind: ClusterRole
- name: tekton-pipelineloop-webhook-cluster-access
- apiGroup: rbac.authorization.k8s.io
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: tekton-pipelineloop-webhook-leaderelection
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
-subjects:
- - kind: ServiceAccount
- name: tekton-pipelineloop-webhook
- namespace: tekton-pipelines
-roleRef:
- kind: ClusterRole
- name: tekton-pipelineloop-leader-election
- apiGroup: rbac.authorization.k8s.io
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton-custom-task/pipeline-loops/203-object-store-config.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton-custom-task/pipeline-loops/203-object-store-config.yaml
deleted file mode 100644
index 967b9ad..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton-custom-task/pipeline-loops/203-object-store-config.yaml
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 2020 The Knative Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: object-store-config
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines-loops
-data:
- enable: "false"
- defaultBucketName: "pipelineloop-logs"
- ibmStyleCredentials: "false"
- region: "us-south"
- accessKey: "minio"
- secretKey: "minio123"
- # Below are IBM cloud specific credentials, available if the flag ibmStyleCredentials is true.
- apiKey: ""
- serviceInstanceID: "crn:v1:bluemix:public:cloud-object-storage:global:a/ID-dummy-1231231231-123abcdefgh:dummy-values::"
- serviceEndpoint: "http://minio-service.kubeflow:9000"
- authEndpoint: "https://iam.cloud.ibm.com/identity/token"
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton-custom-task/pipeline-loops/204-cache-config.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton-custom-task/pipeline-loops/204-cache-config.yaml
deleted file mode 100644
index b64ca72..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton-custom-task/pipeline-loops/204-cache-config.yaml
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 2020 The Knative Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: cache-config
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines-loops
-data:
- disabled: "true"
- driver: "mysql"
- host: "mysql.kubeflow.svc.cluster.local"
- port: "3306"
- dbName: "cachedb"
- user: "root"
- password: ""
- timeout: "6m"
- extraParams: ""
- mysqlDBGroupConcatMaxLen: "4194304"
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton-custom-task/pipeline-loops/300-pipelineloop.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton-custom-task/pipeline-loops/300-pipelineloop.yaml
deleted file mode 100644
index de3b3ef..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton-custom-task/pipeline-loops/300-pipelineloop.yaml
+++ /dev/null
@@ -1,38 +0,0 @@
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- name: pipelineloops.custom.tekton.dev
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
- pipeline.tekton.dev/release: "devel"
- version: "devel"
-spec:
- group: custom.tekton.dev
- versions:
- - name: v1alpha1
- served: true
- storage: true
- # Opt into the status subresource so metadata.generation
- # starts to increment
- subresources:
- status: {}
- schema:
- openAPIV3Schema:
- type: object
- # One can use x-kubernetes-preserve-unknown-fields: true
- # at the root of the schema (and inside any properties, additionalProperties)
- # to get the traditional CRD behaviour that nothing is pruned, despite
- # setting spec.preserveUnknownProperties: false.
- #
- # See https://kubernetes.io/blog/2019/06/20/crd-structural-schema/
- # See issue: https://github.com/knative/serving/issues/912
- x-kubernetes-preserve-unknown-fields: true
- names:
- kind: PipelineLoop
- plural: pipelineloops
- categories:
- - tekton
- - tekton-pipelines
- - openshift-pipelines
- scope: Namespaced
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton-custom-task/pipeline-loops/301-breaktask.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton-custom-task/pipeline-loops/301-breaktask.yaml
deleted file mode 100644
index 15ba2af..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton-custom-task/pipeline-loops/301-breaktask.yaml
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 2020 The Knative Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- name: breaktasks.custom.tekton.dev
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
- pipeline.tekton.dev/release: "devel"
- version: "devel"
-spec:
- group: custom.tekton.dev
- versions:
- - name: v1alpha1
- served: true
- storage: true
- # Opt into the status subresource so metadata.generation
- # starts to increment
- subresources:
- status: {}
- schema:
- openAPIV3Schema:
- type: object
- # One can use x-kubernetes-preserve-unknown-fields: true
- # at the root of the schema (and inside any properties, additionalProperties)
- # to get the traditional CRD behaviour that nothing is pruned, despite
- # setting spec.preserveUnknownProperties: false.
- #
- # See https://kubernetes.io/blog/2019/06/20/crd-structural-schema/
- # See issue: https://github.com/knative/serving/issues/912
- x-kubernetes-preserve-unknown-fields: true
- names:
- kind: BreakTask
- plural: breaktasks
- categories:
- - tekton
- - tekton-pipelines
- - openshift-pipelines
- scope: Namespaced
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton-custom-task/pipeline-loops/500-controller.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton-custom-task/pipeline-loops/500-controller.yaml
deleted file mode 100644
index 88c8ac4..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton-custom-task/pipeline-loops/500-controller.yaml
+++ /dev/null
@@ -1,66 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: tekton-pipelineloop-controller
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/name: controller
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "devel"
- app.kubernetes.io/part-of: tekton-pipeline-loops
- # tekton.dev/release value replaced with inputs.params.versionTag in pipeline/tekton/publish.yaml
- pipeline.tekton.dev/release: "devel"
- # labels below are related to istio and should not be used for resource lookup
- version: "devel"
-spec:
- replicas: 1
- selector:
- matchLabels:
- app.kubernetes.io/name: controller
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
- template:
- metadata:
- annotations:
- cluster-autoscaler.kubernetes.io/safe-to-evict: "false"
- labels:
- app.kubernetes.io/name: controller
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "devel"
- app.kubernetes.io/part-of: tekton-pipeline-loops
- # tekton.dev/release value replaced with inputs.params.versionTag in pipeline/tekton/publish.yaml
- pipeline.tekton.dev/release: "devel"
- # labels below are related to istio and should not be used for resource lookup
- app: tekton-pipelineloop-controller
- version: "devel"
- spec:
- serviceAccountName: tekton-pipelineloop-controller
- containers:
- - name: tekton-pipelineloop-controller
- image: quay.io/aipipeline/pipelineloop-controller:nightly
- env:
- - name: SYSTEM_NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- - name: CONFIG_LEADERELECTION_NAME
- value: config-leader-election
- - name: CONFIG_LOGGING_NAME
- value: config-logging
- - name: CONFIG_OBSERVABILITY_NAME
- value: config-observability
- - name: METRICS_DOMAIN
- value: tekton.dev/pipeline
- securityContext:
- allowPrivilegeEscalation: false
- capabilities:
- drop:
- - ALL
- runAsGroup: 65532
- runAsNonRoot: true
- runAsUser: 65532
- seccompProfile:
- type: RuntimeDefault
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton-custom-task/pipeline-loops/500-webhook-configuration.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton-custom-task/pipeline-loops/500-webhook-configuration.yaml
deleted file mode 100644
index 49e335b..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton-custom-task/pipeline-loops/500-webhook-configuration.yaml
+++ /dev/null
@@ -1,53 +0,0 @@
-apiVersion: v1
-kind: Secret
-metadata:
- name: tekton-pipelineloop-webhook-certs
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
- pipeline.tekton.dev/release: "devel"
-# The data is populated at install time.
-
----
-apiVersion: admissionregistration.k8s.io/v1
-kind: ValidatingWebhookConfiguration
-metadata:
- name: validation.webhook.pipelineloop.custom.tekton.dev
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
- pipeline.tekton.dev/release: "devel"
-webhooks:
-- admissionReviewVersions:
- - v1beta1
- clientConfig:
- service:
- name: tekton-pipelineloop-webhook
- namespace: tekton-pipelines
- failurePolicy: Fail
- sideEffects: None
- name: validation.webhook.pipelineloop.custom.tekton.dev
-
----
-apiVersion: admissionregistration.k8s.io/v1
-kind: MutatingWebhookConfiguration
-metadata:
- name: webhook.pipelineloop.custom.tekton.dev
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
- pipeline.tekton.dev/release: "devel"
-webhooks:
-- admissionReviewVersions:
- - v1beta1
- clientConfig:
- service:
- name: tekton-pipelineloop-webhook
- namespace: tekton-pipelines
- failurePolicy: Fail
- sideEffects: None
- name: webhook.pipelineloop.custom.tekton.dev
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton-custom-task/pipeline-loops/500-webhook.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton-custom-task/pipeline-loops/500-webhook.yaml
deleted file mode 100644
index 4be6abd..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton-custom-task/pipeline-loops/500-webhook.yaml
+++ /dev/null
@@ -1,108 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: tekton-pipelineloop-webhook
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "devel"
- app.kubernetes.io/part-of: tekton-pipeline-loops
- pipeline.tekton.dev/release: "devel"
- version: "devel"
-spec:
- replicas: 1
- selector:
- matchLabels:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
- template:
- metadata:
- annotations:
- cluster-autoscaler.kubernetes.io/safe-to-evict: "false"
- labels:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "devel"
- app.kubernetes.io/part-of: tekton-pipeline-loops
- pipeline.tekton.dev/release: "devel"
- app: tekton-pipelines-webhook
- version: "devel"
- spec:
- serviceAccountName: tekton-pipelineloop-webhook
- containers:
- - name: webhook
- image: quay.io/aipipeline/pipelineloop-webhook:nightly
- env:
- - name: SYSTEM_NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- # If you are changing these names, you will also need to update
- # the webhook's Role in 200-role.yaml to include the new
- # values in the "configmaps" "get" rule.
- - name: CONFIG_LOGGING_NAME
- value: config-logging
- - name: CONFIG_OBSERVABILITY_NAME
- value: config-observability
- - name: CONFIG_LEADERELECTION_NAME
- value: config-leader-election
- - name: WEBHOOK_SERVICE_NAME
- value: tekton-pipelineloop-webhook
- - name: WEBHOOK_SECRET_NAME
- value: tekton-pipelineloop-webhook-certs
- - name: METRICS_DOMAIN
- value: tekton.dev/pipeline
- ports:
- - name: metrics
- containerPort: 9090
- - name: profiling
- containerPort: 8008
- - name: https-webhook
- containerPort: 8443
- securityContext:
- allowPrivilegeEscalation: false
- capabilities:
- drop:
- - ALL
- runAsGroup: 65532
- runAsNonRoot: true
- runAsUser: 65532
- seccompProfile:
- type: RuntimeDefault
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "devel"
- app.kubernetes.io/part-of: tekton-pipeline-loops
- pipeline.tekton.dev/release: "devel"
- app: tekton-pipelines-webhook
- version: "devel"
- name: tekton-pipelineloop-webhook
- namespace: tekton-pipelines
-spec:
- ports:
- # Define metrics and profiling for them to be accessible within service meshes.
- - name: http-metrics
- port: 9090
- targetPort: 9090
- - name: http-profiling
- port: 8008
- targetPort: 8008
- - name: https-webhook
- port: 443
- targetPort: 8443
- selector:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton-custom-task/pipeline-loops/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton-custom-task/pipeline-loops/kustomization.yaml
deleted file mode 100644
index f888cfc..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton-custom-task/pipeline-loops/kustomization.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
- - 200-serviceaccount.yaml
- - 201-clusterrole.yaml
- - 201-role.yaml
- - 201-rolebinding.yaml
- - 202-clusterrolebinding.yaml
- - 203-object-store-config.yaml
- - 204-cache-config.yaml
- - 300-pipelineloop.yaml
- - 301-breaktask.yaml
- - 500-controller.yaml
- - 500-webhook-configuration.yaml
- - 500-webhook.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton/README.md b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton/README.md
deleted file mode 100644
index 7ac8432..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton/README.md
+++ /dev/null
@@ -1,10 +0,0 @@
-# Tekton manifests
-
-## Upgrade the Tekton Manifest Release
-
-To upgrade the Tekton pipeline or Tekton dashboard manifest to the latest release, run the following commands in this directory
-
-```shell
-curl -L https://storage.googleapis.com/tekton-releases/pipeline/latest/release.yaml --output upstream/manifests/base/tektoncd-install/tekton-release.yaml
-curl -L https://storage.googleapis.com/tekton-releases/dashboard/latest/release.yaml --output upstream/manifests/base/tektoncd-dashboard/tekton-dashboard-release.yaml
-```
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton/base/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton/base/kustomization.yaml
deleted file mode 100644
index 298f641..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton/base/kustomization.yaml
+++ /dev/null
@@ -1,5 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
-- ../upstream/manifests/base/tektoncd-install
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton/installs/cluster/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton/installs/cluster/kustomization.yaml
deleted file mode 100644
index 774a422..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton/installs/cluster/kustomization.yaml
+++ /dev/null
@@ -1,5 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
- - ../../base
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton/upstream/manifests/base/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton/upstream/manifests/base/kustomization.yaml
deleted file mode 100644
index a654682..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton/upstream/manifests/base/kustomization.yaml
+++ /dev/null
@@ -1,6 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
-- tektoncd-install
-- tektoncd-dashboard
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton/upstream/manifests/base/tektoncd-dashboard/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton/upstream/manifests/base/tektoncd-dashboard/kustomization.yaml
deleted file mode 100644
index 53e0782..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton/upstream/manifests/base/tektoncd-dashboard/kustomization.yaml
+++ /dev/null
@@ -1,5 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
-- tekton-dashboard-release.yaml
-namespace: tekton-pipelines
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton/upstream/manifests/base/tektoncd-dashboard/tekton-dashboard-release.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton/upstream/manifests/base/tektoncd-dashboard/tekton-dashboard-release.yaml
deleted file mode 100644
index 0ad8403..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton/upstream/manifests/base/tektoncd-dashboard/tekton-dashboard-release.yaml
+++ /dev/null
@@ -1,334 +0,0 @@
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- labels:
- app.kubernetes.io/component: dashboard
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-dashboard
- name: extensions.dashboard.tekton.dev
-spec:
- group: dashboard.tekton.dev
- names:
- categories:
- - tekton
- - tekton-dashboard
- kind: Extension
- plural: extensions
- shortNames:
- - ext
- - exts
- preserveUnknownFields: false
- scope: Namespaced
- versions:
- - additionalPrinterColumns:
- - jsonPath: .spec.apiVersion
- name: API version
- type: string
- - jsonPath: .spec.name
- name: Kind
- type: string
- - jsonPath: .spec.displayname
- name: Display name
- type: string
- - jsonPath: .metadata.creationTimestamp
- name: Age
- type: date
- name: v1alpha1
- schema:
- openAPIV3Schema:
- type: object
- x-kubernetes-preserve-unknown-fields: true
- served: true
- storage: true
- subresources:
- status: {}
----
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- labels:
- app.kubernetes.io/component: dashboard
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-dashboard
- name: tekton-dashboard
- namespace: tekton-pipelines
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata:
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-dashboard
- name: tekton-dashboard-info
- namespace: tekton-pipelines
-rules:
- - apiGroups:
- - ""
- resourceNames:
- - dashboard-info
- resources:
- - configmaps
- verbs:
- - get
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- labels:
- app.kubernetes.io/component: dashboard
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-dashboard
- name: tekton-dashboard-backend
-rules:
- - apiGroups:
- - apiextensions.k8s.io
- resources:
- - customresourcedefinitions
- verbs:
- - get
- - list
- - apiGroups:
- - security.openshift.io
- resources:
- - securitycontextconstraints
- verbs:
- - use
- - apiGroups:
- - tekton.dev
- resources:
- - clustertasks
- verbs:
- - get
- - list
- - watch
- - apiGroups:
- - triggers.tekton.dev
- resources:
- - clusterinterceptors
- - clustertriggerbindings
- verbs:
- - get
- - list
- - watch
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- labels:
- app.kubernetes.io/component: dashboard
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-dashboard
- name: tekton-dashboard-tenant
-rules:
- - apiGroups:
- - dashboard.tekton.dev
- resources:
- - extensions
- verbs:
- - get
- - list
- - watch
- - apiGroups:
- - ""
- resources:
- - events
- - namespaces
- - pods
- - pods/log
- verbs:
- - get
- - list
- - watch
- - apiGroups:
- - tekton.dev
- resources:
- - tasks
- - taskruns
- - pipelines
- - pipelineruns
- - customruns
- verbs:
- - get
- - list
- - watch
- - apiGroups:
- - triggers.tekton.dev
- resources:
- - eventlisteners
- - interceptors
- - triggerbindings
- - triggers
- - triggertemplates
- verbs:
- - get
- - list
- - watch
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-dashboard
- name: tekton-dashboard-info
- namespace: tekton-pipelines
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: tekton-dashboard-info
-subjects:
- - apiGroup: rbac.authorization.k8s.io
- kind: Group
- name: system:authenticated
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- labels:
- app.kubernetes.io/component: dashboard
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-dashboard
- rbac.dashboard.tekton.dev/subject: tekton-dashboard
- name: tekton-dashboard-backend
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: tekton-dashboard-backend
-subjects:
- - kind: ServiceAccount
- name: tekton-dashboard
- namespace: tekton-pipelines
----
-apiVersion: v1
-data:
- version: v0.35.0
-kind: ConfigMap
-metadata:
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-dashboard
- name: dashboard-info
- namespace: tekton-pipelines
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: tekton-dashboard
- app.kubernetes.io/component: dashboard
- app.kubernetes.io/instance: default
- app.kubernetes.io/name: dashboard
- app.kubernetes.io/part-of: tekton-dashboard
- app.kubernetes.io/version: v0.35.0
- dashboard.tekton.dev/release: v0.35.0
- version: v0.35.0
- name: tekton-dashboard
- namespace: tekton-pipelines
-spec:
- ports:
- - name: http
- port: 9097
- protocol: TCP
- targetPort: 9097
- selector:
- app.kubernetes.io/component: dashboard
- app.kubernetes.io/instance: default
- app.kubernetes.io/name: dashboard
- app.kubernetes.io/part-of: tekton-dashboard
----
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- labels:
- app: tekton-dashboard
- app.kubernetes.io/component: dashboard
- app.kubernetes.io/instance: default
- app.kubernetes.io/name: dashboard
- app.kubernetes.io/part-of: tekton-dashboard
- app.kubernetes.io/version: v0.35.0
- dashboard.tekton.dev/release: v0.35.0
- version: v0.35.0
- name: tekton-dashboard
- namespace: tekton-pipelines
-spec:
- replicas: 1
- selector:
- matchLabels:
- app.kubernetes.io/component: dashboard
- app.kubernetes.io/instance: default
- app.kubernetes.io/name: dashboard
- app.kubernetes.io/part-of: tekton-dashboard
- template:
- metadata:
- labels:
- app: tekton-dashboard
- app.kubernetes.io/component: dashboard
- app.kubernetes.io/instance: default
- app.kubernetes.io/name: dashboard
- app.kubernetes.io/part-of: tekton-dashboard
- app.kubernetes.io/version: v0.35.0
- name: tekton-dashboard
- spec:
- containers:
- - args:
- - --port=9097
- - --logout-url=
- - --pipelines-namespace=tekton-pipelines
- - --triggers-namespace=tekton-pipelines
- - --read-only=true
- - --log-level=info
- - --log-format=json
- - --namespace=
- - --stream-logs=true
- - --external-logs=
- env:
- - name: INSTALLED_NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- image: gcr.io/tekton-releases/github.com/tektoncd/dashboard/cmd/dashboard:v0.35.0@sha256:057471aa317c900e30178d64d83fc9d32cf2fcd718632243f7b902403b64981b
- livenessProbe:
- httpGet:
- path: /health
- port: 9097
- name: tekton-dashboard
- ports:
- - containerPort: 9097
- readinessProbe:
- httpGet:
- path: /readiness
- port: 9097
- securityContext:
- allowPrivilegeEscalation: false
- capabilities:
- drop:
- - ALL
- runAsGroup: 65532
- runAsNonRoot: true
- runAsUser: 65532
- seccompProfile:
- type: RuntimeDefault
- nodeSelector:
- kubernetes.io/os: linux
- serviceAccountName: tekton-dashboard
- volumes: []
-
----
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- labels:
- app.kubernetes.io/component: dashboard
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-dashboard
- rbac.dashboard.tekton.dev/subject: tekton-dashboard
- name: tekton-dashboard-tenant
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: tekton-dashboard-tenant
-subjects:
- - kind: ServiceAccount
- name: tekton-dashboard
- namespace: tekton-pipelines
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton/upstream/manifests/base/tektoncd-install/kustomization.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton/upstream/manifests/base/tektoncd-install/kustomization.yaml
deleted file mode 100644
index 2c9cb7c..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton/upstream/manifests/base/tektoncd-install/kustomization.yaml
+++ /dev/null
@@ -1,21 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
-- tekton-release.yaml
-images:
-- name: $(registry)/$(controller)
- newName: $(registry)/$(controller)
- newTag: latest
-- name: $(registry)/$(webhook)
- newName: $(registry)/$(webhook)
- newTag: latest
-patches:
-- path: tekton-controller.yaml
- target:
- group: apps
- kind: Deployment
- name: tekton-pipelines-controller
- namespace: tekton-pipelines
- version: v1
-- path: tekton-config.yaml
-- path: tekton-default.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton/upstream/manifests/base/tektoncd-install/tekton-config.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton/upstream/manifests/base/tektoncd-install/tekton-config.yaml
deleted file mode 100644
index e66f1a5..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton/upstream/manifests/base/tektoncd-install/tekton-config.yaml
+++ /dev/null
@@ -1,10 +0,0 @@
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: feature-flags
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- running-in-environment-with-injected-sidecars: "false"
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton/upstream/manifests/base/tektoncd-install/tekton-controller.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton/upstream/manifests/base/tektoncd-install/tekton-controller.yaml
deleted file mode 100644
index ddd4b74..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton/upstream/manifests/base/tektoncd-install/tekton-controller.yaml
+++ /dev/null
@@ -1,18 +0,0 @@
-- op: add
- path: /spec/template/spec/containers/0/args/0
- value: "4"
-- op: add
- path: /spec/template/spec/containers/0/args/0
- value: "-threads-per-controller"
-- op: add
- path: /spec/template/spec/containers/0/args/0
- value: "50"
-- op: add
- path: /spec/template/spec/containers/0/args/0
- value: "-kube-api-burst"
-- op: add
- path: /spec/template/spec/containers/0/args/0
- value: "50"
-- op: add
- path: /spec/template/spec/containers/0/args/0
- value: "-kube-api-qps"
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton/upstream/manifests/base/tektoncd-install/tekton-default.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton/upstream/manifests/base/tektoncd-install/tekton-default.yaml
deleted file mode 100644
index 8755f6e..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton/upstream/manifests/base/tektoncd-install/tekton-default.yaml
+++ /dev/null
@@ -1,10 +0,0 @@
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: config-defaults
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- default-timeout-minutes: "0"
\ No newline at end of file
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton/upstream/manifests/base/tektoncd-install/tekton-release.yaml b/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton/upstream/manifests/base/tektoncd-install/tekton-release.yaml
deleted file mode 100644
index b3be083..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/third-party/tekton/upstream/manifests/base/tektoncd-install/tekton-release.yaml
+++ /dev/null
@@ -1,2841 +0,0 @@
-# Copyright 2019 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: Namespace
-metadata:
- name: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- pod-security.kubernetes.io/enforce: restricted
-
----
-# Copyright 2020-2022 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: tekton-pipelines-controller-cluster-access
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-rules:
- - apiGroups: [""]
- # Controller needs to watch Pods created by TaskRuns to see them progress.
- resources: ["pods"]
- verbs: ["list", "watch"]
- # Controller needs cluster access to all of the CRDs that it is responsible for
- # managing.
- - apiGroups: ["tekton.dev"]
- resources: ["tasks", "clustertasks", "taskruns", "pipelines", "pipelineruns", "customruns"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
- - apiGroups: ["tekton.dev"]
- resources: ["verificationpolicies"]
- verbs: ["get", "list", "watch"]
- - apiGroups: ["tekton.dev"]
- resources: ["taskruns/finalizers", "pipelineruns/finalizers", "customruns/finalizers"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
- - apiGroups: ["tekton.dev"]
- resources: ["tasks/status", "clustertasks/status", "taskruns/status", "pipelines/status", "pipelineruns/status", "customruns/status", "verificationpolicies/status"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
- # resolution.tekton.dev
- - apiGroups: ["resolution.tekton.dev"]
- resources: ["resolutionrequests", "resolutionrequests/status"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
----
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- # This is the access that the controller needs on a per-namespace basis.
- name: tekton-pipelines-controller-tenant-access
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-rules:
- # Read-write access to create Pods and PVCs (for Workspaces)
- - apiGroups: [""]
- resources: ["pods", "persistentvolumeclaims"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
- # Write permissions to publish events.
- - apiGroups: [""]
- resources: ["events"]
- verbs: ["create", "update", "patch"]
- # Read-only access to these.
- - apiGroups: [""]
- resources: ["configmaps", "limitranges", "secrets", "serviceaccounts"]
- verbs: ["get", "list", "watch"]
- # Read-write access to StatefulSets for Affinity Assistant.
- - apiGroups: ["apps"]
- resources: ["statefulsets"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
----
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: tekton-pipelines-webhook-cluster-access
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-rules:
- # The webhook needs to be able to get and update customresourcedefinitions,
- # mainly to update the webhook certificates.
- - apiGroups: ["apiextensions.k8s.io"]
- resources: ["customresourcedefinitions", "customresourcedefinitions/status"]
- verbs: ["get", "update", "patch"]
- resourceNames:
- - pipelines.tekton.dev
- - pipelineruns.tekton.dev
- - tasks.tekton.dev
- - clustertasks.tekton.dev
- - taskruns.tekton.dev
- - resolutionrequests.resolution.tekton.dev
- - customruns.tekton.dev
- - verificationpolicies.tekton.dev
- # knative.dev/pkg needs list/watch permissions to set up informers for the webhook.
- - apiGroups: ["apiextensions.k8s.io"]
- resources: ["customresourcedefinitions"]
- verbs: ["list", "watch"]
- - apiGroups: ["admissionregistration.k8s.io"]
- # The webhook performs a reconciliation on these two resources and continuously
- # updates configuration.
- resources: ["mutatingwebhookconfigurations", "validatingwebhookconfigurations"]
- # knative starts informers on these things, which is why we need get, list and watch.
- verbs: ["list", "watch"]
- - apiGroups: ["admissionregistration.k8s.io"]
- resources: ["mutatingwebhookconfigurations"]
- # This mutating webhook is responsible for applying defaults to tekton objects
- # as they are received.
- resourceNames: ["webhook.pipeline.tekton.dev"]
- # When there are changes to the configs or secrets, knative updates the mutatingwebhook config
- # with the updated certificates or the refreshed set of rules.
- verbs: ["get", "update", "delete"]
- - apiGroups: ["admissionregistration.k8s.io"]
- resources: ["validatingwebhookconfigurations"]
- # validation.webhook.pipeline.tekton.dev performs schema validation when you, for example, create TaskRuns.
- # config.webhook.pipeline.tekton.dev validates the logging configuration against knative's logging structure
- resourceNames: ["validation.webhook.pipeline.tekton.dev", "config.webhook.pipeline.tekton.dev"]
- # When there are changes to the configs or secrets, knative updates the validatingwebhook config
- # with the updated certificates or the refreshed set of rules.
- verbs: ["get", "update", "delete"]
- - apiGroups: [""]
- resources: ["namespaces"]
- verbs: ["get"]
- # The webhook configured the namespace as the OwnerRef on various cluster-scoped resources,
- # which requires we can Get the system namespace.
- resourceNames: ["tekton-pipelines"]
- - apiGroups: [""]
- resources: ["namespaces/finalizers"]
- verbs: ["update"]
- # The webhook configured the namespace as the OwnerRef on various cluster-scoped resources,
- # which requires we can update the system namespace finalizers.
- resourceNames: ["tekton-pipelines"]
-
----
-# Copyright 2020 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-kind: Role
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: tekton-pipelines-controller
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-rules:
- - apiGroups: [""]
- resources: ["configmaps"]
- verbs: ["list", "watch"]
- # The controller needs access to these configmaps for logging information and runtime configuration.
- - apiGroups: [""]
- resources: ["configmaps"]
- verbs: ["get"]
- resourceNames: ["config-logging", "config-observability", "config-artifact-bucket", "config-artifact-pvc", "feature-flags", "config-leader-election", "config-registry-cert"]
----
-kind: Role
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-rules:
- - apiGroups: [""]
- resources: ["configmaps"]
- verbs: ["list", "watch"]
- # The webhook needs access to these configmaps for logging information.
- - apiGroups: [""]
- resources: ["configmaps"]
- verbs: ["get"]
- resourceNames: ["config-logging", "config-observability", "config-leader-election", "feature-flags"]
- - apiGroups: [""]
- resources: ["secrets"]
- verbs: ["list", "watch"]
- # The webhook daemon makes a reconciliation loop on webhook-certs. Whenever
- # the secret changes it updates the webhook configurations with the certificates
- # stored in the secret.
- - apiGroups: [""]
- resources: ["secrets"]
- verbs: ["get", "update"]
- resourceNames: ["webhook-certs"]
----
-kind: Role
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: tekton-pipelines-leader-election
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-rules:
- # We uses leases for leaderelection
- - apiGroups: ["coordination.k8s.io"]
- resources: ["leases"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata:
- name: tekton-pipelines-info
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-rules:
- # All system:authenticated users needs to have access
- # of the pipelines-info ConfigMap even if they don't
- # have access to the other resources present in the
- # installed namespace.
- - apiGroups: [""]
- resources: ["configmaps"]
- resourceNames: ["pipelines-info"]
- verbs: ["get"]
-
----
-# Copyright 2019 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: tekton-pipelines-controller
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
----
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-
----
-# Copyright 2019 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: tekton-pipelines-controller-cluster-access
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-subjects:
- - kind: ServiceAccount
- name: tekton-pipelines-controller
- namespace: tekton-pipelines
-roleRef:
- kind: ClusterRole
- name: tekton-pipelines-controller-cluster-access
- apiGroup: rbac.authorization.k8s.io
----
-# If this ClusterRoleBinding is replaced with a RoleBinding
-# then the ClusterRole would be namespaced. The access described by
-# the tekton-pipelines-controller-tenant-access ClusterRole would
-# be scoped to individual tenant namespaces.
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: tekton-pipelines-controller-tenant-access
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-subjects:
- - kind: ServiceAccount
- name: tekton-pipelines-controller
- namespace: tekton-pipelines
-roleRef:
- kind: ClusterRole
- name: tekton-pipelines-controller-tenant-access
- apiGroup: rbac.authorization.k8s.io
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: tekton-pipelines-webhook-cluster-access
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-subjects:
- - kind: ServiceAccount
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
-roleRef:
- kind: ClusterRole
- name: tekton-pipelines-webhook-cluster-access
- apiGroup: rbac.authorization.k8s.io
-
----
-# Copyright 2020 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: tekton-pipelines-controller
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-subjects:
- - kind: ServiceAccount
- name: tekton-pipelines-controller
- namespace: tekton-pipelines
-roleRef:
- kind: Role
- name: tekton-pipelines-controller
- apiGroup: rbac.authorization.k8s.io
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-subjects:
- - kind: ServiceAccount
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
-roleRef:
- kind: Role
- name: tekton-pipelines-webhook
- apiGroup: rbac.authorization.k8s.io
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: tekton-pipelines-controller-leaderelection
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-subjects:
- - kind: ServiceAccount
- name: tekton-pipelines-controller
- namespace: tekton-pipelines
-roleRef:
- kind: Role
- name: tekton-pipelines-leader-election
- apiGroup: rbac.authorization.k8s.io
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: tekton-pipelines-webhook-leaderelection
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-subjects:
- - kind: ServiceAccount
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
-roleRef:
- kind: Role
- name: tekton-pipelines-leader-election
- apiGroup: rbac.authorization.k8s.io
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: tekton-pipelines-info
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-subjects:
- # Giving all system:authenticated users the access of the
- # ConfigMap which contains version information.
- - kind: Group
- name: system:authenticated
- apiGroup: rbac.authorization.k8s.io
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: tekton-pipelines-info
-
----
-# Copyright 2019 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- name: clustertasks.tekton.dev
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- pipeline.tekton.dev/release: "v0.47.1"
- version: "v0.47.1"
-spec:
- group: tekton.dev
- preserveUnknownFields: false
- versions:
- - name: v1beta1
- served: true
- storage: true
- schema:
- openAPIV3Schema:
- type: object
- # One can use x-kubernetes-preserve-unknown-fields: true
- # at the root of the schema (and inside any properties, additionalProperties)
- # to get the traditional CRD behaviour that nothing is pruned, despite
- # setting spec.preserveUnknownProperties: false.
- #
- # See https://kubernetes.io/blog/2019/06/20/crd-structural-schema/
- # See issue: https://github.com/knative/serving/issues/912
- x-kubernetes-preserve-unknown-fields: true
- # Opt into the status subresource so metadata.generation
- # starts to increment
- subresources:
- status: {}
- names:
- kind: ClusterTask
- plural: clustertasks
- singular: clustertask
- categories:
- - tekton
- - tekton-pipelines
- scope: Cluster
- conversion:
- strategy: Webhook
- webhook:
- conversionReviewVersions: ["v1beta1"]
- clientConfig:
- service:
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
-
----
-# Copyright 2020 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- name: customruns.tekton.dev
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- pipeline.tekton.dev/release: "v0.47.1"
- version: "v0.47.1"
-spec:
- group: tekton.dev
- preserveUnknownFields: false
- versions:
- - name: v1beta1
- served: true
- storage: true
- schema:
- openAPIV3Schema:
- type: object
- # One can use x-kubernetes-preserve-unknown-fields: true
- # at the root of the schema (and inside any properties, additionalProperties)
- # to get the traditional CRD behaviour that nothing is pruned, despite
- # setting spec.preserveUnknownProperties: false.
- #
- # See https://kubernetes.io/blog/2019/06/20/crd-structural-schema/
- # See issue: https://github.com/knative/serving/issues/912
- x-kubernetes-preserve-unknown-fields: true
- additionalPrinterColumns:
- - name: Succeeded
- type: string
- jsonPath: ".status.conditions[?(@.type==\"Succeeded\")].status"
- - name: Reason
- type: string
- jsonPath: ".status.conditions[?(@.type==\"Succeeded\")].reason"
- - name: StartTime
- type: date
- jsonPath: .status.startTime
- - name: CompletionTime
- type: date
- jsonPath: .status.completionTime
- # Opt into the status subresource so metadata.generation
- # starts to increment
- subresources:
- status: {}
- names:
- kind: CustomRun
- plural: customruns
- singular: customrun
- categories:
- - tekton
- - tekton-pipelines
- scope: Namespaced
-
----
-# Copyright 2019 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- name: pipelines.tekton.dev
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- pipeline.tekton.dev/release: "v0.47.1"
- version: "v0.47.1"
-spec:
- group: tekton.dev
- preserveUnknownFields: false
- versions:
- - name: v1beta1
- served: true
- storage: true
- subresources:
- status: {}
- schema:
- openAPIV3Schema:
- type: object
- # One can use x-kubernetes-preserve-unknown-fields: true
- # at the root of the schema (and inside any properties, additionalProperties)
- # to get the traditional CRD behaviour that nothing is pruned, despite
- # setting spec.preserveUnknownProperties: false.
- #
- # See https://kubernetes.io/blog/2019/06/20/crd-structural-schema/
- # See issue: https://github.com/knative/serving/issues/912
- x-kubernetes-preserve-unknown-fields: true
- - name: v1
- served: true
- storage: false
- schema:
- openAPIV3Schema:
- type: object
- # OpenAPIV3 schema allows Kubernetes to perform validation on the schema fields
- # and use the schema in tooling such as `kubectl explain`.
- # Using "x-kubernetes-preserve-unknown-fields: true"
- # at the root of the schema (or within it) allows arbitrary fields.
- # We currently perform our own validation separately.
- # See https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/#specifying-a-structural-schema
- # for more info.
- x-kubernetes-preserve-unknown-fields: true
- # Opt into the status subresource so metadata.generation
- # starts to increment
- subresources:
- status: {}
- names:
- kind: Pipeline
- plural: pipelines
- singular: pipeline
- categories:
- - tekton
- - tekton-pipelines
- scope: Namespaced
- conversion:
- strategy: Webhook
- webhook:
- conversionReviewVersions: ["v1beta1", "v1"]
- clientConfig:
- service:
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
-
----
-# Copyright 2019 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- name: pipelineruns.tekton.dev
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- pipeline.tekton.dev/release: "v0.47.1"
- version: "v0.47.1"
-spec:
- group: tekton.dev
- preserveUnknownFields: false
- versions:
- - name: v1beta1
- served: true
- storage: true
- schema:
- openAPIV3Schema:
- type: object
- # One can use x-kubernetes-preserve-unknown-fields: true
- # at the root of the schema (and inside any properties, additionalProperties)
- # to get the traditional CRD behaviour that nothing is pruned, despite
- # setting spec.preserveUnknownProperties: false.
- #
- # See https://kubernetes.io/blog/2019/06/20/crd-structural-schema/
- # See issue: https://github.com/knative/serving/issues/912
- x-kubernetes-preserve-unknown-fields: true
- additionalPrinterColumns:
- - name: Succeeded
- type: string
- jsonPath: ".status.conditions[?(@.type==\"Succeeded\")].status"
- - name: Reason
- type: string
- jsonPath: ".status.conditions[?(@.type==\"Succeeded\")].reason"
- - name: StartTime
- type: date
- jsonPath: .status.startTime
- - name: CompletionTime
- type: date
- jsonPath: .status.completionTime
- # Opt into the status subresource so metadata.generation
- # starts to increment
- subresources:
- status: {}
- - name: v1
- served: true
- storage: false
- schema:
- openAPIV3Schema:
- type: object
- # One can use x-kubernetes-preserve-unknown-fields: true
- # at the root of the schema (and inside any properties, additionalProperties)
- # to get the traditional CRD behaviour that nothing is pruned, despite
- # setting spec.preserveUnknownProperties: false.
- #
- # See https://kubernetes.io/blog/2019/06/20/crd-structural-schema/
- # See issue: https://github.com/knative/serving/issues/912
- x-kubernetes-preserve-unknown-fields: true
- additionalPrinterColumns:
- - name: Succeeded
- type: string
- jsonPath: ".status.conditions[?(@.type==\"Succeeded\")].status"
- - name: Reason
- type: string
- jsonPath: ".status.conditions[?(@.type==\"Succeeded\")].reason"
- - name: StartTime
- type: date
- jsonPath: .status.startTime
- - name: CompletionTime
- type: date
- jsonPath: .status.completionTime
- # Opt into the status subresource so metadata.generation
- # starts to increment
- subresources:
- status: {}
- names:
- kind: PipelineRun
- plural: pipelineruns
- singular: pipelinerun
- categories:
- - tekton
- - tekton-pipelines
- shortNames:
- - pr
- - prs
- scope: Namespaced
- conversion:
- strategy: Webhook
- webhook:
- conversionReviewVersions: ["v1beta1", "v1"]
- clientConfig:
- service:
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
-
----
-# Copyright 2022 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- name: resolutionrequests.resolution.tekton.dev
- labels:
- resolution.tekton.dev/release: devel
-spec:
- group: resolution.tekton.dev
- scope: Namespaced
- names:
- kind: ResolutionRequest
- plural: resolutionrequests
- singular: resolutionrequest
- categories:
- - tekton
- - tekton-pipelines
- shortNames:
- - resolutionrequest
- - resolutionrequests
- versions:
- - name: v1alpha1
- served: true
- deprecated: true
- storage: false
- subresources:
- status: {}
- schema:
- openAPIV3Schema:
- type: object
- # One can use x-kubernetes-preserve-unknown-fields: true
- # at the root of the schema (and inside any properties, additionalProperties)
- # to get the traditional CRD behaviour that nothing is pruned, despite
- # setting spec.preserveUnknownProperties: false.
- #
- # See https://kubernetes.io/blog/2019/06/20/crd-structural-schema/
- # See issue: https://github.com/knative/serving/issues/912
- x-kubernetes-preserve-unknown-fields: true
- additionalPrinterColumns:
- - name: Succeeded
- type: string
- jsonPath: ".status.conditions[?(@.type=='Succeeded')].status"
- - name: Reason
- type: string
- jsonPath: ".status.conditions[?(@.type=='Succeeded')].reason"
- - name: v1beta1
- served: true
- storage: true
- subresources:
- status: {}
- schema:
- openAPIV3Schema:
- type: object
- # One can use x-kubernetes-preserve-unknown-fields: true
- # at the root of the schema (and inside any properties, additionalProperties)
- # to get the traditional CRD behaviour that nothing is pruned, despite
- # setting spec.preserveUnknownProperties: false.
- #
- # See https://kubernetes.io/blog/2019/06/20/crd-structural-schema/
- # See issue: https://github.com/knative/serving/issues/912
- x-kubernetes-preserve-unknown-fields: true
- additionalPrinterColumns:
- - name: OwnerKind
- type: string
- jsonPath: ".metadata.ownerReferences[0].kind"
- - name: Owner
- type: string
- jsonPath: ".metadata.ownerReferences[0].name"
- - name: Succeeded
- type: string
- jsonPath: ".status.conditions[?(@.type=='Succeeded')].status"
- - name: Reason
- type: string
- jsonPath: ".status.conditions[?(@.type=='Succeeded')].reason"
- - name: StartTime
- type: string
- jsonPath: .metadata.creationTimestamp
- - name: EndTime
- type: string
- jsonPath: .status.conditions[?(@.type=='Succeeded')].lastTransitionTime
- conversion:
- strategy: Webhook
- webhook:
- conversionReviewVersions: ["v1alpha1", "v1beta1"]
- clientConfig:
- service:
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
-
----
-# Copyright 2019 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- name: tasks.tekton.dev
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- pipeline.tekton.dev/release: "v0.47.1"
- version: "v0.47.1"
-spec:
- group: tekton.dev
- preserveUnknownFields: false
- versions:
- - name: v1beta1
- served: true
- storage: true
- schema:
- openAPIV3Schema:
- type: object
- # One can use x-kubernetes-preserve-unknown-fields: true
- # at the root of the schema (and inside any properties, additionalProperties)
- # to get the traditional CRD behaviour that nothing is pruned, despite
- # setting spec.preserveUnknownProperties: false.
- #
- # See https://kubernetes.io/blog/2019/06/20/crd-structural-schema/
- # See issue: https://github.com/knative/serving/issues/912
- x-kubernetes-preserve-unknown-fields: true
- # Opt into the status subresource so metadata.generation
- # starts to increment
- subresources:
- status: {}
- - name: v1
- served: true
- storage: false
- schema:
- openAPIV3Schema:
- type: object
- # TODO(#1461): Add OpenAPIV3 schema
- # OpenAPIV3 schema allows Kubernetes to perform validation on the schema fields
- # and use the schema in tooling such as `kubectl explain`.
- # Using "x-kubernetes-preserve-unknown-fields: true"
- # at the root of the schema (or within it) allows arbitrary fields.
- # We currently perform our own validation separately.
- # See https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/#specifying-a-structural-schema
- # for more info.
- x-kubernetes-preserve-unknown-fields: true
- # Opt into the status subresource so metadata.generation
- # starts to increment
- subresources:
- status: {}
- names:
- kind: Task
- plural: tasks
- singular: task
- categories:
- - tekton
- - tekton-pipelines
- scope: Namespaced
- conversion:
- strategy: Webhook
- webhook:
- conversionReviewVersions: ["v1beta1", "v1"]
- clientConfig:
- service:
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
-
----
-# Copyright 2019 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- name: taskruns.tekton.dev
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- pipeline.tekton.dev/release: "v0.47.1"
- version: "v0.47.1"
-spec:
- group: tekton.dev
- preserveUnknownFields: false
- versions:
- - name: v1beta1
- served: true
- storage: true
- schema:
- openAPIV3Schema:
- type: object
- # One can use x-kubernetes-preserve-unknown-fields: true
- # at the root of the schema (and inside any properties, additionalProperties)
- # to get the traditional CRD behaviour that nothing is pruned, despite
- # setting spec.preserveUnknownProperties: false.
- #
- # See https://kubernetes.io/blog/2019/06/20/crd-structural-schema/
- # See issue: https://github.com/knative/serving/issues/912
- x-kubernetes-preserve-unknown-fields: true
- additionalPrinterColumns:
- - name: Succeeded
- type: string
- jsonPath: ".status.conditions[?(@.type==\"Succeeded\")].status"
- - name: Reason
- type: string
- jsonPath: ".status.conditions[?(@.type==\"Succeeded\")].reason"
- - name: StartTime
- type: date
- jsonPath: .status.startTime
- - name: CompletionTime
- type: date
- jsonPath: .status.completionTime
- # Opt into the status subresource so metadata.generation
- # starts to increment
- subresources:
- status: {}
- - name: v1
- served: true
- storage: false
- schema:
- openAPIV3Schema:
- type: object
- # One can use x-kubernetes-preserve-unknown-fields: true
- # at the root of the schema (and inside any properties, additionalProperties)
- # to get the traditional CRD behaviour that nothing is pruned, despite
- # setting spec.preserveUnknownProperties: false.
- #
- # See https://kubernetes.io/blog/2019/06/20/crd-structural-schema/
- # See issue: https://github.com/knative/serving/issues/912
- x-kubernetes-preserve-unknown-fields: true
- additionalPrinterColumns:
- - name: Succeeded
- type: string
- jsonPath: ".status.conditions[?(@.type==\"Succeeded\")].status"
- - name: Reason
- type: string
- jsonPath: ".status.conditions[?(@.type==\"Succeeded\")].reason"
- - name: StartTime
- type: date
- jsonPath: .status.startTime
- - name: CompletionTime
- type: date
- jsonPath: .status.completionTime
- # Opt into the status subresource so metadata.generation
- # starts to increment
- subresources:
- status: {}
- names:
- kind: TaskRun
- plural: taskruns
- singular: taskrun
- categories:
- - tekton
- - tekton-pipelines
- shortNames:
- - tr
- - trs
- scope: Namespaced
- conversion:
- strategy: Webhook
- webhook:
- conversionReviewVersions: ["v1beta1", "v1"]
- clientConfig:
- service:
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
-
----
-# Copyright 2022 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- name: verificationpolicies.tekton.dev
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- pipeline.tekton.dev/release: "v0.47.1"
- version: "v0.47.1"
-spec:
- group: tekton.dev
- versions:
- - name: v1alpha1
- served: true
- storage: true
- schema:
- openAPIV3Schema:
- type: object
- # One can use x-kubernetes-preserve-unknown-fields: true
- # at the root of the schema (and inside any properties, additionalProperties)
- # to get the traditional CRD behaviour that nothing is pruned, despite
- # setting spec.preserveUnknownProperties: false.
- #
- # See https://kubernetes.io/blog/2019/06/20/crd-structural-schema/
- # See issue: https://github.com/knative/serving/issues/912
- x-kubernetes-preserve-unknown-fields: true
- names:
- kind: VerificationPolicy
- plural: verificationpolicies
- singular: verificationpolicy
- categories:
- - tekton
- - tekton-pipelines
- scope: Namespaced
-
----
-# Copyright 2020 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: Secret
-metadata:
- name: webhook-certs
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- pipeline.tekton.dev/release: "v0.47.1"
-# The data is populated at install time.
----
-apiVersion: admissionregistration.k8s.io/v1
-kind: ValidatingWebhookConfiguration
-metadata:
- name: validation.webhook.pipeline.tekton.dev
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- pipeline.tekton.dev/release: "v0.47.1"
-webhooks:
- - admissionReviewVersions: ["v1"]
- clientConfig:
- service:
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
- failurePolicy: Fail
- sideEffects: None
- name: validation.webhook.pipeline.tekton.dev
----
-apiVersion: admissionregistration.k8s.io/v1
-kind: MutatingWebhookConfiguration
-metadata:
- name: webhook.pipeline.tekton.dev
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- pipeline.tekton.dev/release: "v0.47.1"
-webhooks:
- - admissionReviewVersions: ["v1"]
- clientConfig:
- service:
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
- failurePolicy: Fail
- sideEffects: None
- name: webhook.pipeline.tekton.dev
----
-apiVersion: admissionregistration.k8s.io/v1
-kind: ValidatingWebhookConfiguration
-metadata:
- name: config.webhook.pipeline.tekton.dev
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- pipeline.tekton.dev/release: "v0.47.1"
-webhooks:
- - admissionReviewVersions: ["v1"]
- clientConfig:
- service:
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
- failurePolicy: Fail
- sideEffects: None
- name: config.webhook.pipeline.tekton.dev
- objectSelector:
- matchLabels:
- app.kubernetes.io/part-of: tekton-pipelines
-
----
-# Copyright 2019-2022 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- name: tekton-aggregate-edit
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- rbac.authorization.k8s.io/aggregate-to-edit: "true"
- rbac.authorization.k8s.io/aggregate-to-admin: "true"
-rules:
- - apiGroups:
- - tekton.dev
- resources:
- - tasks
- - taskruns
- - pipelines
- - pipelineruns
- - runs
- - customruns
- verbs:
- - create
- - delete
- - deletecollection
- - get
- - list
- - patch
- - update
- - watch
-
----
-# Copyright 2019-2022 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- name: tekton-aggregate-view
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- rbac.authorization.k8s.io/aggregate-to-view: "true"
-rules:
- - apiGroups:
- - tekton.dev
- resources:
- - tasks
- - taskruns
- - pipelines
- - pipelineruns
- - runs
- - customruns
- verbs:
- - get
- - list
- - watch
-
----
-# Copyright 2019 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: config-defaults
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- _example: |
- ################################
- # #
- # EXAMPLE CONFIGURATION #
- # #
- ################################
-
- # This block is not actually functional configuration,
- # but serves to illustrate the available configuration
- # options and document them in a way that is accessible
- # to users that `kubectl edit` this config map.
- #
- # These sample configuration options may be copied out of
- # this example block and unindented to be in the data block
- # to actually change the configuration.
-
- # default-timeout-minutes contains the default number of
- # minutes to use for TaskRun and PipelineRun, if none is specified.
- default-timeout-minutes: "60" # 60 minutes
-
- # default-service-account contains the default service account name
- # to use for TaskRun and PipelineRun, if none is specified.
- default-service-account: "default"
-
- # default-managed-by-label-value contains the default value given to the
- # "app.kubernetes.io/managed-by" label applied to all Pods created for
- # TaskRuns. If a user's requested TaskRun specifies another value for this
- # label, the user's request supercedes.
- default-managed-by-label-value: "tekton-pipelines"
-
- # default-pod-template contains the default pod template to use for
- # TaskRun and PipelineRun. If a pod template is specified on the
- # PipelineRun, the default-pod-template is merged with that one.
- # default-pod-template:
-
- # default-affinity-assistant-pod-template contains the default pod template
- # to use for affinity assistant pods. If a pod template is specified on the
- # PipelineRun, the default-affinity-assistant-pod-template is merged with
- # that one.
- # default-affinity-assistant-pod-template:
-
- # default-cloud-events-sink contains the default CloudEvents sink to be
- # used for TaskRun and PipelineRun, when no sink is specified.
- # Note that right now it is still not possible to set a PipelineRun or
- # TaskRun specific sink, so the default is the only option available.
- # If no sink is specified, no CloudEvent is generated
- # default-cloud-events-sink:
-
- # default-task-run-workspace-binding contains the default workspace
- # configuration provided for any Workspaces that a Task declares
- # but that a TaskRun does not explicitly provide.
- # default-task-run-workspace-binding: |
- # emptyDir: {}
-
- # default-max-matrix-combinations-count contains the default maximum number
- # of combinations from a Matrix, if none is specified.
- default-max-matrix-combinations-count: "256"
-
- # default-forbidden-env contains comma seperated environment variables that cannot be
- # overridden by podTemplate.
- default-forbidden-env:
-
- # default-resolver-type contains the default resolver type to be used in the cluster,
- # no default-resolver-type is specified by default
- default-resolver-type:
-
----
-# Copyright 2019 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: feature-flags
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- # Setting this flag to "true" will prevent Tekton to create an
- # Affinity Assistant for every TaskRun sharing a PVC workspace
- #
- # The default behaviour is for Tekton to create Affinity Assistants
- #
- # See more in the workspace documentation about Affinity Assistant
- # https://github.com/tektoncd/pipeline/blob/main/docs/workspaces.md#affinity-assistant-and-specifying-workspace-order-in-a-pipeline
- # or https://github.com/tektoncd/pipeline/pull/2630 for more info.
- disable-affinity-assistant: "false"
- # Setting this flag to "true" will prevent Tekton scanning attached
- # service accounts and injecting any credentials it finds into your
- # Steps.
- #
- # The default behaviour currently is for Tekton to search service
- # accounts for secrets matching a specified format and automatically
- # mount those into your Steps.
- #
- # Note: setting this to "true" will prevent PipelineResources from
- # working.
- #
- # See https://github.com/tektoncd/pipeline/issues/2791 for more
- # info.
- disable-creds-init: "false"
- # Setting this flag to "false" will stop Tekton from waiting for a
- # TaskRun's sidecar containers to be running before starting the first
- # step. This will allow Tasks to be run in environments that don't
- # support the DownwardAPI volume type, but may lead to unintended
- # behaviour if sidecars are used.
- #
- # See https://github.com/tektoncd/pipeline/issues/4937 for more info.
- await-sidecar-readiness: "true"
- # This option should be set to false when Pipelines is running in a
- # cluster that does not use injected sidecars such as Istio. Setting
- # it to false should decrease the time it takes for a TaskRun to start
- # running. For clusters that use injected sidecars, setting this
- # option to false can lead to unexpected behavior.
- #
- # See https://github.com/tektoncd/pipeline/issues/2080 for more info.
- running-in-environment-with-injected-sidecars: "true"
- # Setting this flag to "true" will require that any Git SSH Secret
- # offered to Tekton must have known_hosts included.
- #
- # See https://github.com/tektoncd/pipeline/issues/2981 for more
- # info.
- require-git-ssh-secret-known-hosts: "false"
- # Setting this flag to "true" enables the use of Tekton OCI bundle.
- # This is an experimental feature and thus should still be considered
- # an alpha feature.
- enable-tekton-oci-bundles: "false"
- # Setting this flag will determine which gated features are enabled.
- # Acceptable values are "stable", "beta", or "alpha".
- enable-api-fields: "stable"
- # Setting this flag to "true" enables CloudEvents for CustomRuns and Runs, as long as a
- # CloudEvents sink is configured in the config-defaults config map
- send-cloudevents-for-runs: "false"
- # This flag affects the behavior of taskruns and pipelineruns in cases where no VerificationPolicies match them.
- # If it is set to "fail", TaskRuns and PipelineRuns will fail verification if no matching policies are found.
- # If it is set to "warn", TaskRuns and PipelineRuns will run to completion if no matching policies are found, and an error will be logged.
- # If it is set to "ignore", TaskRuns and PipelineRuns will run to completion if no matching policies are found, and no error will be logged.
- trusted-resources-verification-no-match-policy: "ignore"
- # Setting this flag to "true" enables populating the "provenance" field in TaskRun
- # and PipelineRun status. This field contains metadata about resources used
- # in the TaskRun/PipelineRun such as the source from where a remote Task/Pipeline
- # definition was fetched.
- enable-provenance-in-status: "false"
- # Setting this flag will determine how Tekton pipelines will handle non-falsifiable provenance.
- # If set to "spire", then SPIRE will be used to ensure non-falsifiable provenance.
- # If set to "none", then Tekton will not have non-falsifiable provenance.
- # This is an experimental feature and thus should still be considered an alpha feature.
- enforce-nonfalsifiablity: "none"
-
----
-# Copyright 2021 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: pipelines-info
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- # Contains pipelines version which can be queried by external
- # tools such as CLI. Elevated permissions are already given to
- # this ConfigMap such that even if we don't have access to
- # other resources in the namespace we still can have access to
- # this ConfigMap.
- version: "v0.47.1"
-
----
-# Copyright 2020 Tekton Authors LLC
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: config-leader-election
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- _example: |
- ################################
- # #
- # EXAMPLE CONFIGURATION #
- # #
- ################################
- # This block is not actually functional configuration,
- # but serves to illustrate the available configuration
- # options and document them in a way that is accessible
- # to users that `kubectl edit` this config map.
- #
- # These sample configuration options may be copied out of
- # this example block and unindented to be in the data block
- # to actually change the configuration.
- # lease-duration is how long non-leaders will wait to try to acquire the
- # lock; 15 seconds is the value used by core kubernetes controllers.
- lease-duration: "60s"
- # renew-deadline is how long a leader will try to renew the lease before
- # giving up; 10 seconds is the value used by core kubernetes controllers.
- renew-deadline: "40s"
- # retry-period is how long the leader election client waits between tries of
- # actions; 2 seconds is the value used by core kubernetes controllers.
- retry-period: "10s"
- # buckets is the number of buckets used to partition key space of each
- # Reconciler. If this number is M and the replica number of the controller
- # is N, the N replicas will compete for the M buckets. The owner of a
- # bucket will take care of the reconciling for the keys partitioned into
- # that bucket.
- buckets: "1"
-
----
-# Copyright 2019 Tekton Authors LLC
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: config-logging
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- zap-logger-config: |
- {
- "level": "info",
- "development": false,
- "sampling": {
- "initial": 100,
- "thereafter": 100
- },
- "outputPaths": ["stdout"],
- "errorOutputPaths": ["stderr"],
- "encoding": "json",
- "encoderConfig": {
- "timeKey": "timestamp",
- "levelKey": "severity",
- "nameKey": "logger",
- "callerKey": "caller",
- "messageKey": "message",
- "stacktraceKey": "stacktrace",
- "lineEnding": "",
- "levelEncoder": "",
- "timeEncoder": "iso8601",
- "durationEncoder": "",
- "callerEncoder": ""
- }
- }
- # Log level overrides
- loglevel.controller: "info"
- loglevel.webhook: "info"
-
----
-# Copyright 2019 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: config-observability
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- _example: |
- ################################
- # #
- # EXAMPLE CONFIGURATION #
- # #
- ################################
-
- # This block is not actually functional configuration,
- # but serves to illustrate the available configuration
- # options and document them in a way that is accessible
- # to users that `kubectl edit` this config map.
- #
- # These sample configuration options may be copied out of
- # this example block and unindented to be in the data block
- # to actually change the configuration.
-
- # metrics.backend-destination field specifies the system metrics destination.
- # It supports either prometheus (the default) or stackdriver.
- # Note: Using Stackdriver will incur additional charges.
- metrics.backend-destination: prometheus
-
- # metrics.stackdriver-project-id field specifies the Stackdriver project ID. This
- # field is optional. When running on GCE, application default credentials will be
- # used and metrics will be sent to the cluster's project if this field is
- # not provided.
- metrics.stackdriver-project-id: ""
-
- # metrics.allow-stackdriver-custom-metrics indicates whether it is allowed
- # to send metrics to Stackdriver using "global" resource type and custom
- # metric type. Setting this flag to "true" could cause extra Stackdriver
- # charge. If metrics.backend-destination is not Stackdriver, this is
- # ignored.
- metrics.allow-stackdriver-custom-metrics: "false"
- metrics.taskrun.level: "task"
- metrics.taskrun.duration-type: "histogram"
- metrics.pipelinerun.level: "pipeline"
- metrics.pipelinerun.duration-type: "histogram"
-
----
-# Copyright 2020 Tekton Authors LLC
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: config-registry-cert
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-# data:
-# # Registry's self-signed certificate
-# cert: |
-
----
-# Copyright 2022 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: config-spire
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- _example: |
- ################################
- # #
- # EXAMPLE CONFIGURATION #
- # #
- ################################
- # This block is not actually functional configuration,
- # but serves to illustrate the available configuration
- # options and document them in a way that is accessible
- # to users that `kubectl edit` this config map.
- #
- # These sample configuration options may be copied out of
- # this example block and unindented to be in the data block
- # to actually change the configuration.
- #
- # spire-trust-domain specifies the SPIRE trust domain to use.
- # spire-trust-domain: "example.org"
- #
- # spire-socket-path specifies the SPIRE agent socket for SPIFFE workload API.
- # spire-socket-path: "unix:///spiffe-workload-api/spire-agent.sock"
- #
- # spire-server-addr specifies the SPIRE server address for workload/node registration.
- # spire-server-addr: "spire-server.spire.svc.cluster.local:8081"
- #
- # spire-node-alias-prefix specifies the SPIRE node alias prefix to use.
- # spire-node-alias-prefix: "/tekton-node/"
-
----
-# Copyright 2019 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: tekton-pipelines-controller
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/name: controller
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "v0.47.1"
- app.kubernetes.io/part-of: tekton-pipelines
- # tekton.dev/release value replaced with inputs.params.versionTag in pipeline/tekton/publish.yaml
- pipeline.tekton.dev/release: "v0.47.1"
- # labels below are related to istio and should not be used for resource lookup
- version: "v0.47.1"
-spec:
- replicas: 1
- selector:
- matchLabels:
- app.kubernetes.io/name: controller
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- template:
- metadata:
- labels:
- app.kubernetes.io/name: controller
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "v0.47.1"
- app.kubernetes.io/part-of: tekton-pipelines
- # tekton.dev/release value replaced with inputs.params.versionTag in pipeline/tekton/publish.yaml
- pipeline.tekton.dev/release: "v0.47.1"
- # labels below are related to istio and should not be used for resource lookup
- app: tekton-pipelines-controller
- version: "v0.47.1"
- spec:
- affinity:
- nodeAffinity:
- requiredDuringSchedulingIgnoredDuringExecution:
- nodeSelectorTerms:
- - matchExpressions:
- - key: kubernetes.io/os
- operator: NotIn
- values:
- - windows
- serviceAccountName: tekton-pipelines-controller
- containers:
- - name: tekton-pipelines-controller
- image: gcr.io/tekton-releases/github.com/tektoncd/pipeline/cmd/controller:v0.47.1@sha256:9336443dc0b28585a8f75bb9d56082b69fcc61b0e92e968f8cd2ac4dd1f781c5
- args: [
- # These images are built on-demand by `ko resolve` and are replaced
- # by image references by digest.
- "-entrypoint-image", "gcr.io/tekton-releases/github.com/tektoncd/pipeline/cmd/entrypoint:v0.47.1@sha256:cfc355af359beac396179393c011dee69261b1121e13afb6fa36c9e887fb00fa", "-nop-image", "gcr.io/tekton-releases/github.com/tektoncd/pipeline/cmd/nop:v0.47.1@sha256:178d0566b9137e333221206b23b1b3008245a51c84bdee183205f849d03c0050", "-sidecarlogresults-image", "gcr.io/tekton-releases/github.com/tektoncd/pipeline/cmd/sidecarlogresults:v0.47.1@sha256:566aa6381cb01adc29e098bc8f19caad4a87dece6f0657d021503a5074445d30", "-workingdirinit-image", "gcr.io/tekton-releases/github.com/tektoncd/pipeline/cmd/workingdirinit:v0.47.1@sha256:1f5ca95e36b0d22584652343a4362be4e246ee92546c5555bbb398fb1b958a65",
- # The shell image must allow root in order to create directories and copy files to PVCs.
- # cgr.dev/chainguard/busybox as of April 14 2022
- # image shall not contains tag, so it will be supported on a runtime like cri-o
- "-shell-image", "cgr.dev/chainguard/busybox@sha256:19f02276bf8dbdd62f069b922f10c65262cc34b710eea26ff928129a736be791",
- # for script mode to work with windows we need a powershell image
- # pinning to nanoserver tag as of July 15 2021
- "-shell-image-win", "mcr.microsoft.com/powershell:nanoserver@sha256:b6d5ff841b78bdf2dfed7550000fd4f3437385b8fa686ec0f010be24777654d6"]
- volumeMounts:
- - name: config-logging
- mountPath: /etc/config-logging
- - name: config-registry-cert
- mountPath: /etc/config-registry-cert
- env:
- - name: SYSTEM_NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- # If you are changing these names, you will also need to update
- # the controller's Role in 200-role.yaml to include the new
- # values in the "configmaps" "get" rule.
- - name: CONFIG_DEFAULTS_NAME
- value: config-defaults
- - name: CONFIG_LOGGING_NAME
- value: config-logging
- - name: CONFIG_OBSERVABILITY_NAME
- value: config-observability
- - name: CONFIG_ARTIFACT_BUCKET_NAME
- value: config-artifact-bucket
- - name: CONFIG_ARTIFACT_PVC_NAME
- value: config-artifact-pvc
- - name: CONFIG_FEATURE_FLAGS_NAME
- value: feature-flags
- - name: CONFIG_LEADERELECTION_NAME
- value: config-leader-election
- - name: CONFIG_SPIRE
- value: config-spire
- - name: SSL_CERT_FILE
- value: /etc/config-registry-cert/cert
- - name: SSL_CERT_DIR
- value: /etc/ssl/certs
- - name: METRICS_DOMAIN
- value: tekton.dev/pipeline
- # The following variables can be uncommented with correct values to enable Jaeger tracing
- #- name: OTEL_EXPORTER_JAEGER_ENDPOINT
- # value: http://jaeger-collector.jaeger:14268/api/traces
- #- name: OTEL_EXPORTER_JAEGER_USER
- # value: username
- #- name: OTEL_EXPORTER_JAEGER_PASSWORD
- # value: password
- securityContext:
- allowPrivilegeEscalation: false
- capabilities:
- drop:
- - "ALL"
- # User 65532 is the nonroot user ID
- runAsUser: 65532
- runAsGroup: 65532
- runAsNonRoot: true
- seccompProfile:
- type: RuntimeDefault
- ports:
- - name: metrics
- containerPort: 9090
- - name: profiling
- containerPort: 8008
- - name: probes
- containerPort: 8080
- livenessProbe:
- httpGet:
- path: /health
- port: probes
- scheme: HTTP
- initialDelaySeconds: 5
- periodSeconds: 10
- timeoutSeconds: 5
- readinessProbe:
- httpGet:
- path: /readiness
- port: probes
- scheme: HTTP
- initialDelaySeconds: 5
- periodSeconds: 10
- timeoutSeconds: 5
- volumes:
- - name: config-logging
- configMap:
- name: config-logging
- - name: config-registry-cert
- configMap:
- name: config-registry-cert
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app.kubernetes.io/name: controller
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "v0.47.1"
- app.kubernetes.io/part-of: tekton-pipelines
- # tekton.dev/release value replaced with inputs.params.versionTag in pipeline/tekton/publish.yaml
- pipeline.tekton.dev/release: "v0.47.1"
- # labels below are related to istio and should not be used for resource lookup
- app: tekton-pipelines-controller
- version: "v0.47.1"
- name: tekton-pipelines-controller
- namespace: tekton-pipelines
-spec:
- ports:
- - name: http-metrics
- port: 9090
- protocol: TCP
- targetPort: 9090
- - name: http-profiling
- port: 8008
- targetPort: 8008
- - name: probes
- port: 8080
- selector:
- app.kubernetes.io/name: controller
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-
----
-# Copyright 2022 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: Namespace
-metadata:
- name: tekton-pipelines-resolvers
- labels:
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- pod-security.kubernetes.io/enforce: restricted
-
----
-# Copyright 2022 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- # ClusterRole for resolvers to monitor and update resolutionrequests.
- name: tekton-pipelines-resolvers-resolution-request-updates
- labels:
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-rules:
- - apiGroups: ["resolution.tekton.dev"]
- resources: ["resolutionrequests", "resolutionrequests/status"]
- verbs: ["get", "list", "watch", "update", "patch"]
- - apiGroups: ["tekton.dev"]
- resources: ["tasks", "pipelines"]
- verbs: ["get", "list"]
- # Read-only access to these.
- - apiGroups: [""]
- resources: ["secrets"]
- verbs: ["get", "list", "watch"]
-
----
-# Copyright 2022 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-kind: Role
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: tekton-pipelines-resolvers-namespace-rbac
- namespace: tekton-pipelines-resolvers
- labels:
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-rules:
- # Needed to watch and load configuration and secret data.
- - apiGroups: [""]
- resources: ["configmaps", "secrets"]
- verbs: ["get", "list", "update", "watch"]
- # This is needed by leader election to run the controller in HA.
- - apiGroups: ["coordination.k8s.io"]
- resources: ["leases"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
-
----
-# Copyright 2022 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: tekton-pipelines-resolvers
- namespace: tekton-pipelines-resolvers
- labels:
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-
----
-# Copyright 2021 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: tekton-pipelines-resolvers
- labels:
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-subjects:
- - kind: ServiceAccount
- name: tekton-pipelines-resolvers
- namespace: tekton-pipelines-resolvers
-roleRef:
- kind: ClusterRole
- name: tekton-pipelines-resolvers-resolution-request-updates
- apiGroup: rbac.authorization.k8s.io
-
----
-# Copyright 2021 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: tekton-pipelines-resolvers-namespace-rbac
- namespace: tekton-pipelines-resolvers
- labels:
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-subjects:
- - kind: ServiceAccount
- name: tekton-pipelines-resolvers
- namespace: tekton-pipelines-resolvers
-roleRef:
- kind: Role
- name: tekton-pipelines-resolvers-namespace-rbac
- apiGroup: rbac.authorization.k8s.io
-
----
-# Copyright 2022 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: bundleresolver-config
- namespace: tekton-pipelines-resolvers
- labels:
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- # the default service account name to use for bundle requests.
- default-service-account: "default"
- # The default layer kind in the bundle image.
- default-kind: "task"
-
----
-# Copyright 2022 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: cluster-resolver-config
- namespace: tekton-pipelines-resolvers
- labels:
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- # The default kind to fetch.
- default-kind: "task"
- # The default namespace to look for resources in.
- default-namespace: ""
- # An optional comma-separated list of namespaces which the resolver is allowed to access. Defaults to empty, meaning all namespaces are allowed.
- allowed-namespaces: ""
- # An optional comma-separated list of namespaces which the resolver is blocked from accessing. Defaults to empty, meaning all namespaces are allowed.
- blocked-namespaces: ""
-
----
-# Copyright 2019 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: resolvers-feature-flags
- namespace: tekton-pipelines-resolvers
- labels:
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- # Setting this flag to "true" enables remote resolution of Tekton OCI bundles.
- enable-bundles-resolver: "true"
- # Setting this flag to "true" enables remote resolution of tasks and pipelines via the Tekton Hub.
- enable-hub-resolver: "true"
- # Setting this flag to "true" enables remote resolution of tasks and pipelines from Git repositories.
- enable-git-resolver: "true"
- # Setting this flag to "true" enables remote resolution of tasks and pipelines from other namespaces within the cluster.
- enable-cluster-resolver: "true"
-
----
-# Copyright 2020 Tekton Authors LLC
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: config-leader-election
- namespace: tekton-pipelines-resolvers
- labels:
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- _example: |
- ################################
- # #
- # EXAMPLE CONFIGURATION #
- # #
- ################################
- # This block is not actually functional configuration,
- # but serves to illustrate the available configuration
- # options and document them in a way that is accessible
- # to users that `kubectl edit` this config map.
- #
- # These sample configuration options may be copied out of
- # this example block and unindented to be in the data block
- # to actually change the configuration.
- # lease-duration is how long non-leaders will wait to try to acquire the
- # lock; 15 seconds is the value used by core kubernetes controllers.
- lease-duration: "60s"
- # renew-deadline is how long a leader will try to renew the lease before
- # giving up; 10 seconds is the value used by core kubernetes controllers.
- renew-deadline: "40s"
- # retry-period is how long the leader election client waits between tries of
- # actions; 2 seconds is the value used by core kubernetes controllers.
- retry-period: "10s"
- # buckets is the number of buckets used to partition key space of each
- # Reconciler. If this number is M and the replica number of the controller
- # is N, the N replicas will compete for the M buckets. The owner of a
- # bucket will take care of the reconciling for the keys partitioned into
- # that bucket.
- buckets: "1"
-
----
-# Copyright 2019 Tekton Authors LLC
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: config-logging
- namespace: tekton-pipelines-resolvers
- labels:
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- zap-logger-config: |
- {
- "level": "info",
- "development": false,
- "sampling": {
- "initial": 100,
- "thereafter": 100
- },
- "outputPaths": ["stdout"],
- "errorOutputPaths": ["stderr"],
- "encoding": "json",
- "encoderConfig": {
- "timeKey": "timestamp",
- "levelKey": "severity",
- "nameKey": "logger",
- "callerKey": "caller",
- "messageKey": "message",
- "stacktraceKey": "stacktrace",
- "lineEnding": "",
- "levelEncoder": "",
- "timeEncoder": "iso8601",
- "durationEncoder": "",
- "callerEncoder": ""
- }
- }
- # Log level overrides
- loglevel.controller: "info"
- loglevel.webhook: "info"
-
----
-# Copyright 2022 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: config-observability
- namespace: tekton-pipelines-resolvers
- labels:
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- _example: |
- ################################
- # #
- # EXAMPLE CONFIGURATION #
- # #
- ################################
-
- # This block is not actually functional configuration,
- # but serves to illustrate the available configuration
- # options and document them in a way that is accessible
- # to users that `kubectl edit` this config map.
- #
- # These sample configuration options may be copied out of
- # this example block and unindented to be in the data block
- # to actually change the configuration.
-
- # metrics.backend-destination field specifies the system metrics destination.
- # It supports either prometheus (the default) or stackdriver.
- # Note: Using stackdriver will incur additional charges
- metrics.backend-destination: prometheus
-
- # metrics.request-metrics-backend-destination specifies the request metrics
- # destination. If non-empty, it enables queue proxy to send request metrics.
- # Currently supported values: prometheus, stackdriver.
- metrics.request-metrics-backend-destination: prometheus
-
- # metrics.stackdriver-project-id field specifies the stackdriver project ID. This
- # field is optional. When running on GCE, application default credentials will be
- # used if this field is not provided.
- metrics.stackdriver-project-id: ""
-
- # metrics.allow-stackdriver-custom-metrics indicates whether it is allowed to send metrics to
- # Stackdriver using "global" resource type and custom metric type if the
- # metrics are not supported by "knative_revision" resource type. Setting this
- # flag to "true" could cause extra Stackdriver charge.
- # If metrics.backend-destination is not Stackdriver, this is ignored.
- metrics.allow-stackdriver-custom-metrics: "false"
-
----
-# Copyright 2022 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: git-resolver-config
- namespace: tekton-pipelines-resolvers
- labels:
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- # The maximum amount of time a single anonymous cloning resolution may take.
- fetch-timeout: "1m"
- # The git url to fetch the remote resource from when using anonymous cloning.
- default-url: "https://github.com/tektoncd/catalog.git"
- # The git revision to fetch the remote resource from with either anonymous cloning or the authenticated API.
- default-revision: "main"
- # The SCM type to use with the authenticated API. Can be github, gitlab, gitea, bitbucketserver, bitbucketcloud
- scm-type: "github"
- # The SCM server URL to use with the authenticated API. Not needed when using github.com, gitlab.com, or BitBucket Cloud
- server-url: ""
- # The Kubernetes secret containing the API token for the SCM provider. Required when using the authenticated API.
- api-token-secret-name: ""
- # The key in the API token secret containing the actual token. Required when using the authenticated API.
- api-token-secret-key: ""
- # The namespace containing the API token secret. Defaults to "default".
- api-token-secret-namespace: "default"
- # The default organization to look for repositories under when using the authenticated API,
- # if not specified in the resolver parameters. Optional.
- default-org: ""
-
----
-# Copyright 2022 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: hubresolver-config
- namespace: tekton-pipelines-resolvers
- labels:
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- # the default Tekton Hub catalog from where to pull the resource.
- default-tekton-hub-catalog: "Tekton"
- # the default Artifact Hub Task catalog from where to pull the resource.
- default-artifact-hub-task-catalog: "tekton-catalog-tasks"
- # the default Artifact Hub Pipeline catalog from where to pull the resource.
- default-artifact-hub-pipeline-catalog: "tekton-catalog-pipelines"
- # the default layer kind in the hub image.
- default-kind: "task"
- # the default hub source to pull the resource from.
- default-type: "artifact"
-
----
-# Copyright 2022 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: tekton-pipelines-remote-resolvers
- namespace: tekton-pipelines-resolvers
- labels:
- app.kubernetes.io/name: resolvers
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "v0.47.1"
- app.kubernetes.io/part-of: tekton-pipelines
- # tekton.dev/release value replaced with inputs.params.versionTag in pipeline/tekton/publish.yaml
- pipeline.tekton.dev/release: "v0.47.1"
- # labels below are related to istio and should not be used for resource lookup
- version: "v0.47.1"
-spec:
- replicas: 1
- selector:
- matchLabels:
- app.kubernetes.io/name: resolvers
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- template:
- metadata:
- labels:
- app.kubernetes.io/name: resolvers
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "v0.47.1"
- app.kubernetes.io/part-of: tekton-pipelines
- # tekton.dev/release value replaced with inputs.params.versionTag in pipeline/tekton/publish.yaml
- pipeline.tekton.dev/release: "v0.47.1"
- # labels below are related to istio and should not be used for resource lookup
- app: tekton-pipelines-resolvers
- version: "v0.47.1"
- spec:
- affinity:
- podAntiAffinity:
- preferredDuringSchedulingIgnoredDuringExecution:
- - podAffinityTerm:
- labelSelector:
- matchLabels:
- app.kubernetes.io/name: resolvers
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- topologyKey: kubernetes.io/hostname
- weight: 100
- serviceAccountName: tekton-pipelines-resolvers
- containers:
- - name: controller
- image: gcr.io/tekton-releases/github.com/tektoncd/pipeline/cmd/resolvers:v0.47.1@sha256:e68ab3f4efa096a4aa96fec0bc8fd91ee2d7a4bcf671ae0c90b2345cd0cb89c7
- resources:
- requests:
- cpu: 100m
- memory: 100Mi
- limits:
- cpu: 1000m
- memory: 4Gi
- ports:
- - name: metrics
- containerPort: 9090
- env:
- - name: SYSTEM_NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- # If you are changing these names, you will also need to update
- # the controller's Role in 200-role.yaml to include the new
- # values in the "configmaps" "get" rule.
- - name: CONFIG_LOGGING_NAME
- value: config-logging
- - name: CONFIG_OBSERVABILITY_NAME
- value: config-observability
- - name: CONFIG_FEATURE_FLAGS_NAME
- value: feature-flags
- - name: CONFIG_LEADERELECTION_NAME
- value: config-leader-election
- - name: METRICS_DOMAIN
- value: tekton.dev/resolution
- # Override this env var to set a private hub api endpoint
- - name: ARTIFACT_HUB_API
- value: "https://artifacthub.io/"
- securityContext:
- allowPrivilegeEscalation: false
- readOnlyRootFilesystem: true
- runAsNonRoot: true
- capabilities:
- drop:
- - "ALL"
- seccompProfile:
- type: RuntimeDefault
-
----
-# Copyright 2020 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: autoscaling/v2
-kind: HorizontalPodAutoscaler
-metadata:
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "v0.47.1"
- app.kubernetes.io/part-of: tekton-pipelines
- # tekton.dev/release value replaced with inputs.params.versionTag in pipeline/tekton/publish.yaml
- pipeline.tekton.dev/release: "v0.47.1"
- # labels below are related to istio and should not be used for resource lookup
- version: "v0.47.1"
-spec:
- minReplicas: 1
- maxReplicas: 5
- scaleTargetRef:
- apiVersion: apps/v1
- kind: Deployment
- name: tekton-pipelines-webhook
- metrics:
- - type: Resource
- resource:
- name: cpu
- target:
- type: Utilization
- averageUtilization: 100
-
----
-# Copyright 2020 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- # Note: the Deployment name must be the same as the Service name specified in
- # config/400-webhook-service.yaml. If you change this name, you must also
- # change the value of WEBHOOK_SERVICE_NAME below.
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "v0.47.1"
- app.kubernetes.io/part-of: tekton-pipelines
- # tekton.dev/release value replaced with inputs.params.versionTag in pipeline/tekton/publish.yaml
- pipeline.tekton.dev/release: "v0.47.1"
- # labels below are related to istio and should not be used for resource lookup
- version: "v0.47.1"
-spec:
- selector:
- matchLabels:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- template:
- metadata:
- labels:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "v0.47.1"
- app.kubernetes.io/part-of: tekton-pipelines
- # tekton.dev/release value replaced with inputs.params.versionTag in pipeline/tekton/publish.yaml
- pipeline.tekton.dev/release: "v0.47.1"
- # labels below are related to istio and should not be used for resource lookup
- app: tekton-pipelines-webhook
- version: "v0.47.1"
- spec:
- affinity:
- nodeAffinity:
- requiredDuringSchedulingIgnoredDuringExecution:
- nodeSelectorTerms:
- - matchExpressions:
- - key: kubernetes.io/os
- operator: NotIn
- values:
- - windows
- podAntiAffinity:
- preferredDuringSchedulingIgnoredDuringExecution:
- - podAffinityTerm:
- labelSelector:
- matchLabels:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- topologyKey: kubernetes.io/hostname
- weight: 100
- serviceAccountName: tekton-pipelines-webhook
- containers:
- - name: webhook
- # This is the Go import path for the binary that is containerized
- # and substituted here.
- image: gcr.io/tekton-releases/github.com/tektoncd/pipeline/cmd/webhook:v0.47.1@sha256:0f045f5e9a9bc025ab1e66909476616a7c2d69d0b0fcf2fbbeefdc8c99d8fd5b
- # Resource request required for autoscaler to take any action for a metric
- resources:
- requests:
- cpu: 100m
- memory: 100Mi
- limits:
- cpu: 500m
- memory: 500Mi
- env:
- - name: SYSTEM_NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- # If you are changing these names, you will also need to update
- # the webhook's Role in 200-role.yaml to include the new
- # values in the "configmaps" "get" rule.
- - name: CONFIG_LOGGING_NAME
- value: config-logging
- - name: CONFIG_OBSERVABILITY_NAME
- value: config-observability
- - name: CONFIG_LEADERELECTION_NAME
- value: config-leader-election
- - name: CONFIG_FEATURE_FLAGS_NAME
- value: feature-flags
- # If you change WEBHOOK_PORT, you will also need to change the
- # containerPort "https-webhook" to the same value.
- - name: WEBHOOK_PORT
- value: "8443"
- # if you change WEBHOOK_ADMISSION_CONTROLLER_NAME, you will also need to update
- # the webhooks.name in 500-webhooks.yaml to include the new names of admission webhooks.
- # Additionally, you will also need to change the resource names (metadata.name) of
- # "MutatingWebhookConfiguration" and "ValidatingWebhookConfiguration" in 500-webhooks.yaml
- # to reflect the change in the name of the admission webhook.
- # Followed by changing the webhook's Role in 200-clusterrole.yaml to update the "resourceNames" of
- # "mutatingwebhookconfigurations" and "validatingwebhookconfigurations" resources.
- - name: WEBHOOK_ADMISSION_CONTROLLER_NAME
- value: webhook.pipeline.tekton.dev
- - name: WEBHOOK_SERVICE_NAME
- value: tekton-pipelines-webhook
- - name: WEBHOOK_SECRET_NAME
- value: webhook-certs
- - name: METRICS_DOMAIN
- value: tekton.dev/pipeline
- securityContext:
- allowPrivilegeEscalation: false
- capabilities:
- drop:
- - "ALL"
- # User 65532 is the distroless nonroot user ID
- runAsUser: 65532
- runAsGroup: 65532
- runAsNonRoot: true
- seccompProfile:
- type: RuntimeDefault
- ports:
- - name: metrics
- containerPort: 9090
- - name: profiling
- containerPort: 8008
- # This must match the value of the environment variable WEBHOOK_PORT.
- - name: https-webhook
- containerPort: 8443
- - name: probes
- containerPort: 8080
- livenessProbe:
- httpGet:
- path: /health
- port: probes
- scheme: HTTP
- initialDelaySeconds: 5
- periodSeconds: 10
- timeoutSeconds: 5
- readinessProbe:
- httpGet:
- path: /readiness
- port: probes
- scheme: HTTP
- initialDelaySeconds: 5
- periodSeconds: 10
- timeoutSeconds: 5
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "v0.47.1"
- app.kubernetes.io/part-of: tekton-pipelines
- # tekton.dev/release value replaced with inputs.params.versionTag in pipeline/tekton/publish.yaml
- pipeline.tekton.dev/release: "v0.47.1"
- # labels below are related to istio and should not be used for resource lookup
- app: tekton-pipelines-webhook
- version: "v0.47.1"
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
-spec:
- ports:
- # Define metrics and profiling for them to be accessible within service meshes.
- - name: http-metrics
- port: 9090
- targetPort: 9090
- - name: http-profiling
- port: 8008
- targetPort: 8008
- - name: https-webhook
- port: 443
- targetPort: https-webhook
- - name: probes
- port: 8080
- selector:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-
----
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/wi-utils.sh b/charts/kubeflow/apps/kfp-tekton/upstream/v1/wi-utils.sh
deleted file mode 100644
index 3da163c..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/wi-utils.sh
+++ /dev/null
@@ -1,85 +0,0 @@
-#!/bin/bash
-#
-# Copyright 2019 The Kubeflow Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-function create_gsa_if_not_present {
- local name=${1}
- local already_present=$(gcloud iam service-accounts list --filter='name:'$name'' --format='value(name)')
- if [ -n "$already_present" ]; then
- echo "Service account $name already exists"
- else
- gcloud iam service-accounts create $name
- fi
-}
-
-# Bind KSA to GSA through workload identity.
-# Documentation: https://cloud.google.com/kubernetes-engine/docs/how-to/workload-identity
-function bind_gsa_and_ksa {
- local gsa=${1}
- local ksa=${2}
- local project=${3:-$PROJECT_ID}
- local gsa_full="$gsa@$project.iam.gserviceaccount.com"
- local namespace=${4:-$NAMESPACE}
-
- gcloud iam service-accounts add-iam-policy-binding $gsa_full \
- --member="serviceAccount:$project.svc.id.goog[$namespace/$ksa]" \
- --role="roles/iam.workloadIdentityUser" \
- > /dev/null # hide verbose output
- kubectl annotate serviceaccount \
- --namespace $namespace \
- --overwrite \
- $ksa \
- iam.gke.io/gcp-service-account=$gsa_full
- echo "* Bound KSA $ksa in namespace $namespace to GSA $gsa_full"
-}
-
-# This can be used to programmatically verify workload identity binding grants corresponding GSA
-# permissions successfully.
-# Usage: verify_workload_identity_binding $KSA $NAMESPACE
-#
-# If you want to verify manually, use the following command instead:
-# kubectl run test-$RANDOM --rm -it --restart=Never \
-# --image=google/cloud-sdk:slim \
-# --serviceaccount $ksa \
-# --namespace $namespace \
-# -- /bin/bash
-# It connects you to a pod using specified KSA running an image with gcloud and gsutil CLI tools.
-function verify_workload_identity_binding {
- local ksa=${1}
- local namespace=${2}
- local max_attempts=10
- local workload_identity_is_ready=false
- for i in $(seq 1 ${max_attempts})
- do
- workload_identity_is_ready=true
- kubectl run test-$RANDOM --rm -i --restart=Never \
- --image=google/cloud-sdk:slim \
- --serviceaccount $ksa \
- --namespace $namespace \
- -- gcloud auth list || workload_identity_is_ready=false
- kubectl run test-$RANDOM --rm -i --restart=Never \
- --image=google/cloud-sdk:slim \
- --serviceaccount $ksa \
- --namespace $namespace \
- -- gsutil ls gs:// || workload_identity_is_ready=false
- if [ "$workload_identity_is_ready" = true ]; then
- break
- fi
- done
- if [ ! "$workload_identity_is_ready" = true ]; then
- echo "Workload identity bindings are not ready after $max_attempts attempts"
- return 1
- fi
-}
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/wi-utils.sh b/charts/kubeflow/apps/kfp-tekton/upstream/wi-utils.sh
deleted file mode 100644
index 3da163c..0000000
--- a/charts/kubeflow/apps/kfp-tekton/upstream/wi-utils.sh
+++ /dev/null
@@ -1,85 +0,0 @@
-#!/bin/bash
-#
-# Copyright 2019 The Kubeflow Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-function create_gsa_if_not_present {
- local name=${1}
- local already_present=$(gcloud iam service-accounts list --filter='name:'$name'' --format='value(name)')
- if [ -n "$already_present" ]; then
- echo "Service account $name already exists"
- else
- gcloud iam service-accounts create $name
- fi
-}
-
-# Bind KSA to GSA through workload identity.
-# Documentation: https://cloud.google.com/kubernetes-engine/docs/how-to/workload-identity
-function bind_gsa_and_ksa {
- local gsa=${1}
- local ksa=${2}
- local project=${3:-$PROJECT_ID}
- local gsa_full="$gsa@$project.iam.gserviceaccount.com"
- local namespace=${4:-$NAMESPACE}
-
- gcloud iam service-accounts add-iam-policy-binding $gsa_full \
- --member="serviceAccount:$project.svc.id.goog[$namespace/$ksa]" \
- --role="roles/iam.workloadIdentityUser" \
- > /dev/null # hide verbose output
- kubectl annotate serviceaccount \
- --namespace $namespace \
- --overwrite \
- $ksa \
- iam.gke.io/gcp-service-account=$gsa_full
- echo "* Bound KSA $ksa in namespace $namespace to GSA $gsa_full"
-}
-
-# This can be used to programmatically verify workload identity binding grants corresponding GSA
-# permissions successfully.
-# Usage: verify_workload_identity_binding $KSA $NAMESPACE
-#
-# If you want to verify manually, use the following command instead:
-# kubectl run test-$RANDOM --rm -it --restart=Never \
-# --image=google/cloud-sdk:slim \
-# --serviceaccount $ksa \
-# --namespace $namespace \
-# -- /bin/bash
-# It connects you to a pod using specified KSA running an image with gcloud and gsutil CLI tools.
-function verify_workload_identity_binding {
- local ksa=${1}
- local namespace=${2}
- local max_attempts=10
- local workload_identity_is_ready=false
- for i in $(seq 1 ${max_attempts})
- do
- workload_identity_is_ready=true
- kubectl run test-$RANDOM --rm -i --restart=Never \
- --image=google/cloud-sdk:slim \
- --serviceaccount $ksa \
- --namespace $namespace \
- -- gcloud auth list || workload_identity_is_ready=false
- kubectl run test-$RANDOM --rm -i --restart=Never \
- --image=google/cloud-sdk:slim \
- --serviceaccount $ksa \
- --namespace $namespace \
- -- gsutil ls gs:// || workload_identity_is_ready=false
- if [ "$workload_identity_is_ready" = true ]; then
- break
- fi
- done
- if [ ! "$workload_identity_is_ready" = true ]; then
- echo "Workload identity bindings are not ready after $max_attempts attempts"
- return 1
- fi
-}
diff --git a/charts/kubeflow/contrib/kserve/Makefile b/charts/kubeflow/apps/kserve/Makefile
similarity index 100%
rename from charts/kubeflow/contrib/kserve/Makefile
rename to charts/kubeflow/apps/kserve/Makefile
diff --git a/charts/kubeflow/contrib/kserve/OWNERS b/charts/kubeflow/apps/kserve/OWNERS
similarity index 100%
rename from charts/kubeflow/contrib/kserve/OWNERS
rename to charts/kubeflow/apps/kserve/OWNERS
diff --git a/charts/kubeflow/contrib/kserve/README.md b/charts/kubeflow/apps/kserve/README.md
similarity index 94%
rename from charts/kubeflow/contrib/kserve/README.md
rename to charts/kubeflow/apps/kserve/README.md
index 671dd70..3afe5f6 100644
--- a/charts/kubeflow/contrib/kserve/README.md
+++ b/charts/kubeflow/apps/kserve/README.md
@@ -56,20 +56,20 @@ For upgrading see [UPGRADE.md](UPGRADE.md)
```
4. Install cert manager
```sh
- kubectl apply -k ../../common/cert-manager/cert-manager/base
+ kubectl apply -k ../../common/cert-manager/base
kubectl apply -k ../../common/cert-manager/kubeflow-issuer/base
```
5. Install Istio
```sh
- kubectl apply -k ../../common/istio-1-22/istio-crds/base
- kubectl apply -k ../../common/istio-1-22/istio-namespace/base
- kubectl apply -k ../../common/istio-1-22/istio-install/base
+ kubectl apply -k ../../common/istio-1-24/istio-crds/base
+ kubectl apply -k ../../common/istio-1-24/istio-namespace/base
+ kubectl apply -k ../../common/istio-1-24/istio-install/base
```
6. Install knative
```sh
kubectl apply -k ../../common/knative/knative-serving/overlays/gateways
- kubectl apply -k ../../common/istio-1-22/cluster-local-gateway/base
- kubectl apply -k ../../common/istio-1-22/kubeflow-istio-resources/base
+ kubectl apply -k ../../common/istio-1-24/cluster-local-gateway/base
+ kubectl apply -k ../../common/istio-1-24/kubeflow-istio-resources/base
```
7. Install kserve
```sh
diff --git a/charts/kubeflow/contrib/kserve/UPGRADE.md b/charts/kubeflow/apps/kserve/UPGRADE.md
similarity index 100%
rename from charts/kubeflow/contrib/kserve/UPGRADE.md
rename to charts/kubeflow/apps/kserve/UPGRADE.md
diff --git a/charts/kubeflow/contrib/kserve/assets/kserve.png b/charts/kubeflow/apps/kserve/assets/kserve.png
similarity index 100%
rename from charts/kubeflow/contrib/kserve/assets/kserve.png
rename to charts/kubeflow/apps/kserve/assets/kserve.png
diff --git a/charts/kubeflow/contrib/kserve/assets/kserve_new.png b/charts/kubeflow/apps/kserve/assets/kserve_new.png
similarity index 100%
rename from charts/kubeflow/contrib/kserve/assets/kserve_new.png
rename to charts/kubeflow/apps/kserve/assets/kserve_new.png
diff --git a/charts/kubeflow/contrib/kserve/kserve/aggregated-roles.yaml b/charts/kubeflow/apps/kserve/kserve/aggregated-roles.yaml
similarity index 100%
rename from charts/kubeflow/contrib/kserve/kserve/aggregated-roles.yaml
rename to charts/kubeflow/apps/kserve/kserve/aggregated-roles.yaml
diff --git a/charts/kubeflow/contrib/kserve/kserve/kserve-cluster-resources.yaml b/charts/kubeflow/apps/kserve/kserve/kserve-cluster-resources.yaml
similarity index 50%
rename from charts/kubeflow/contrib/kserve/kserve/kserve-cluster-resources.yaml
rename to charts/kubeflow/apps/kserve/kserve/kserve-cluster-resources.yaml
index 9a875e1..0540152 100644
--- a/charts/kubeflow/contrib/kserve/kserve/kserve-cluster-resources.yaml
+++ b/charts/kubeflow/apps/kserve/kserve/kserve-cluster-resources.yaml
@@ -9,7 +9,7 @@ spec:
containers:
- args:
- --model_name={{.Name}}
- image: kserve/huggingfaceserver:v0.13.0
+ image: kserve/huggingfaceserver:v0.15.0
name: kserve-container
resources:
limits:
@@ -18,6 +18,17 @@ spec:
requests:
cpu: "1"
memory: 2Gi
+ securityContext:
+ allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ privileged: false
+ runAsNonRoot: true
+ volumeMounts:
+ - mountPath: /dev/shm
+ name: devshm
+ hostIPC: false
protocolVersions:
- v2
- v1
@@ -26,6 +37,175 @@ spec:
name: huggingface
priority: 1
version: "1"
+ volumes:
+ - emptyDir:
+ medium: Memory
+ name: devshm
+---
+apiVersion: serving.kserve.io/v1alpha1
+kind: ClusterServingRuntime
+metadata:
+ name: kserve-huggingfaceserver-multinode
+spec:
+ annotations:
+ prometheus.kserve.io/path: /metrics
+ prometheus.kserve.io/port: "8080"
+ containers:
+ - args:
+ - --model_name={{.Name}}
+ command:
+ - bash
+ - -c
+ - "export MODEL=${MODEL_ID}\nif [[ ! -z ${MODEL_DIR} ]]\nthen\n export MODEL=${MODEL_DIR}\nfi\n\nexport
+ RAY_ADDRESS=${POD_IP}:${RAY_PORT}\nray start --head --disable-usage-stats --include-dashboard
+ false \npython ./huggingfaceserver/health_check.py registered_nodes --retries
+ 200 --probe_name runtime_start\n\npython -m huggingfaceserver --model_dir=${MODEL}
+ --tensor-parallel-size=${TENSOR_PARALLEL_SIZE} --pipeline-parallel-size=${PIPELINE_PARALLEL_SIZE}
+ $0 $@\n"
+ env:
+ - name: RAY_PORT
+ value: "6379"
+ - name: POD_NAMESPACE
+ valueFrom:
+ fieldRef:
+ fieldPath: metadata.namespace
+ - name: POD_IP
+ valueFrom:
+ fieldRef:
+ fieldPath: status.podIP
+ - name: VLLM_CONFIG_ROOT
+ value: /tmp
+ - name: HF_HUB_CACHE
+ value: /tmp
+ image: kserve/huggingfaceserver:v0.15.0-gpu
+ livenessProbe:
+ exec:
+ command:
+ - bash
+ - -c
+ - |
+ python ./huggingfaceserver/health_check.py registered_node_and_runtime_health --health_check_url http://localhost:8080 --probe_name head_liveness
+ failureThreshold: 2
+ periodSeconds: 5
+ successThreshold: 1
+ timeoutSeconds: 15
+ name: kserve-container
+ readinessProbe:
+ exec:
+ command:
+ - bash
+ - -c
+ - |
+ python ./huggingfaceserver/health_check.py runtime_health --health_check_url http://localhost:8080 --probe_name head_readiness
+ failureThreshold: 2
+ periodSeconds: 5
+ successThreshold: 1
+ timeoutSeconds: 15
+ resources:
+ limits:
+ cpu: "4"
+ memory: 12Gi
+ requests:
+ cpu: "2"
+ memory: 6Gi
+ startupProbe:
+ exec:
+ command:
+ - bash
+ - -c
+ - |
+ python ./huggingfaceserver/health_check.py registered_node_and_runtime_health --health_check_url http://localhost:8080 --probe_name head_startup
+ failureThreshold: 40
+ initialDelaySeconds: 60
+ periodSeconds: 30
+ successThreshold: 1
+ timeoutSeconds: 30
+ volumeMounts:
+ - mountPath: /dev/shm
+ name: shm
+ protocolVersions:
+ - v2
+ - v1
+ supportedModelFormats:
+ - autoSelect: true
+ name: huggingface
+ priority: 2
+ version: "1"
+ volumes:
+ - emptyDir:
+ medium: Memory
+ sizeLimit: 3Gi
+ name: shm
+ workerSpec:
+ containers:
+ - command:
+ - bash
+ - -c
+ - "export RAY_HEAD_ADDRESS=${HEAD_SVC}.${POD_NAMESPACE}.svc.cluster.local:6379\nSECONDS=0\n\nwhile
+ true; do \n if (( SECONDS <= 240 )); then\n if ray health-check
+ --address \"${RAY_HEAD_ADDRESS}\" > /dev/null 2>&1; then\n echo \"Ray
+ Global Control Service(GCS) is ready.\"\n break\n fi\n echo \"$SECONDS
+ seconds elapsed: Waiting for Ray Global Control Service(GCS) to be ready.\"\n
+ \ else\n if ray health-check --address \"${RAY_HEAD_ADDRESS}\"; then\n
+ \ echo \"Ray Global Control Service(GCS) is ready. Any error messages
+ above can be safely ignored.\"\n break\n fi\n echo \"$SECONDS seconds
+ elapsed: Still waiting for Ray Global Control Service(GCS) to be ready.\"\n
+ \ fi\n\n sleep 5\ndone\n\necho \"Attempting to connect to Ray cluster at
+ $RAY_HEAD_ADDRESS ...\"\nray start --address=\"${RAY_HEAD_ADDRESS}\" --block\n"
+ env:
+ - name: POD_NAME
+ valueFrom:
+ fieldRef:
+ fieldPath: metadata.name
+ - name: POD_NAMESPACE
+ valueFrom:
+ fieldRef:
+ fieldPath: metadata.namespace
+ image: kserve/huggingfaceserver:v0.15.0-gpu
+ livenessProbe:
+ exec:
+ command:
+ - bash
+ - -c
+ - |
+ export RAY_ADDRESS=${HEAD_SVC}.${POD_NAMESPACE}.svc.cluster.local:6379
+ python ./huggingfaceserver/health_check.py registered_nodes --probe_name worker_liveness
+ failureThreshold: 2
+ periodSeconds: 5
+ successThreshold: 1
+ timeoutSeconds: 15
+ name: worker-container
+ resources:
+ limits:
+ cpu: "4"
+ memory: 12Gi
+ requests:
+ cpu: "2"
+ memory: 6Gi
+ startupProbe:
+ exec:
+ command:
+ - bash
+ - -c
+ - |
+ export RAY_HEAD_NODE=${HEAD_SVC}.${POD_NAMESPACE}.svc.cluster.local
+ export RAY_ADDRESS=${RAY_HEAD_NODE}:6379
+ python ./huggingfaceserver/health_check.py registered_node_and_runtime_models --runtime_url http://${RAY_HEAD_NODE}:8080/v1/models --probe_name worker_startup
+ failureThreshold: 40
+ initialDelaySeconds: 60
+ periodSeconds: 30
+ successThreshold: 1
+ timeoutSeconds: 30
+ volumeMounts:
+ - mountPath: /dev/shm
+ name: shm
+ pipelineParallelSize: 2
+ tensorParallelSize: 1
+ volumes:
+ - emptyDir:
+ medium: Memory
+ sizeLimit: 3Gi
+ name: shm
---
apiVersion: serving.kserve.io/v1alpha1
kind: ClusterServingRuntime
@@ -41,7 +221,7 @@ spec:
- --model_dir=/mnt/models
- --http_port=8080
- --nthread=1
- image: kserve/lgbserver:v0.13.0
+ image: kserve/lgbserver:v0.15.0
name: kserve-container
resources:
limits:
@@ -50,6 +230,13 @@ spec:
requests:
cpu: "1"
memory: 2Gi
+ securityContext:
+ allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ privileged: false
+ runAsNonRoot: true
protocolVersions:
- v1
- v2
@@ -77,7 +264,7 @@ spec:
value: "9000"
- name: MODELS_DIR
value: /mnt/models
- image: docker.io/seldonio/mlserver:1.3.2
+ image: docker.io/seldonio/mlserver:1.5.0
name: kserve-container
resources:
limits:
@@ -86,6 +273,13 @@ spec:
requests:
cpu: "1"
memory: 2Gi
+ securityContext:
+ allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ privileged: false
+ runAsNonRoot: true
protocolVersions:
- v2
supportedModelFormats:
@@ -101,14 +295,26 @@ spec:
name: xgboost
priority: 2
version: "1"
+ - autoSelect: true
+ name: xgboost
+ priority: 2
+ version: "2"
- autoSelect: true
name: lightgbm
priority: 2
version: "3"
+ - autoSelect: true
+ name: lightgbm
+ priority: 2
+ version: "4"
- autoSelect: true
name: mlflow
priority: 1
version: "1"
+ - autoSelect: true
+ name: mlflow
+ priority: 1
+ version: "2"
---
apiVersion: serving.kserve.io/v1alpha1
kind: ClusterServingRuntime
@@ -123,7 +329,7 @@ spec:
- --model_name={{.Name}}
- --model_dir=/mnt/models
- --http_port=8080
- image: kserve/paddleserver:v0.13.0
+ image: kserve/paddleserver:v0.15.0
name: kserve-container
resources:
limits:
@@ -132,6 +338,13 @@ spec:
requests:
cpu: "1"
memory: 2Gi
+ securityContext:
+ allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ privileged: false
+ runAsNonRoot: true
protocolVersions:
- v1
- v2
@@ -154,7 +367,7 @@ spec:
- --model_name={{.Name}}
- --model_dir=/mnt/models
- --http_port=8080
- image: kserve/pmmlserver:v0.13.0
+ image: kserve/pmmlserver:v0.15.0
name: kserve-container
resources:
limits:
@@ -163,6 +376,13 @@ spec:
requests:
cpu: "1"
memory: 2Gi
+ securityContext:
+ allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ privileged: false
+ runAsNonRoot: true
protocolVersions:
- v1
- v2
@@ -189,7 +409,7 @@ spec:
- --model_name={{.Name}}
- --model_dir=/mnt/models
- --http_port=8080
- image: kserve/sklearnserver:v0.13.0
+ image: kserve/sklearnserver:v0.15.0
name: kserve-container
resources:
limits:
@@ -198,6 +418,13 @@ spec:
requests:
cpu: "1"
memory: 2Gi
+ securityContext:
+ allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ privileged: false
+ runAsNonRoot: true
protocolVersions:
- v1
- v2
@@ -233,6 +460,14 @@ spec:
requests:
cpu: "1"
memory: 2Gi
+ securityContext:
+ allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ privileged: false
+ runAsNonRoot: true
+ runAsUser: 1000
protocolVersions:
- v1
- grpc-v1
@@ -272,6 +507,14 @@ spec:
requests:
cpu: "1"
memory: 2Gi
+ securityContext:
+ allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ privileged: false
+ runAsNonRoot: true
+ runAsUser: 1000
protocolVersions:
- v1
- v2
@@ -307,6 +550,14 @@ spec:
requests:
cpu: "1"
memory: 2Gi
+ securityContext:
+ allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ privileged: false
+ runAsNonRoot: true
+ runAsUser: 1000
protocolVersions:
- v2
- grpc-v2
@@ -348,7 +599,7 @@ spec:
- --model_dir=/mnt/models
- --http_port=8080
- --nthread=1
- image: kserve/xgbserver:v0.13.0
+ image: kserve/xgbserver:v0.15.0
name: kserve-container
resources:
limits:
@@ -357,6 +608,13 @@ spec:
requests:
cpu: "1"
memory: 2Gi
+ securityContext:
+ allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ privileged: false
+ runAsNonRoot: true
protocolVersions:
- v1
- v2
@@ -372,7 +630,7 @@ metadata:
name: default
spec:
container:
- image: kserve/storage-initializer:v0.13.0
+ image: kserve/storage-initializer:v0.15.0
name: storage-initializer
resources:
limits:
@@ -385,7 +643,9 @@ spec:
- prefix: gs://
- prefix: s3://
- prefix: hdfs://
+ - prefix: hf://
- prefix: webhdfs://
- regex: https://(.+?).blob.core.windows.net/(.+)
- regex: https://(.+?).file.core.windows.net/(.+)
- regex: https?://(.+)/(.+)
+ workloadType: initContainer
diff --git a/charts/kubeflow/contrib/kserve/kserve/kserve.yaml b/charts/kubeflow/apps/kserve/kserve/kserve.yaml
similarity index 62%
rename from charts/kubeflow/contrib/kserve/kserve/kserve.yaml
rename to charts/kubeflow/apps/kserve/kserve/kserve.yaml
index 009d362..e5ac11b 100644
--- a/charts/kubeflow/contrib/kserve/kserve/kserve.yaml
+++ b/charts/kubeflow/apps/kserve/kserve/kserve.yaml
@@ -11,7 +11,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
- controller-gen.kubebuilder.io/version: v0.12.0
+ controller-gen.kubebuilder.io/version: v0.16.2
name: clusterservingruntimes.serving.kserve.io
spec:
group: serving.kserve.io
@@ -67,11 +67,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchFields:
items:
properties:
@@ -83,11 +85,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
x-kubernetes-map-type: atomic
weight:
@@ -98,6 +102,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
properties:
nodeSelectorTerms:
@@ -114,11 +119,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchFields:
items:
properties:
@@ -130,14 +137,17 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
x-kubernetes-map-type: atomic
type: array
+ x-kubernetes-list-type: atomic
required:
- nodeSelectorTerms
type: object
@@ -163,17 +173,29 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
properties:
matchExpressions:
@@ -187,11 +209,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -202,6 +226,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
type: string
required:
@@ -215,6 +240,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
items:
properties:
@@ -231,17 +257,29 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
properties:
matchExpressions:
@@ -255,11 +293,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -270,12 +310,14 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
type: string
required:
- topologyKey
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
podAntiAffinity:
properties:
@@ -297,17 +339,29 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
properties:
matchExpressions:
@@ -321,11 +375,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -336,6 +392,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
type: string
required:
@@ -349,6 +406,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
items:
properties:
@@ -365,17 +423,29 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
properties:
matchExpressions:
@@ -389,11 +459,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -404,12 +476,14 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
type: string
required:
- topologyKey
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
type: object
annotations:
@@ -432,6 +506,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -470,6 +545,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -498,10 +574,12 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
items:
properties:
@@ -516,6 +594,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -554,6 +633,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -566,12 +646,16 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
items:
properties:
configMapRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -582,6 +666,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -589,6 +674,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
type: string
imagePullPolicy:
@@ -603,6 +689,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -620,6 +707,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -632,6 +720,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -653,6 +749,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -670,6 +767,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -682,6 +780,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -704,6 +810,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -714,6 +821,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -734,6 +842,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -808,6 +917,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -818,6 +928,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -838,6 +949,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -898,6 +1010,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -928,16 +1042,27 @@ spec:
properties:
allowPrivilegeEscalation:
type: boolean
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
capabilities:
properties:
add:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
type: boolean
@@ -993,6 +1118,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -1003,6 +1129,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -1023,6 +1150,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -1085,6 +1213,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
items:
properties:
@@ -1096,6 +1227,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -1105,6 +1238,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
type: string
required:
@@ -1117,12 +1253,15 @@ spec:
type: string
grpcEndpoint:
type: string
+ hostIPC:
+ type: boolean
httpDataEndpoint:
type: string
imagePullSecrets:
items:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -1207,10 +1346,12 @@ spec:
diskURI:
type: string
fsType:
+ default: ext4
type: string
kind:
type: string
readOnly:
+ default: false
type: boolean
required:
- diskName
@@ -1234,6 +1375,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
readOnly:
@@ -1243,6 +1385,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -1260,6 +1403,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -1288,7 +1432,9 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
name:
+ default: ""
type: string
optional:
type: boolean
@@ -1303,6 +1449,7 @@ spec:
nodePublishSecretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -1358,6 +1505,7 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
emptyDir:
properties:
@@ -1382,6 +1530,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
dataSource:
properties:
apiGroup:
@@ -1411,18 +1560,6 @@ spec:
type: object
resources:
properties:
- claims:
- items:
- properties:
- name:
- type: string
- required:
- - name
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - name
- x-kubernetes-list-type: map
limits:
additionalProperties:
anyOf:
@@ -1453,11 +1590,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -1466,6 +1605,8 @@ spec:
x-kubernetes-map-type: atomic
storageClassName:
type: string
+ volumeAttributesClassName:
+ type: string
volumeMode:
type: string
volumeName:
@@ -1488,10 +1629,12 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
wwids:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
flexVolume:
properties:
@@ -1508,6 +1651,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -1567,6 +1711,13 @@ spec:
required:
- path
type: object
+ image:
+ properties:
+ pullPolicy:
+ type: string
+ reference:
+ type: string
+ type: object
iscsi:
properties:
chapAuthDiscovery:
@@ -1580,6 +1731,7 @@ spec:
iqn:
type: string
iscsiInterface:
+ default: default
type: string
lun:
format: int32
@@ -1588,11 +1740,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
readOnly:
type: boolean
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -1654,6 +1808,45 @@ spec:
sources:
items:
properties:
+ clusterTrustBundle:
+ properties:
+ labelSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ name:
+ type: string
+ optional:
+ type: boolean
+ path:
+ type: string
+ signerName:
+ type: string
+ required:
+ - path
+ type: object
configMap:
properties:
items:
@@ -1671,7 +1864,9 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
name:
+ default: ""
type: string
optional:
type: boolean
@@ -1717,6 +1912,7 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
secret:
properties:
@@ -1735,7 +1931,9 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
name:
+ default: ""
type: string
optional:
type: boolean
@@ -1755,6 +1953,7 @@ spec:
type: object
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
quobyte:
properties:
@@ -1781,22 +1980,27 @@ spec:
image:
type: string
keyring:
+ default: /etc/ceph/keyring
type: string
monitors:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
pool:
+ default: rbd
type: string
readOnly:
type: boolean
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
user:
+ default: admin
type: string
required:
- image
@@ -1805,6 +2009,7 @@ spec:
scaleIO:
properties:
fsType:
+ default: xfs
type: string
gateway:
type: string
@@ -1815,12 +2020,14 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
sslEnabled:
type: boolean
storageMode:
+ default: ThinProvisioned
type: string
storagePool:
type: string
@@ -1853,6 +2060,7 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
optional:
type: boolean
secretName:
@@ -1867,6 +2075,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -1892,6 +2101,1954 @@ spec:
- name
type: object
type: array
+ workerSpec:
+ properties:
+ affinity:
+ properties:
+ nodeAffinity:
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ items:
+ properties:
+ preference:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchFields:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ x-kubernetes-map-type: atomic
+ weight:
+ format: int32
+ type: integer
+ required:
+ - preference
+ - weight
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ properties:
+ nodeSelectorTerms:
+ items:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchFields:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ x-kubernetes-map-type: atomic
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - nodeSelectorTerms
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ podAffinity:
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ items:
+ properties:
+ podAffinityTerm:
+ properties:
+ labelSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ namespaces:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ type: string
+ required:
+ - topologyKey
+ type: object
+ weight:
+ format: int32
+ type: integer
+ required:
+ - podAffinityTerm
+ - weight
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ items:
+ properties:
+ labelSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ namespaces:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ type: string
+ required:
+ - topologyKey
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ podAntiAffinity:
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ items:
+ properties:
+ podAffinityTerm:
+ properties:
+ labelSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ namespaces:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ type: string
+ required:
+ - topologyKey
+ type: object
+ weight:
+ format: int32
+ type: integer
+ required:
+ - podAffinityTerm
+ - weight
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ items:
+ properties:
+ labelSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ namespaces:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ type: string
+ required:
+ - topologyKey
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ type: object
+ annotations:
+ additionalProperties:
+ type: string
+ type: object
+ containers:
+ items:
+ properties:
+ args:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ env:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ valueFrom:
+ properties:
+ configMapKeyRef:
+ properties:
+ key:
+ type: string
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ fieldRef:
+ properties:
+ apiVersion:
+ type: string
+ fieldPath:
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ resourceFieldRef:
+ properties:
+ containerName:
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ secretKeyRef:
+ properties:
+ key:
+ type: string
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ envFrom:
+ items:
+ properties:
+ configMapRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ prefix:
+ type: string
+ secretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ image:
+ type: string
+ imagePullPolicy:
+ type: string
+ lifecycle:
+ properties:
+ postStart:
+ properties:
+ exec:
+ properties:
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ properties:
+ host:
+ type: string
+ httpHeaders:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ scheme:
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ properties:
+ host:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ preStop:
+ properties:
+ exec:
+ properties:
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ properties:
+ host:
+ type: string
+ httpHeaders:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ scheme:
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ properties:
+ host:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ type: object
+ livenessProbe:
+ properties:
+ exec:
+ properties:
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ format: int32
+ type: integer
+ grpc:
+ properties:
+ port:
+ format: int32
+ type: integer
+ service:
+ default: ""
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ properties:
+ host:
+ type: string
+ httpHeaders:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ scheme:
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ format: int32
+ type: integer
+ periodSeconds:
+ format: int32
+ type: integer
+ successThreshold:
+ format: int32
+ type: integer
+ tcpSocket:
+ properties:
+ host:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ format: int64
+ type: integer
+ timeoutSeconds:
+ format: int32
+ type: integer
+ type: object
+ name:
+ type: string
+ ports:
+ items:
+ properties:
+ containerPort:
+ format: int32
+ type: integer
+ hostIP:
+ type: string
+ hostPort:
+ format: int32
+ type: integer
+ name:
+ type: string
+ protocol:
+ default: TCP
+ type: string
+ required:
+ - containerPort
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - containerPort
+ - protocol
+ x-kubernetes-list-type: map
+ readinessProbe:
+ properties:
+ exec:
+ properties:
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ format: int32
+ type: integer
+ grpc:
+ properties:
+ port:
+ format: int32
+ type: integer
+ service:
+ default: ""
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ properties:
+ host:
+ type: string
+ httpHeaders:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ scheme:
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ format: int32
+ type: integer
+ periodSeconds:
+ format: int32
+ type: integer
+ successThreshold:
+ format: int32
+ type: integer
+ tcpSocket:
+ properties:
+ host:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ format: int64
+ type: integer
+ timeoutSeconds:
+ format: int32
+ type: integer
+ type: object
+ resizePolicy:
+ items:
+ properties:
+ resourceName:
+ type: string
+ restartPolicy:
+ type: string
+ required:
+ - resourceName
+ - restartPolicy
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ resources:
+ properties:
+ claims:
+ items:
+ properties:
+ name:
+ type: string
+ request:
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ limits:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ requests:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ type: object
+ restartPolicy:
+ type: string
+ securityContext:
+ properties:
+ allowPrivilegeEscalation:
+ type: boolean
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
+ capabilities:
+ properties:
+ add:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ drop:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ privileged:
+ type: boolean
+ procMount:
+ type: string
+ readOnlyRootFilesystem:
+ type: boolean
+ runAsGroup:
+ format: int64
+ type: integer
+ runAsNonRoot:
+ type: boolean
+ runAsUser:
+ format: int64
+ type: integer
+ seLinuxOptions:
+ properties:
+ level:
+ type: string
+ role:
+ type: string
+ type:
+ type: string
+ user:
+ type: string
+ type: object
+ seccompProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
+ windowsOptions:
+ properties:
+ gmsaCredentialSpec:
+ type: string
+ gmsaCredentialSpecName:
+ type: string
+ hostProcess:
+ type: boolean
+ runAsUserName:
+ type: string
+ type: object
+ type: object
+ startupProbe:
+ properties:
+ exec:
+ properties:
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ format: int32
+ type: integer
+ grpc:
+ properties:
+ port:
+ format: int32
+ type: integer
+ service:
+ default: ""
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ properties:
+ host:
+ type: string
+ httpHeaders:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ scheme:
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ format: int32
+ type: integer
+ periodSeconds:
+ format: int32
+ type: integer
+ successThreshold:
+ format: int32
+ type: integer
+ tcpSocket:
+ properties:
+ host:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ format: int64
+ type: integer
+ timeoutSeconds:
+ format: int32
+ type: integer
+ type: object
+ stdin:
+ type: boolean
+ stdinOnce:
+ type: boolean
+ terminationMessagePath:
+ type: string
+ terminationMessagePolicy:
+ type: string
+ tty:
+ type: boolean
+ volumeDevices:
+ items:
+ properties:
+ devicePath:
+ type: string
+ name:
+ type: string
+ required:
+ - devicePath
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
+ volumeMounts:
+ items:
+ properties:
+ mountPath:
+ type: string
+ mountPropagation:
+ type: string
+ name:
+ type: string
+ readOnly:
+ type: boolean
+ recursiveReadOnly:
+ type: string
+ subPath:
+ type: string
+ subPathExpr:
+ type: string
+ required:
+ - mountPath
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
+ workingDir:
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ hostIPC:
+ type: boolean
+ imagePullSecrets:
+ items:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ type: array
+ labels:
+ additionalProperties:
+ type: string
+ type: object
+ nodeSelector:
+ additionalProperties:
+ type: string
+ type: object
+ pipelineParallelSize:
+ type: integer
+ tensorParallelSize:
+ type: integer
+ tolerations:
+ items:
+ properties:
+ effect:
+ type: string
+ key:
+ type: string
+ operator:
+ type: string
+ tolerationSeconds:
+ format: int64
+ type: integer
+ value:
+ type: string
+ type: object
+ type: array
+ volumes:
+ items:
+ properties:
+ awsElasticBlockStore:
+ properties:
+ fsType:
+ type: string
+ partition:
+ format: int32
+ type: integer
+ readOnly:
+ type: boolean
+ volumeID:
+ type: string
+ required:
+ - volumeID
+ type: object
+ azureDisk:
+ properties:
+ cachingMode:
+ type: string
+ diskName:
+ type: string
+ diskURI:
+ type: string
+ fsType:
+ default: ext4
+ type: string
+ kind:
+ type: string
+ readOnly:
+ default: false
+ type: boolean
+ required:
+ - diskName
+ - diskURI
+ type: object
+ azureFile:
+ properties:
+ readOnly:
+ type: boolean
+ secretName:
+ type: string
+ shareName:
+ type: string
+ required:
+ - secretName
+ - shareName
+ type: object
+ cephfs:
+ properties:
+ monitors:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ readOnly:
+ type: boolean
+ secretFile:
+ type: string
+ secretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ user:
+ type: string
+ required:
+ - monitors
+ type: object
+ cinder:
+ properties:
+ fsType:
+ type: string
+ readOnly:
+ type: boolean
+ secretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ volumeID:
+ type: string
+ required:
+ - volumeID
+ type: object
+ configMap:
+ properties:
+ defaultMode:
+ format: int32
+ type: integer
+ items:
+ items:
+ properties:
+ key:
+ type: string
+ mode:
+ format: int32
+ type: integer
+ path:
+ type: string
+ required:
+ - key
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ csi:
+ properties:
+ driver:
+ type: string
+ fsType:
+ type: string
+ nodePublishSecretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ readOnly:
+ type: boolean
+ volumeAttributes:
+ additionalProperties:
+ type: string
+ type: object
+ required:
+ - driver
+ type: object
+ downwardAPI:
+ properties:
+ defaultMode:
+ format: int32
+ type: integer
+ items:
+ items:
+ properties:
+ fieldRef:
+ properties:
+ apiVersion:
+ type: string
+ fieldPath:
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ mode:
+ format: int32
+ type: integer
+ path:
+ type: string
+ resourceFieldRef:
+ properties:
+ containerName:
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ required:
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ emptyDir:
+ properties:
+ medium:
+ type: string
+ sizeLimit:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ ephemeral:
+ properties:
+ volumeClaimTemplate:
+ properties:
+ metadata:
+ type: object
+ spec:
+ properties:
+ accessModes:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ dataSource:
+ properties:
+ apiGroup:
+ type: string
+ kind:
+ type: string
+ name:
+ type: string
+ required:
+ - kind
+ - name
+ type: object
+ x-kubernetes-map-type: atomic
+ dataSourceRef:
+ properties:
+ apiGroup:
+ type: string
+ kind:
+ type: string
+ name:
+ type: string
+ namespace:
+ type: string
+ required:
+ - kind
+ - name
+ type: object
+ resources:
+ properties:
+ limits:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ requests:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ type: object
+ selector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ storageClassName:
+ type: string
+ volumeAttributesClassName:
+ type: string
+ volumeMode:
+ type: string
+ volumeName:
+ type: string
+ type: object
+ required:
+ - spec
+ type: object
+ type: object
+ fc:
+ properties:
+ fsType:
+ type: string
+ lun:
+ format: int32
+ type: integer
+ readOnly:
+ type: boolean
+ targetWWNs:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ wwids:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ flexVolume:
+ properties:
+ driver:
+ type: string
+ fsType:
+ type: string
+ options:
+ additionalProperties:
+ type: string
+ type: object
+ readOnly:
+ type: boolean
+ secretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ required:
+ - driver
+ type: object
+ flocker:
+ properties:
+ datasetName:
+ type: string
+ datasetUUID:
+ type: string
+ type: object
+ gcePersistentDisk:
+ properties:
+ fsType:
+ type: string
+ partition:
+ format: int32
+ type: integer
+ pdName:
+ type: string
+ readOnly:
+ type: boolean
+ required:
+ - pdName
+ type: object
+ gitRepo:
+ properties:
+ directory:
+ type: string
+ repository:
+ type: string
+ revision:
+ type: string
+ required:
+ - repository
+ type: object
+ glusterfs:
+ properties:
+ endpoints:
+ type: string
+ path:
+ type: string
+ readOnly:
+ type: boolean
+ required:
+ - endpoints
+ - path
+ type: object
+ hostPath:
+ properties:
+ path:
+ type: string
+ type:
+ type: string
+ required:
+ - path
+ type: object
+ image:
+ properties:
+ pullPolicy:
+ type: string
+ reference:
+ type: string
+ type: object
+ iscsi:
+ properties:
+ chapAuthDiscovery:
+ type: boolean
+ chapAuthSession:
+ type: boolean
+ fsType:
+ type: string
+ initiatorName:
+ type: string
+ iqn:
+ type: string
+ iscsiInterface:
+ default: default
+ type: string
+ lun:
+ format: int32
+ type: integer
+ portals:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ readOnly:
+ type: boolean
+ secretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ targetPortal:
+ type: string
+ required:
+ - iqn
+ - lun
+ - targetPortal
+ type: object
+ name:
+ type: string
+ nfs:
+ properties:
+ path:
+ type: string
+ readOnly:
+ type: boolean
+ server:
+ type: string
+ required:
+ - path
+ - server
+ type: object
+ persistentVolumeClaim:
+ properties:
+ claimName:
+ type: string
+ readOnly:
+ type: boolean
+ required:
+ - claimName
+ type: object
+ photonPersistentDisk:
+ properties:
+ fsType:
+ type: string
+ pdID:
+ type: string
+ required:
+ - pdID
+ type: object
+ portworxVolume:
+ properties:
+ fsType:
+ type: string
+ readOnly:
+ type: boolean
+ volumeID:
+ type: string
+ required:
+ - volumeID
+ type: object
+ projected:
+ properties:
+ defaultMode:
+ format: int32
+ type: integer
+ sources:
+ items:
+ properties:
+ clusterTrustBundle:
+ properties:
+ labelSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ name:
+ type: string
+ optional:
+ type: boolean
+ path:
+ type: string
+ signerName:
+ type: string
+ required:
+ - path
+ type: object
+ configMap:
+ properties:
+ items:
+ items:
+ properties:
+ key:
+ type: string
+ mode:
+ format: int32
+ type: integer
+ path:
+ type: string
+ required:
+ - key
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ downwardAPI:
+ properties:
+ items:
+ items:
+ properties:
+ fieldRef:
+ properties:
+ apiVersion:
+ type: string
+ fieldPath:
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ mode:
+ format: int32
+ type: integer
+ path:
+ type: string
+ resourceFieldRef:
+ properties:
+ containerName:
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ required:
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ secret:
+ properties:
+ items:
+ items:
+ properties:
+ key:
+ type: string
+ mode:
+ format: int32
+ type: integer
+ path:
+ type: string
+ required:
+ - key
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ serviceAccountToken:
+ properties:
+ audience:
+ type: string
+ expirationSeconds:
+ format: int64
+ type: integer
+ path:
+ type: string
+ required:
+ - path
+ type: object
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ quobyte:
+ properties:
+ group:
+ type: string
+ readOnly:
+ type: boolean
+ registry:
+ type: string
+ tenant:
+ type: string
+ user:
+ type: string
+ volume:
+ type: string
+ required:
+ - registry
+ - volume
+ type: object
+ rbd:
+ properties:
+ fsType:
+ type: string
+ image:
+ type: string
+ keyring:
+ default: /etc/ceph/keyring
+ type: string
+ monitors:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ pool:
+ default: rbd
+ type: string
+ readOnly:
+ type: boolean
+ secretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ user:
+ default: admin
+ type: string
+ required:
+ - image
+ - monitors
+ type: object
+ scaleIO:
+ properties:
+ fsType:
+ default: xfs
+ type: string
+ gateway:
+ type: string
+ protectionDomain:
+ type: string
+ readOnly:
+ type: boolean
+ secretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ sslEnabled:
+ type: boolean
+ storageMode:
+ default: ThinProvisioned
+ type: string
+ storagePool:
+ type: string
+ system:
+ type: string
+ volumeName:
+ type: string
+ required:
+ - gateway
+ - secretRef
+ - system
+ type: object
+ secret:
+ properties:
+ defaultMode:
+ format: int32
+ type: integer
+ items:
+ items:
+ properties:
+ key:
+ type: string
+ mode:
+ format: int32
+ type: integer
+ path:
+ type: string
+ required:
+ - key
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ optional:
+ type: boolean
+ secretName:
+ type: string
+ type: object
+ storageos:
+ properties:
+ fsType:
+ type: string
+ readOnly:
+ type: boolean
+ secretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ volumeName:
+ type: string
+ volumeNamespace:
+ type: string
+ type: object
+ vsphereVolume:
+ properties:
+ fsType:
+ type: string
+ storagePolicyID:
+ type: string
+ storagePolicyName:
+ type: string
+ volumePath:
+ type: string
+ required:
+ - volumePath
+ type: object
+ required:
+ - name
+ type: object
+ type: array
+ required:
+ - containers
+ type: object
required:
- containers
type: object
@@ -1906,7 +4063,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
- controller-gen.kubebuilder.io/version: v0.12.0
+ controller-gen.kubebuilder.io/version: v0.16.2
name: clusterstoragecontainers.serving.kserve.io
spec:
group: serving.kserve.io
@@ -1937,10 +4094,12 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
items:
properties:
@@ -1955,6 +4114,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -1993,6 +4153,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -2005,12 +4166,16 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
items:
properties:
configMapRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -2021,6 +4186,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -2028,6 +4194,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
type: string
imagePullPolicy:
@@ -2042,6 +4209,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -2059,6 +4227,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -2071,6 +4240,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -2092,6 +4269,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -2109,6 +4287,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -2121,6 +4300,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -2143,6 +4330,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -2153,6 +4341,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -2173,6 +4362,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -2247,6 +4437,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -2257,6 +4448,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -2277,6 +4469,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -2337,6 +4530,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -2367,16 +4562,27 @@ spec:
properties:
allowPrivilegeEscalation:
type: boolean
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
capabilities:
properties:
add:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
type: boolean
@@ -2432,6 +4638,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -2442,6 +4649,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -2462,6 +4670,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -2524,6 +4733,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
items:
properties:
@@ -2535,6 +4747,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -2544,6 +4758,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
type: string
required:
@@ -2558,6 +4775,9 @@ spec:
type: string
type: object
type: array
+ workloadType:
+ default: initContainer
+ type: string
required:
- container
- supportedUriFormats
@@ -2570,7 +4790,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
- controller-gen.kubebuilder.io/version: v0.12.0
+ controller-gen.kubebuilder.io/version: v0.16.2
name: inferencegraphs.serving.kserve.io
spec:
group: serving.kserve.io
@@ -2625,11 +4845,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchFields:
items:
properties:
@@ -2641,11 +4863,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
x-kubernetes-map-type: atomic
weight:
@@ -2656,6 +4880,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
properties:
nodeSelectorTerms:
@@ -2672,11 +4897,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchFields:
items:
properties:
@@ -2688,14 +4915,17 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
x-kubernetes-map-type: atomic
type: array
+ x-kubernetes-list-type: atomic
required:
- nodeSelectorTerms
type: object
@@ -2721,17 +4951,29 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
properties:
matchExpressions:
@@ -2745,11 +4987,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -2760,6 +5004,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
type: string
required:
@@ -2773,6 +5018,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
items:
properties:
@@ -2789,17 +5035,29 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
properties:
matchExpressions:
@@ -2813,11 +5071,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -2828,12 +5088,14 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
type: string
required:
- topologyKey
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
podAntiAffinity:
properties:
@@ -2855,17 +5117,29 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
properties:
matchExpressions:
@@ -2879,11 +5153,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -2894,6 +5170,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
type: string
required:
@@ -2907,6 +5184,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
items:
properties:
@@ -2923,17 +5201,29 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
properties:
matchExpressions:
@@ -2947,11 +5237,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -2962,18 +5254,28 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
type: string
required:
- topologyKey
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
type: object
maxReplicas:
+ format: int32
type: integer
minReplicas:
+ format: int32
type: integer
+ nodeName:
+ type: string
+ nodeSelector:
+ additionalProperties:
+ type: string
+ type: object
nodes:
additionalProperties:
properties:
@@ -3020,6 +5322,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -3052,10 +5356,29 @@ spec:
- rps
type: string
scaleTarget:
+ format: int32
type: integer
+ serviceAccountName:
+ type: string
timeout:
format: int64
type: integer
+ tolerations:
+ items:
+ properties:
+ effect:
+ type: string
+ key:
+ type: string
+ operator:
+ type: string
+ tolerationSeconds:
+ format: int64
+ type: integer
+ value:
+ type: string
+ type: object
+ type: array
required:
- nodes
type: object
@@ -3102,7 +5425,7 @@ kind: CustomResourceDefinition
metadata:
annotations:
cert-manager.io/inject-ca-from: kserve/serving-cert
- controller-gen.kubebuilder.io/version: v0.12.0
+ controller-gen.kubebuilder.io/version: v0.16.2
name: inferenceservices.serving.kserve.io
spec:
group: serving.kserve.io
@@ -3174,11 +5497,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchFields:
items:
properties:
@@ -3190,11 +5515,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
x-kubernetes-map-type: atomic
weight:
@@ -3205,6 +5532,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
properties:
nodeSelectorTerms:
@@ -3221,11 +5549,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchFields:
items:
properties:
@@ -3237,14 +5567,17 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
x-kubernetes-map-type: atomic
type: array
+ x-kubernetes-list-type: atomic
required:
- nodeSelectorTerms
type: object
@@ -3270,17 +5603,29 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
properties:
matchExpressions:
@@ -3294,11 +5639,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -3309,6 +5656,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
type: string
required:
@@ -3322,6 +5670,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
items:
properties:
@@ -3338,17 +5687,29 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
properties:
matchExpressions:
@@ -3362,11 +5723,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -3377,12 +5740,14 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
type: string
required:
- topologyKey
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
podAntiAffinity:
properties:
@@ -3404,17 +5769,29 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
properties:
matchExpressions:
@@ -3428,11 +5805,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -3443,6 +5822,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
type: string
required:
@@ -3456,6 +5836,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
items:
properties:
@@ -3472,17 +5853,29 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
properties:
matchExpressions:
@@ -3496,11 +5889,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -3511,12 +5906,14 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
type: string
required:
- topologyKey
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
type: object
annotations:
@@ -3529,10 +5926,12 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
config:
additionalProperties:
type: string
@@ -3551,6 +5950,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -3589,6 +5989,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -3601,12 +6002,16 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
items:
properties:
configMapRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -3617,6 +6022,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -3624,6 +6030,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
type: string
imagePullPolicy:
@@ -3638,6 +6045,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -3655,6 +6063,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -3667,6 +6076,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -3688,6 +6105,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -3705,6 +6123,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -3717,6 +6136,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -3739,6 +6166,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -3749,6 +6177,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -3769,6 +6198,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -3839,6 +6269,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -3849,6 +6280,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -3869,6 +6301,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -3925,6 +6358,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -3957,16 +6392,27 @@ spec:
properties:
allowPrivilegeEscalation:
type: boolean
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
capabilities:
properties:
add:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
type: boolean
@@ -4022,6 +6468,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -4032,6 +6479,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -4052,6 +6500,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -4131,6 +6580,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
items:
properties:
@@ -4142,6 +6594,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -4151,9 +6605,154 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
type: string
type: object
+ autoScaling:
+ properties:
+ metrics:
+ items:
+ properties:
+ external:
+ properties:
+ metric:
+ properties:
+ backend:
+ enum:
+ - prometheus
+ - graphite
+ type: string
+ namespace:
+ type: string
+ query:
+ type: string
+ serverAddress:
+ type: string
+ type: object
+ target:
+ properties:
+ averageUtilization:
+ format: int32
+ type: integer
+ averageValue:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type:
+ enum:
+ - Utilization
+ - Value
+ - AverageValue
+ type: string
+ value:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ required:
+ - metric
+ - target
+ type: object
+ podmetric:
+ properties:
+ metric:
+ properties:
+ backend:
+ enum:
+ - opentelemetry
+ type: string
+ metricNames:
+ items:
+ type: string
+ type: array
+ operationOverTime:
+ type: string
+ query:
+ type: string
+ serverAddress:
+ type: string
+ type: object
+ target:
+ properties:
+ averageUtilization:
+ format: int32
+ type: integer
+ averageValue:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type:
+ enum:
+ - Utilization
+ - Value
+ - AverageValue
+ type: string
+ value:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ required:
+ - metric
+ - target
+ type: object
+ resource:
+ properties:
+ name:
+ enum:
+ - cpu
+ - memory
+ type: string
+ target:
+ properties:
+ averageUtilization:
+ format: int32
+ type: integer
+ averageValue:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type:
+ enum:
+ - Utilization
+ - Value
+ - AverageValue
+ type: string
+ value:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ required:
+ - name
+ - target
+ type: object
+ type:
+ enum:
+ - Resource
+ - External
+ - PodMetric
+ type: string
+ required:
+ - type
+ type: object
+ type: array
+ type: object
automountServiceAccountToken:
type: boolean
batcher:
@@ -4178,10 +6777,12 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
items:
properties:
@@ -4196,6 +6797,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -4234,6 +6836,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -4246,12 +6849,16 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
items:
properties:
configMapRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -4262,6 +6869,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -4269,6 +6877,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
type: string
imagePullPolicy:
@@ -4283,6 +6892,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -4300,6 +6910,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -4312,6 +6923,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -4333,6 +6952,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -4350,6 +6970,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -4362,6 +6983,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -4384,6 +7013,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -4394,6 +7024,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -4414,6 +7045,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -4486,6 +7118,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -4496,6 +7129,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -4516,6 +7150,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -4574,6 +7209,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -4604,16 +7241,27 @@ spec:
properties:
allowPrivilegeEscalation:
type: boolean
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
capabilities:
properties:
add:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
type: boolean
@@ -4669,6 +7317,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -4679,6 +7328,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -4699,6 +7349,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -4761,6 +7412,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
items:
properties:
@@ -4772,6 +7426,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -4781,6 +7437,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
type: string
required:
@@ -4811,6 +7470,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
options:
items:
properties:
@@ -4820,10 +7480,12 @@ spec:
type: string
type: object
type: array
+ x-kubernetes-list-type: atomic
searches:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
dnsPolicy:
type: string
@@ -4836,8 +7498,11 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
ip:
type: string
+ required:
+ - ip
type: object
type: array
hostIPC:
@@ -4854,6 +7519,7 @@ spec:
items:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -4865,10 +7531,12 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
items:
properties:
@@ -4883,6 +7551,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -4921,6 +7590,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -4933,12 +7603,16 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
items:
properties:
configMapRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -4949,6 +7623,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -4956,6 +7631,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
type: string
imagePullPolicy:
@@ -4970,6 +7646,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -4987,6 +7664,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -4999,6 +7677,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -5020,6 +7706,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -5037,6 +7724,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -5049,6 +7737,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -5071,6 +7767,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -5081,6 +7778,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -5101,6 +7799,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -5175,6 +7874,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -5185,6 +7885,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -5205,6 +7906,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -5265,6 +7967,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -5295,16 +7999,27 @@ spec:
properties:
allowPrivilegeEscalation:
type: boolean
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
capabilities:
properties:
add:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
type: boolean
@@ -5360,6 +8075,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -5370,6 +8086,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -5390,6 +8107,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -5452,6 +8170,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
items:
properties:
@@ -5463,6 +8184,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -5472,6 +8195,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
type: string
required:
@@ -5484,6 +8210,10 @@ spec:
type: object
logger:
properties:
+ metadataHeaders:
+ items:
+ type: string
+ type: array
mode:
enum:
- all
@@ -5494,8 +8224,10 @@ spec:
type: string
type: object
maxReplicas:
+ format: int32
type: integer
minReplicas:
+ format: int32
type: integer
nodeName:
type: string
@@ -5538,13 +8270,10 @@ spec:
properties:
name:
type: string
- source:
- properties:
- resourceClaimName:
- type: string
- resourceClaimTemplateName:
- type: string
- type: object
+ resourceClaimName:
+ type: string
+ resourceClaimTemplateName:
+ type: string
required:
- name
type: object
@@ -5552,6 +8281,39 @@ spec:
x-kubernetes-list-map-keys:
- name
x-kubernetes-list-type: map
+ resources:
+ properties:
+ claims:
+ items:
+ properties:
+ name:
+ type: string
+ request:
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ limits:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ requests:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ type: object
restartPolicy:
type: string
runtimeClassName:
@@ -5563,7 +8325,14 @@ spec:
- concurrency
- rps
type: string
+ scaleMetricType:
+ enum:
+ - Utilization
+ - Value
+ - AverageValue
+ type: string
scaleTarget:
+ format: int32
type: integer
schedulerName:
type: string
@@ -5581,6 +8350,15 @@ spec:
x-kubernetes-list-type: map
securityContext:
properties:
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
fsGroup:
format: int64
type: integer
@@ -5594,6 +8372,8 @@ spec:
runAsUser:
format: int64
type: integer
+ seLinuxChangePolicy:
+ type: string
seLinuxOptions:
properties:
level:
@@ -5619,6 +8399,9 @@ spec:
format: int64
type: integer
type: array
+ x-kubernetes-list-type: atomic
+ supplementalGroupsPolicy:
+ type: string
sysctls:
items:
properties:
@@ -5631,6 +8414,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
windowsOptions:
properties:
gmsaCredentialSpec:
@@ -5691,11 +8475,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -5757,10 +8543,12 @@ spec:
diskURI:
type: string
fsType:
+ default: ext4
type: string
kind:
type: string
readOnly:
+ default: false
type: boolean
required:
- diskName
@@ -5784,6 +8572,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
readOnly:
@@ -5793,6 +8582,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -5810,6 +8600,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -5838,7 +8629,9 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
name:
+ default: ""
type: string
optional:
type: boolean
@@ -5853,6 +8646,7 @@ spec:
nodePublishSecretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -5908,6 +8702,7 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
emptyDir:
properties:
@@ -5932,6 +8727,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
dataSource:
properties:
apiGroup:
@@ -5961,18 +8757,6 @@ spec:
type: object
resources:
properties:
- claims:
- items:
- properties:
- name:
- type: string
- required:
- - name
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - name
- x-kubernetes-list-type: map
limits:
additionalProperties:
anyOf:
@@ -6003,11 +8787,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -6016,6 +8802,8 @@ spec:
x-kubernetes-map-type: atomic
storageClassName:
type: string
+ volumeAttributesClassName:
+ type: string
volumeMode:
type: string
volumeName:
@@ -6038,10 +8826,12 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
wwids:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
flexVolume:
properties:
@@ -6058,6 +8848,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -6117,6 +8908,13 @@ spec:
required:
- path
type: object
+ image:
+ properties:
+ pullPolicy:
+ type: string
+ reference:
+ type: string
+ type: object
iscsi:
properties:
chapAuthDiscovery:
@@ -6130,6 +8928,7 @@ spec:
iqn:
type: string
iscsiInterface:
+ default: default
type: string
lun:
format: int32
@@ -6138,11 +8937,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
readOnly:
type: boolean
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -6204,6 +9005,45 @@ spec:
sources:
items:
properties:
+ clusterTrustBundle:
+ properties:
+ labelSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ name:
+ type: string
+ optional:
+ type: boolean
+ path:
+ type: string
+ signerName:
+ type: string
+ required:
+ - path
+ type: object
configMap:
properties:
items:
@@ -6221,7 +9061,9 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
name:
+ default: ""
type: string
optional:
type: boolean
@@ -6267,6 +9109,7 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
secret:
properties:
@@ -6285,7 +9128,9 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
name:
+ default: ""
type: string
optional:
type: boolean
@@ -6305,6 +9150,7 @@ spec:
type: object
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
quobyte:
properties:
@@ -6331,22 +9177,27 @@ spec:
image:
type: string
keyring:
+ default: /etc/ceph/keyring
type: string
monitors:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
pool:
+ default: rbd
type: string
readOnly:
type: boolean
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
user:
+ default: admin
type: string
required:
- image
@@ -6355,6 +9206,7 @@ spec:
scaleIO:
properties:
fsType:
+ default: xfs
type: string
gateway:
type: string
@@ -6365,12 +9217,14 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
sslEnabled:
type: boolean
storageMode:
+ default: ThinProvisioned
type: string
storagePool:
type: string
@@ -6403,6 +9257,7 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
optional:
type: boolean
secretName:
@@ -6417,6 +9272,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -6468,11 +9324,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchFields:
items:
properties:
@@ -6484,11 +9342,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
x-kubernetes-map-type: atomic
weight:
@@ -6499,6 +9359,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
properties:
nodeSelectorTerms:
@@ -6515,11 +9376,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchFields:
items:
properties:
@@ -6531,14 +9394,17 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
x-kubernetes-map-type: atomic
type: array
+ x-kubernetes-list-type: atomic
required:
- nodeSelectorTerms
type: object
@@ -6564,17 +9430,29 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
properties:
matchExpressions:
@@ -6588,11 +9466,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -6603,6 +9483,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
type: string
required:
@@ -6616,6 +9497,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
items:
properties:
@@ -6632,17 +9514,29 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
properties:
matchExpressions:
@@ -6656,11 +9550,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -6671,12 +9567,14 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
type: string
required:
- topologyKey
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
podAntiAffinity:
properties:
@@ -6698,17 +9596,29 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
properties:
matchExpressions:
@@ -6722,11 +9632,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -6737,6 +9649,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
type: string
required:
@@ -6750,6 +9663,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
items:
properties:
@@ -6766,17 +9680,29 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
properties:
matchExpressions:
@@ -6790,11 +9716,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -6805,18 +9733,162 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
type: string
required:
- topologyKey
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
type: object
annotations:
additionalProperties:
type: string
type: object
+ autoScaling:
+ properties:
+ metrics:
+ items:
+ properties:
+ external:
+ properties:
+ metric:
+ properties:
+ backend:
+ enum:
+ - prometheus
+ - graphite
+ type: string
+ namespace:
+ type: string
+ query:
+ type: string
+ serverAddress:
+ type: string
+ type: object
+ target:
+ properties:
+ averageUtilization:
+ format: int32
+ type: integer
+ averageValue:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type:
+ enum:
+ - Utilization
+ - Value
+ - AverageValue
+ type: string
+ value:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ required:
+ - metric
+ - target
+ type: object
+ podmetric:
+ properties:
+ metric:
+ properties:
+ backend:
+ enum:
+ - opentelemetry
+ type: string
+ metricNames:
+ items:
+ type: string
+ type: array
+ operationOverTime:
+ type: string
+ query:
+ type: string
+ serverAddress:
+ type: string
+ type: object
+ target:
+ properties:
+ averageUtilization:
+ format: int32
+ type: integer
+ averageValue:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type:
+ enum:
+ - Utilization
+ - Value
+ - AverageValue
+ type: string
+ value:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ required:
+ - metric
+ - target
+ type: object
+ resource:
+ properties:
+ name:
+ enum:
+ - cpu
+ - memory
+ type: string
+ target:
+ properties:
+ averageUtilization:
+ format: int32
+ type: integer
+ averageValue:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type:
+ enum:
+ - Utilization
+ - Value
+ - AverageValue
+ type: string
+ value:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ required:
+ - name
+ - target
+ type: object
+ type:
+ enum:
+ - Resource
+ - External
+ - PodMetric
+ type: string
+ required:
+ - type
+ type: object
+ type: array
+ type: object
automountServiceAccountToken:
type: boolean
batcher:
@@ -6841,10 +9913,12 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
items:
properties:
@@ -6859,6 +9933,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -6897,6 +9972,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -6909,12 +9985,16 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
items:
properties:
configMapRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -6925,6 +10005,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -6932,6 +10013,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
type: string
imagePullPolicy:
@@ -6946,6 +10028,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -6963,6 +10046,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -6975,6 +10059,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -6996,6 +10088,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -7013,6 +10106,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -7025,6 +10119,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -7047,6 +10149,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -7057,6 +10160,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -7077,6 +10181,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -7149,6 +10254,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -7159,6 +10265,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -7179,6 +10286,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -7237,6 +10345,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -7267,16 +10377,27 @@ spec:
properties:
allowPrivilegeEscalation:
type: boolean
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
capabilities:
properties:
add:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
type: boolean
@@ -7332,6 +10453,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -7342,6 +10464,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -7362,6 +10485,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -7424,6 +10548,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
items:
properties:
@@ -7435,6 +10562,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -7444,6 +10573,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
type: string
required:
@@ -7474,6 +10606,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
options:
items:
properties:
@@ -7483,10 +10616,12 @@ spec:
type: string
type: object
type: array
+ x-kubernetes-list-type: atomic
searches:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
dnsPolicy:
type: string
@@ -7499,8 +10634,11 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
ip:
type: string
+ required:
+ - ip
type: object
type: array
hostIPC:
@@ -7519,10 +10657,12 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
items:
properties:
@@ -7537,6 +10677,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -7575,6 +10716,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -7587,12 +10729,16 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
items:
properties:
configMapRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -7603,6 +10749,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -7610,6 +10757,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
type: string
imagePullPolicy:
@@ -7624,6 +10772,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -7641,6 +10790,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -7653,6 +10803,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -7674,6 +10832,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -7691,6 +10850,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -7703,6 +10863,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -7725,6 +10893,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -7735,6 +10904,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -7755,6 +10925,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -7827,6 +10998,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -7837,6 +11009,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -7857,6 +11030,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -7913,6 +11087,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -7945,16 +11121,27 @@ spec:
properties:
allowPrivilegeEscalation:
type: boolean
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
capabilities:
properties:
add:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
type: boolean
@@ -8010,6 +11197,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -8020,6 +11208,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -8040,6 +11229,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -8117,6 +11307,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
items:
properties:
@@ -8128,6 +11321,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -8137,6 +11332,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
type: string
type: object
@@ -8144,6 +11342,7 @@ spec:
items:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -8155,10 +11354,12 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
items:
properties:
@@ -8173,6 +11374,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -8211,6 +11413,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -8223,12 +11426,16 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
items:
properties:
configMapRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -8239,6 +11446,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -8246,6 +11454,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
type: string
imagePullPolicy:
@@ -8260,6 +11469,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -8277,6 +11487,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -8289,6 +11500,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -8310,6 +11529,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -8327,6 +11547,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -8339,6 +11560,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -8361,6 +11590,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -8371,6 +11601,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -8391,6 +11622,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -8465,6 +11697,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -8475,6 +11708,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -8495,6 +11729,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -8555,6 +11790,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -8585,16 +11822,27 @@ spec:
properties:
allowPrivilegeEscalation:
type: boolean
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
capabilities:
properties:
add:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
type: boolean
@@ -8650,6 +11898,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -8660,6 +11909,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -8680,6 +11930,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -8742,6 +11993,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
items:
properties:
@@ -8753,6 +12007,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -8762,6 +12018,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
type: string
required:
@@ -8778,10 +12037,12 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
items:
properties:
@@ -8796,6 +12057,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -8834,6 +12096,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -8846,12 +12109,16 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
items:
properties:
configMapRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -8862,6 +12129,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -8869,6 +12137,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
type: string
imagePullPolicy:
@@ -8883,6 +12152,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -8900,6 +12170,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -8912,6 +12183,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -8933,6 +12212,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -8950,6 +12230,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -8962,6 +12243,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -8984,6 +12273,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -8994,6 +12284,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -9014,6 +12305,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -9086,6 +12378,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -9096,6 +12389,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -9116,6 +12410,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -9172,6 +12467,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -9204,16 +12501,27 @@ spec:
properties:
allowPrivilegeEscalation:
type: boolean
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
capabilities:
properties:
add:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
type: boolean
@@ -9269,6 +12577,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -9279,6 +12588,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -9299,6 +12609,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -9376,6 +12687,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
items:
properties:
@@ -9387,6 +12701,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -9396,11 +12712,18 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
type: string
type: object
logger:
properties:
+ metadataHeaders:
+ items:
+ type: string
+ type: array
mode:
enum:
- all
@@ -9411,8 +12734,10 @@ spec:
type: string
type: object
maxReplicas:
+ format: int32
type: integer
minReplicas:
+ format: int32
type: integer
model:
properties:
@@ -9420,10 +12745,12 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
items:
properties:
@@ -9438,6 +12765,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -9476,6 +12804,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -9488,12 +12817,16 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
items:
properties:
configMapRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -9504,6 +12837,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -9511,6 +12845,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
type: string
imagePullPolicy:
@@ -9525,6 +12860,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -9542,6 +12878,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -9554,6 +12891,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -9575,6 +12920,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -9592,6 +12938,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -9604,6 +12951,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -9626,6 +12981,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -9636,6 +12992,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -9656,6 +13013,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -9737,6 +13095,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -9747,6 +13106,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -9767,6 +13127,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -9823,6 +13184,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -9857,16 +13220,27 @@ spec:
properties:
allowPrivilegeEscalation:
type: boolean
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
capabilities:
properties:
add:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
type: boolean
@@ -9922,6 +13296,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -9932,6 +13307,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -9952,6 +13328,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -10029,6 +13406,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
items:
properties:
@@ -10040,6 +13420,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -10049,6 +13431,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
type: string
type: object
@@ -10065,10 +13450,12 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
items:
properties:
@@ -10083,6 +13470,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -10121,6 +13509,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -10133,12 +13522,16 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
items:
properties:
configMapRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -10149,6 +13542,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -10156,6 +13550,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
type: string
imagePullPolicy:
@@ -10170,6 +13565,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -10187,6 +13583,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -10199,6 +13596,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -10220,6 +13625,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -10237,6 +13643,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -10249,6 +13656,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -10271,6 +13686,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -10281,6 +13697,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -10301,6 +13718,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -10373,6 +13791,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -10383,6 +13802,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -10403,6 +13823,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -10459,6 +13880,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -10491,16 +13914,27 @@ spec:
properties:
allowPrivilegeEscalation:
type: boolean
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
capabilities:
properties:
add:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
type: boolean
@@ -10556,6 +13990,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -10566,6 +14001,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -10586,6 +14022,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -10663,6 +14100,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
items:
properties:
@@ -10674,6 +14114,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -10683,6 +14125,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
type: string
type: object
@@ -10705,10 +14150,12 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
items:
properties:
@@ -10723,6 +14170,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -10761,6 +14209,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -10773,12 +14222,16 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
items:
properties:
configMapRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -10789,6 +14242,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -10796,6 +14250,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
type: string
imagePullPolicy:
@@ -10810,6 +14265,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -10827,6 +14283,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -10839,6 +14296,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -10860,6 +14325,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -10877,6 +14343,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -10889,6 +14356,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -10911,6 +14386,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -10921,6 +14397,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -10941,6 +14418,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -11013,6 +14491,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -11023,6 +14502,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -11043,6 +14523,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -11099,6 +14580,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -11131,16 +14614,27 @@ spec:
properties:
allowPrivilegeEscalation:
type: boolean
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
capabilities:
properties:
add:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
type: boolean
@@ -11196,6 +14690,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -11206,6 +14701,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -11226,6 +14722,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -11303,6 +14800,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
items:
properties:
@@ -11314,6 +14814,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -11323,6 +14825,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
type: string
type: object
@@ -11332,10 +14837,12 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
items:
properties:
@@ -11350,6 +14857,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -11388,6 +14896,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -11400,12 +14909,16 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
items:
properties:
configMapRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -11416,6 +14929,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -11423,6 +14937,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
type: string
imagePullPolicy:
@@ -11437,6 +14952,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -11454,6 +14970,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -11466,6 +14983,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -11487,6 +15012,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -11504,6 +15030,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -11516,6 +15043,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -11538,6 +15073,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -11548,6 +15084,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -11568,6 +15105,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -11640,6 +15178,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -11650,6 +15189,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -11670,6 +15210,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -11726,6 +15267,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -11758,16 +15301,27 @@ spec:
properties:
allowPrivilegeEscalation:
type: boolean
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
capabilities:
properties:
add:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
type: boolean
@@ -11823,6 +15377,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -11833,6 +15388,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -11853,6 +15409,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -11930,6 +15487,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
items:
properties:
@@ -11941,6 +15501,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -11950,6 +15512,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
type: string
type: object
@@ -11966,10 +15531,12 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
items:
properties:
@@ -11984,6 +15551,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -12022,6 +15590,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -12034,12 +15603,16 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
items:
properties:
configMapRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -12050,6 +15623,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -12057,6 +15631,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
type: string
imagePullPolicy:
@@ -12071,6 +15646,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -12088,6 +15664,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -12100,6 +15677,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -12121,6 +15706,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -12138,6 +15724,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -12150,6 +15737,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -12172,6 +15767,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -12182,6 +15778,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -12202,6 +15799,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -12274,6 +15872,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -12284,6 +15883,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -12304,6 +15904,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -12360,6 +15961,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -12392,16 +15995,27 @@ spec:
properties:
allowPrivilegeEscalation:
type: boolean
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
capabilities:
properties:
add:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
type: boolean
@@ -12457,6 +16071,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -12467,6 +16082,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -12487,6 +16103,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -12564,6 +16181,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
items:
properties:
@@ -12575,6 +16195,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -12584,6 +16206,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
type: string
type: object
@@ -12601,13 +16226,10 @@ spec:
properties:
name:
type: string
- source:
- properties:
- resourceClaimName:
- type: string
- resourceClaimTemplateName:
- type: string
- type: object
+ resourceClaimName:
+ type: string
+ resourceClaimTemplateName:
+ type: string
required:
- name
type: object
@@ -12615,6 +16237,39 @@ spec:
x-kubernetes-list-map-keys:
- name
x-kubernetes-list-type: map
+ resources:
+ properties:
+ claims:
+ items:
+ properties:
+ name:
+ type: string
+ request:
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ limits:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ requests:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ type: object
restartPolicy:
type: string
runtimeClassName:
@@ -12626,7 +16281,14 @@ spec:
- concurrency
- rps
type: string
+ scaleMetricType:
+ enum:
+ - Utilization
+ - Value
+ - AverageValue
+ type: string
scaleTarget:
+ format: int32
type: integer
schedulerName:
type: string
@@ -12644,6 +16306,15 @@ spec:
x-kubernetes-list-type: map
securityContext:
properties:
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
fsGroup:
format: int64
type: integer
@@ -12657,6 +16328,8 @@ spec:
runAsUser:
format: int64
type: integer
+ seLinuxChangePolicy:
+ type: string
seLinuxOptions:
properties:
level:
@@ -12682,6 +16355,9 @@ spec:
format: int64
type: integer
type: array
+ x-kubernetes-list-type: atomic
+ supplementalGroupsPolicy:
+ type: string
sysctls:
items:
properties:
@@ -12694,6 +16370,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
windowsOptions:
properties:
gmsaCredentialSpec:
@@ -12720,10 +16397,12 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
items:
properties:
@@ -12738,6 +16417,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -12776,6 +16456,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -12788,12 +16469,16 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
items:
properties:
configMapRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -12804,6 +16489,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -12811,6 +16497,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
type: string
imagePullPolicy:
@@ -12825,6 +16512,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -12842,6 +16530,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -12854,6 +16543,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -12875,6 +16572,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -12892,6 +16590,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -12904,6 +16603,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -12926,6 +16633,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -12936,6 +16644,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -12956,6 +16665,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -13028,6 +16738,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -13038,6 +16749,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -13058,6 +16770,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -13114,6 +16827,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -13146,16 +16861,27 @@ spec:
properties:
allowPrivilegeEscalation:
type: boolean
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
capabilities:
properties:
add:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
type: boolean
@@ -13211,6 +16937,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -13221,6 +16948,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -13241,6 +16969,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -13318,6 +17047,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
items:
properties:
@@ -13329,6 +17061,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -13338,6 +17072,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
type: string
type: object
@@ -13349,10 +17086,12 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
items:
properties:
@@ -13367,6 +17106,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -13405,6 +17145,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -13417,12 +17158,16 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
items:
properties:
configMapRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -13433,6 +17178,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -13440,6 +17186,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
type: string
imagePullPolicy:
@@ -13454,6 +17201,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -13471,6 +17219,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -13483,6 +17232,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -13504,6 +17261,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -13521,6 +17279,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -13533,6 +17292,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -13555,6 +17322,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -13565,6 +17333,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -13585,6 +17354,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -13657,6 +17427,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -13667,6 +17438,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -13687,6 +17459,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -13743,6 +17516,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -13775,16 +17550,27 @@ spec:
properties:
allowPrivilegeEscalation:
type: boolean
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
capabilities:
properties:
add:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
type: boolean
@@ -13840,6 +17626,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -13850,6 +17637,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -13870,6 +17658,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -13947,6 +17736,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
items:
properties:
@@ -13958,6 +17750,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -13967,6 +17761,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
type: string
type: object
@@ -14008,11 +17805,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -14054,10 +17853,12 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
items:
properties:
@@ -14072,6 +17873,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -14110,6 +17912,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -14122,12 +17925,16 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
items:
properties:
configMapRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -14138,6 +17945,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -14145,6 +17953,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
type: string
imagePullPolicy:
@@ -14159,6 +17968,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -14176,6 +17986,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -14188,6 +17999,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -14209,6 +18028,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -14226,6 +18046,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -14238,6 +18059,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -14260,6 +18089,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -14270,6 +18100,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -14290,6 +18121,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -14362,6 +18194,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -14372,6 +18205,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -14392,6 +18226,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -14448,6 +18283,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -14480,16 +18317,27 @@ spec:
properties:
allowPrivilegeEscalation:
type: boolean
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
capabilities:
properties:
add:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
type: boolean
@@ -14545,6 +18393,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -14555,6 +18404,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -14575,6 +18425,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -14652,6 +18503,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
items:
properties:
@@ -14663,6 +18517,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -14672,6 +18528,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
type: string
type: object
@@ -14701,10 +18560,12 @@ spec:
diskURI:
type: string
fsType:
+ default: ext4
type: string
kind:
type: string
readOnly:
+ default: false
type: boolean
required:
- diskName
@@ -14728,6 +18589,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
readOnly:
@@ -14737,6 +18599,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -14754,6 +18617,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -14782,7 +18646,9 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
name:
+ default: ""
type: string
optional:
type: boolean
@@ -14797,6 +18663,7 @@ spec:
nodePublishSecretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -14852,6 +18719,7 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
emptyDir:
properties:
@@ -14876,6 +18744,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
dataSource:
properties:
apiGroup:
@@ -14905,18 +18774,6 @@ spec:
type: object
resources:
properties:
- claims:
- items:
- properties:
- name:
- type: string
- required:
- - name
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - name
- x-kubernetes-list-type: map
limits:
additionalProperties:
anyOf:
@@ -14947,11 +18804,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -14960,6 +18819,8 @@ spec:
x-kubernetes-map-type: atomic
storageClassName:
type: string
+ volumeAttributesClassName:
+ type: string
volumeMode:
type: string
volumeName:
@@ -14982,10 +18843,12 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
wwids:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
flexVolume:
properties:
@@ -15002,6 +18865,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -15061,6 +18925,13 @@ spec:
required:
- path
type: object
+ image:
+ properties:
+ pullPolicy:
+ type: string
+ reference:
+ type: string
+ type: object
iscsi:
properties:
chapAuthDiscovery:
@@ -15074,6 +18945,7 @@ spec:
iqn:
type: string
iscsiInterface:
+ default: default
type: string
lun:
format: int32
@@ -15082,11 +18954,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
readOnly:
type: boolean
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -15148,6 +19022,45 @@ spec:
sources:
items:
properties:
+ clusterTrustBundle:
+ properties:
+ labelSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ name:
+ type: string
+ optional:
+ type: boolean
+ path:
+ type: string
+ signerName:
+ type: string
+ required:
+ - path
+ type: object
configMap:
properties:
items:
@@ -15165,7 +19078,9 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
name:
+ default: ""
type: string
optional:
type: boolean
@@ -15211,6 +19126,7 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
secret:
properties:
@@ -15229,7 +19145,9 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
name:
+ default: ""
type: string
optional:
type: boolean
@@ -15249,6 +19167,7 @@ spec:
type: object
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
quobyte:
properties:
@@ -15275,22 +19194,27 @@ spec:
image:
type: string
keyring:
+ default: /etc/ceph/keyring
type: string
monitors:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
pool:
+ default: rbd
type: string
readOnly:
type: boolean
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
user:
+ default: admin
type: string
required:
- image
@@ -15299,6 +19223,7 @@ spec:
scaleIO:
properties:
fsType:
+ default: xfs
type: string
gateway:
type: string
@@ -15309,12 +19234,14 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
sslEnabled:
type: boolean
storageMode:
+ default: ThinProvisioned
type: string
storagePool:
type: string
@@ -15347,6 +19274,7 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
optional:
type: boolean
secretName:
@@ -15361,6 +19289,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -15386,16 +19315,3623 @@ spec:
- name
type: object
type: array
+ workerSpec:
+ properties:
+ activeDeadlineSeconds:
+ format: int64
+ type: integer
+ affinity:
+ properties:
+ nodeAffinity:
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ items:
+ properties:
+ preference:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchFields:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ x-kubernetes-map-type: atomic
+ weight:
+ format: int32
+ type: integer
+ required:
+ - preference
+ - weight
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ properties:
+ nodeSelectorTerms:
+ items:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchFields:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ x-kubernetes-map-type: atomic
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - nodeSelectorTerms
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ podAffinity:
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ items:
+ properties:
+ podAffinityTerm:
+ properties:
+ labelSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ namespaces:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ type: string
+ required:
+ - topologyKey
+ type: object
+ weight:
+ format: int32
+ type: integer
+ required:
+ - podAffinityTerm
+ - weight
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ items:
+ properties:
+ labelSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ namespaces:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ type: string
+ required:
+ - topologyKey
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ podAntiAffinity:
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ items:
+ properties:
+ podAffinityTerm:
+ properties:
+ labelSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ namespaces:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ type: string
+ required:
+ - topologyKey
+ type: object
+ weight:
+ format: int32
+ type: integer
+ required:
+ - podAffinityTerm
+ - weight
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ items:
+ properties:
+ labelSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ namespaces:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ type: string
+ required:
+ - topologyKey
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ type: object
+ automountServiceAccountToken:
+ type: boolean
+ containers:
+ items:
+ properties:
+ args:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ env:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ valueFrom:
+ properties:
+ configMapKeyRef:
+ properties:
+ key:
+ type: string
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ fieldRef:
+ properties:
+ apiVersion:
+ type: string
+ fieldPath:
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ resourceFieldRef:
+ properties:
+ containerName:
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ secretKeyRef:
+ properties:
+ key:
+ type: string
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ envFrom:
+ items:
+ properties:
+ configMapRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ prefix:
+ type: string
+ secretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ image:
+ type: string
+ imagePullPolicy:
+ type: string
+ lifecycle:
+ properties:
+ postStart:
+ properties:
+ exec:
+ properties:
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ properties:
+ host:
+ type: string
+ httpHeaders:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ scheme:
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ properties:
+ host:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ preStop:
+ properties:
+ exec:
+ properties:
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ properties:
+ host:
+ type: string
+ httpHeaders:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ scheme:
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ properties:
+ host:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ type: object
+ livenessProbe:
+ properties:
+ exec:
+ properties:
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ format: int32
+ type: integer
+ grpc:
+ properties:
+ port:
+ format: int32
+ type: integer
+ service:
+ default: ""
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ properties:
+ host:
+ type: string
+ httpHeaders:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ scheme:
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ format: int32
+ type: integer
+ periodSeconds:
+ format: int32
+ type: integer
+ successThreshold:
+ format: int32
+ type: integer
+ tcpSocket:
+ properties:
+ host:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ format: int64
+ type: integer
+ timeoutSeconds:
+ format: int32
+ type: integer
+ type: object
+ name:
+ type: string
+ ports:
+ items:
+ properties:
+ containerPort:
+ format: int32
+ type: integer
+ hostIP:
+ type: string
+ hostPort:
+ format: int32
+ type: integer
+ name:
+ type: string
+ protocol:
+ default: TCP
+ type: string
+ required:
+ - containerPort
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - containerPort
+ - protocol
+ x-kubernetes-list-type: map
+ readinessProbe:
+ properties:
+ exec:
+ properties:
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ format: int32
+ type: integer
+ grpc:
+ properties:
+ port:
+ format: int32
+ type: integer
+ service:
+ default: ""
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ properties:
+ host:
+ type: string
+ httpHeaders:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ scheme:
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ format: int32
+ type: integer
+ periodSeconds:
+ format: int32
+ type: integer
+ successThreshold:
+ format: int32
+ type: integer
+ tcpSocket:
+ properties:
+ host:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ format: int64
+ type: integer
+ timeoutSeconds:
+ format: int32
+ type: integer
+ type: object
+ resizePolicy:
+ items:
+ properties:
+ resourceName:
+ type: string
+ restartPolicy:
+ type: string
+ required:
+ - resourceName
+ - restartPolicy
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ resources:
+ properties:
+ claims:
+ items:
+ properties:
+ name:
+ type: string
+ request:
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ limits:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ requests:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ type: object
+ restartPolicy:
+ type: string
+ securityContext:
+ properties:
+ allowPrivilegeEscalation:
+ type: boolean
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
+ capabilities:
+ properties:
+ add:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ drop:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ privileged:
+ type: boolean
+ procMount:
+ type: string
+ readOnlyRootFilesystem:
+ type: boolean
+ runAsGroup:
+ format: int64
+ type: integer
+ runAsNonRoot:
+ type: boolean
+ runAsUser:
+ format: int64
+ type: integer
+ seLinuxOptions:
+ properties:
+ level:
+ type: string
+ role:
+ type: string
+ type:
+ type: string
+ user:
+ type: string
+ type: object
+ seccompProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
+ windowsOptions:
+ properties:
+ gmsaCredentialSpec:
+ type: string
+ gmsaCredentialSpecName:
+ type: string
+ hostProcess:
+ type: boolean
+ runAsUserName:
+ type: string
+ type: object
+ type: object
+ startupProbe:
+ properties:
+ exec:
+ properties:
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ format: int32
+ type: integer
+ grpc:
+ properties:
+ port:
+ format: int32
+ type: integer
+ service:
+ default: ""
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ properties:
+ host:
+ type: string
+ httpHeaders:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ scheme:
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ format: int32
+ type: integer
+ periodSeconds:
+ format: int32
+ type: integer
+ successThreshold:
+ format: int32
+ type: integer
+ tcpSocket:
+ properties:
+ host:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ format: int64
+ type: integer
+ timeoutSeconds:
+ format: int32
+ type: integer
+ type: object
+ stdin:
+ type: boolean
+ stdinOnce:
+ type: boolean
+ terminationMessagePath:
+ type: string
+ terminationMessagePolicy:
+ type: string
+ tty:
+ type: boolean
+ volumeDevices:
+ items:
+ properties:
+ devicePath:
+ type: string
+ name:
+ type: string
+ required:
+ - devicePath
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
+ volumeMounts:
+ items:
+ properties:
+ mountPath:
+ type: string
+ mountPropagation:
+ type: string
+ name:
+ type: string
+ readOnly:
+ type: boolean
+ recursiveReadOnly:
+ type: string
+ subPath:
+ type: string
+ subPathExpr:
+ type: string
+ required:
+ - mountPath
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
+ workingDir:
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ dnsConfig:
+ properties:
+ nameservers:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ options:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ searches:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ dnsPolicy:
+ type: string
+ enableServiceLinks:
+ type: boolean
+ ephemeralContainers:
+ items:
+ properties:
+ args:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ env:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ valueFrom:
+ properties:
+ configMapKeyRef:
+ properties:
+ key:
+ type: string
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ fieldRef:
+ properties:
+ apiVersion:
+ type: string
+ fieldPath:
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ resourceFieldRef:
+ properties:
+ containerName:
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ secretKeyRef:
+ properties:
+ key:
+ type: string
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ envFrom:
+ items:
+ properties:
+ configMapRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ prefix:
+ type: string
+ secretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ image:
+ type: string
+ imagePullPolicy:
+ type: string
+ lifecycle:
+ properties:
+ postStart:
+ properties:
+ exec:
+ properties:
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ properties:
+ host:
+ type: string
+ httpHeaders:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ scheme:
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ properties:
+ host:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ preStop:
+ properties:
+ exec:
+ properties:
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ properties:
+ host:
+ type: string
+ httpHeaders:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ scheme:
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ properties:
+ host:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ type: object
+ livenessProbe:
+ properties:
+ exec:
+ properties:
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ format: int32
+ type: integer
+ grpc:
+ properties:
+ port:
+ format: int32
+ type: integer
+ service:
+ default: ""
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ properties:
+ host:
+ type: string
+ httpHeaders:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ scheme:
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ format: int32
+ type: integer
+ periodSeconds:
+ format: int32
+ type: integer
+ successThreshold:
+ format: int32
+ type: integer
+ tcpSocket:
+ properties:
+ host:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ format: int64
+ type: integer
+ timeoutSeconds:
+ format: int32
+ type: integer
+ type: object
+ name:
+ type: string
+ ports:
+ items:
+ properties:
+ containerPort:
+ format: int32
+ type: integer
+ hostIP:
+ type: string
+ hostPort:
+ format: int32
+ type: integer
+ name:
+ type: string
+ protocol:
+ default: TCP
+ type: string
+ required:
+ - containerPort
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - containerPort
+ - protocol
+ x-kubernetes-list-type: map
+ readinessProbe:
+ properties:
+ exec:
+ properties:
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ format: int32
+ type: integer
+ grpc:
+ properties:
+ port:
+ format: int32
+ type: integer
+ service:
+ default: ""
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ properties:
+ host:
+ type: string
+ httpHeaders:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ scheme:
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ format: int32
+ type: integer
+ periodSeconds:
+ format: int32
+ type: integer
+ successThreshold:
+ format: int32
+ type: integer
+ tcpSocket:
+ properties:
+ host:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ format: int64
+ type: integer
+ timeoutSeconds:
+ format: int32
+ type: integer
+ type: object
+ resizePolicy:
+ items:
+ properties:
+ resourceName:
+ type: string
+ restartPolicy:
+ type: string
+ required:
+ - resourceName
+ - restartPolicy
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ resources:
+ properties:
+ claims:
+ items:
+ properties:
+ name:
+ type: string
+ request:
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ limits:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ requests:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ type: object
+ restartPolicy:
+ type: string
+ securityContext:
+ properties:
+ allowPrivilegeEscalation:
+ type: boolean
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
+ capabilities:
+ properties:
+ add:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ drop:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ privileged:
+ type: boolean
+ procMount:
+ type: string
+ readOnlyRootFilesystem:
+ type: boolean
+ runAsGroup:
+ format: int64
+ type: integer
+ runAsNonRoot:
+ type: boolean
+ runAsUser:
+ format: int64
+ type: integer
+ seLinuxOptions:
+ properties:
+ level:
+ type: string
+ role:
+ type: string
+ type:
+ type: string
+ user:
+ type: string
+ type: object
+ seccompProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
+ windowsOptions:
+ properties:
+ gmsaCredentialSpec:
+ type: string
+ gmsaCredentialSpecName:
+ type: string
+ hostProcess:
+ type: boolean
+ runAsUserName:
+ type: string
+ type: object
+ type: object
+ startupProbe:
+ properties:
+ exec:
+ properties:
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ format: int32
+ type: integer
+ grpc:
+ properties:
+ port:
+ format: int32
+ type: integer
+ service:
+ default: ""
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ properties:
+ host:
+ type: string
+ httpHeaders:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ scheme:
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ format: int32
+ type: integer
+ periodSeconds:
+ format: int32
+ type: integer
+ successThreshold:
+ format: int32
+ type: integer
+ tcpSocket:
+ properties:
+ host:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ format: int64
+ type: integer
+ timeoutSeconds:
+ format: int32
+ type: integer
+ type: object
+ stdin:
+ type: boolean
+ stdinOnce:
+ type: boolean
+ targetContainerName:
+ type: string
+ terminationMessagePath:
+ type: string
+ terminationMessagePolicy:
+ type: string
+ tty:
+ type: boolean
+ volumeDevices:
+ items:
+ properties:
+ devicePath:
+ type: string
+ name:
+ type: string
+ required:
+ - devicePath
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
+ volumeMounts:
+ items:
+ properties:
+ mountPath:
+ type: string
+ mountPropagation:
+ type: string
+ name:
+ type: string
+ readOnly:
+ type: boolean
+ recursiveReadOnly:
+ type: string
+ subPath:
+ type: string
+ subPathExpr:
+ type: string
+ required:
+ - mountPath
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
+ workingDir:
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ hostAliases:
+ items:
+ properties:
+ hostnames:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ ip:
+ type: string
+ required:
+ - ip
+ type: object
+ type: array
+ hostIPC:
+ type: boolean
+ hostNetwork:
+ type: boolean
+ hostPID:
+ type: boolean
+ hostUsers:
+ type: boolean
+ hostname:
+ type: string
+ imagePullSecrets:
+ items:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ type: array
+ initContainers:
+ items:
+ properties:
+ args:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ env:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ valueFrom:
+ properties:
+ configMapKeyRef:
+ properties:
+ key:
+ type: string
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ fieldRef:
+ properties:
+ apiVersion:
+ type: string
+ fieldPath:
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ resourceFieldRef:
+ properties:
+ containerName:
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ secretKeyRef:
+ properties:
+ key:
+ type: string
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ envFrom:
+ items:
+ properties:
+ configMapRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ prefix:
+ type: string
+ secretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ image:
+ type: string
+ imagePullPolicy:
+ type: string
+ lifecycle:
+ properties:
+ postStart:
+ properties:
+ exec:
+ properties:
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ properties:
+ host:
+ type: string
+ httpHeaders:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ scheme:
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ properties:
+ host:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ preStop:
+ properties:
+ exec:
+ properties:
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ properties:
+ host:
+ type: string
+ httpHeaders:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ scheme:
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ properties:
+ host:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ type: object
+ livenessProbe:
+ properties:
+ exec:
+ properties:
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ format: int32
+ type: integer
+ grpc:
+ properties:
+ port:
+ format: int32
+ type: integer
+ service:
+ default: ""
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ properties:
+ host:
+ type: string
+ httpHeaders:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ scheme:
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ format: int32
+ type: integer
+ periodSeconds:
+ format: int32
+ type: integer
+ successThreshold:
+ format: int32
+ type: integer
+ tcpSocket:
+ properties:
+ host:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ format: int64
+ type: integer
+ timeoutSeconds:
+ format: int32
+ type: integer
+ type: object
+ name:
+ type: string
+ ports:
+ items:
+ properties:
+ containerPort:
+ format: int32
+ type: integer
+ hostIP:
+ type: string
+ hostPort:
+ format: int32
+ type: integer
+ name:
+ type: string
+ protocol:
+ default: TCP
+ type: string
+ required:
+ - containerPort
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - containerPort
+ - protocol
+ x-kubernetes-list-type: map
+ readinessProbe:
+ properties:
+ exec:
+ properties:
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ format: int32
+ type: integer
+ grpc:
+ properties:
+ port:
+ format: int32
+ type: integer
+ service:
+ default: ""
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ properties:
+ host:
+ type: string
+ httpHeaders:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ scheme:
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ format: int32
+ type: integer
+ periodSeconds:
+ format: int32
+ type: integer
+ successThreshold:
+ format: int32
+ type: integer
+ tcpSocket:
+ properties:
+ host:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ format: int64
+ type: integer
+ timeoutSeconds:
+ format: int32
+ type: integer
+ type: object
+ resizePolicy:
+ items:
+ properties:
+ resourceName:
+ type: string
+ restartPolicy:
+ type: string
+ required:
+ - resourceName
+ - restartPolicy
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ resources:
+ properties:
+ claims:
+ items:
+ properties:
+ name:
+ type: string
+ request:
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ limits:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ requests:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ type: object
+ restartPolicy:
+ type: string
+ securityContext:
+ properties:
+ allowPrivilegeEscalation:
+ type: boolean
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
+ capabilities:
+ properties:
+ add:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ drop:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ privileged:
+ type: boolean
+ procMount:
+ type: string
+ readOnlyRootFilesystem:
+ type: boolean
+ runAsGroup:
+ format: int64
+ type: integer
+ runAsNonRoot:
+ type: boolean
+ runAsUser:
+ format: int64
+ type: integer
+ seLinuxOptions:
+ properties:
+ level:
+ type: string
+ role:
+ type: string
+ type:
+ type: string
+ user:
+ type: string
+ type: object
+ seccompProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
+ windowsOptions:
+ properties:
+ gmsaCredentialSpec:
+ type: string
+ gmsaCredentialSpecName:
+ type: string
+ hostProcess:
+ type: boolean
+ runAsUserName:
+ type: string
+ type: object
+ type: object
+ startupProbe:
+ properties:
+ exec:
+ properties:
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ format: int32
+ type: integer
+ grpc:
+ properties:
+ port:
+ format: int32
+ type: integer
+ service:
+ default: ""
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ properties:
+ host:
+ type: string
+ httpHeaders:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ scheme:
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ format: int32
+ type: integer
+ periodSeconds:
+ format: int32
+ type: integer
+ successThreshold:
+ format: int32
+ type: integer
+ tcpSocket:
+ properties:
+ host:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ format: int64
+ type: integer
+ timeoutSeconds:
+ format: int32
+ type: integer
+ type: object
+ stdin:
+ type: boolean
+ stdinOnce:
+ type: boolean
+ terminationMessagePath:
+ type: string
+ terminationMessagePolicy:
+ type: string
+ tty:
+ type: boolean
+ volumeDevices:
+ items:
+ properties:
+ devicePath:
+ type: string
+ name:
+ type: string
+ required:
+ - devicePath
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
+ volumeMounts:
+ items:
+ properties:
+ mountPath:
+ type: string
+ mountPropagation:
+ type: string
+ name:
+ type: string
+ readOnly:
+ type: boolean
+ recursiveReadOnly:
+ type: string
+ subPath:
+ type: string
+ subPathExpr:
+ type: string
+ required:
+ - mountPath
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
+ workingDir:
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ nodeName:
+ type: string
+ nodeSelector:
+ additionalProperties:
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ os:
+ properties:
+ name:
+ type: string
+ required:
+ - name
+ type: object
+ overhead:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ pipelineParallelSize:
+ type: integer
+ preemptionPolicy:
+ type: string
+ priority:
+ format: int32
+ type: integer
+ priorityClassName:
+ type: string
+ readinessGates:
+ items:
+ properties:
+ conditionType:
+ type: string
+ required:
+ - conditionType
+ type: object
+ type: array
+ resourceClaims:
+ items:
+ properties:
+ name:
+ type: string
+ resourceClaimName:
+ type: string
+ resourceClaimTemplateName:
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ resources:
+ properties:
+ claims:
+ items:
+ properties:
+ name:
+ type: string
+ request:
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ limits:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ requests:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ type: object
+ restartPolicy:
+ type: string
+ runtimeClassName:
+ type: string
+ schedulerName:
+ type: string
+ schedulingGates:
+ items:
+ properties:
+ name:
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ securityContext:
+ properties:
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
+ fsGroup:
+ format: int64
+ type: integer
+ fsGroupChangePolicy:
+ type: string
+ runAsGroup:
+ format: int64
+ type: integer
+ runAsNonRoot:
+ type: boolean
+ runAsUser:
+ format: int64
+ type: integer
+ seLinuxChangePolicy:
+ type: string
+ seLinuxOptions:
+ properties:
+ level:
+ type: string
+ role:
+ type: string
+ type:
+ type: string
+ user:
+ type: string
+ type: object
+ seccompProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
+ supplementalGroups:
+ items:
+ format: int64
+ type: integer
+ type: array
+ x-kubernetes-list-type: atomic
+ supplementalGroupsPolicy:
+ type: string
+ sysctls:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ windowsOptions:
+ properties:
+ gmsaCredentialSpec:
+ type: string
+ gmsaCredentialSpecName:
+ type: string
+ hostProcess:
+ type: boolean
+ runAsUserName:
+ type: string
+ type: object
+ type: object
+ serviceAccount:
+ type: string
+ serviceAccountName:
+ type: string
+ setHostnameAsFQDN:
+ type: boolean
+ shareProcessNamespace:
+ type: boolean
+ subdomain:
+ type: string
+ tensorParallelSize:
+ type: integer
+ terminationGracePeriodSeconds:
+ format: int64
+ type: integer
+ tolerations:
+ items:
+ properties:
+ effect:
+ type: string
+ key:
+ type: string
+ operator:
+ type: string
+ tolerationSeconds:
+ format: int64
+ type: integer
+ value:
+ type: string
+ type: object
+ type: array
+ topologySpreadConstraints:
+ items:
+ properties:
+ labelSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ maxSkew:
+ format: int32
+ type: integer
+ minDomains:
+ format: int32
+ type: integer
+ nodeAffinityPolicy:
+ type: string
+ nodeTaintsPolicy:
+ type: string
+ topologyKey:
+ type: string
+ whenUnsatisfiable:
+ type: string
+ required:
+ - maxSkew
+ - topologyKey
+ - whenUnsatisfiable
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - topologyKey
+ - whenUnsatisfiable
+ x-kubernetes-list-type: map
+ volumes:
+ items:
+ properties:
+ awsElasticBlockStore:
+ properties:
+ fsType:
+ type: string
+ partition:
+ format: int32
+ type: integer
+ readOnly:
+ type: boolean
+ volumeID:
+ type: string
+ required:
+ - volumeID
+ type: object
+ azureDisk:
+ properties:
+ cachingMode:
+ type: string
+ diskName:
+ type: string
+ diskURI:
+ type: string
+ fsType:
+ default: ext4
+ type: string
+ kind:
+ type: string
+ readOnly:
+ default: false
+ type: boolean
+ required:
+ - diskName
+ - diskURI
+ type: object
+ azureFile:
+ properties:
+ readOnly:
+ type: boolean
+ secretName:
+ type: string
+ shareName:
+ type: string
+ required:
+ - secretName
+ - shareName
+ type: object
+ cephfs:
+ properties:
+ monitors:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ readOnly:
+ type: boolean
+ secretFile:
+ type: string
+ secretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ user:
+ type: string
+ required:
+ - monitors
+ type: object
+ cinder:
+ properties:
+ fsType:
+ type: string
+ readOnly:
+ type: boolean
+ secretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ volumeID:
+ type: string
+ required:
+ - volumeID
+ type: object
+ configMap:
+ properties:
+ defaultMode:
+ format: int32
+ type: integer
+ items:
+ items:
+ properties:
+ key:
+ type: string
+ mode:
+ format: int32
+ type: integer
+ path:
+ type: string
+ required:
+ - key
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ csi:
+ properties:
+ driver:
+ type: string
+ fsType:
+ type: string
+ nodePublishSecretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ readOnly:
+ type: boolean
+ volumeAttributes:
+ additionalProperties:
+ type: string
+ type: object
+ required:
+ - driver
+ type: object
+ downwardAPI:
+ properties:
+ defaultMode:
+ format: int32
+ type: integer
+ items:
+ items:
+ properties:
+ fieldRef:
+ properties:
+ apiVersion:
+ type: string
+ fieldPath:
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ mode:
+ format: int32
+ type: integer
+ path:
+ type: string
+ resourceFieldRef:
+ properties:
+ containerName:
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ required:
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ emptyDir:
+ properties:
+ medium:
+ type: string
+ sizeLimit:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ ephemeral:
+ properties:
+ volumeClaimTemplate:
+ properties:
+ metadata:
+ type: object
+ spec:
+ properties:
+ accessModes:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ dataSource:
+ properties:
+ apiGroup:
+ type: string
+ kind:
+ type: string
+ name:
+ type: string
+ required:
+ - kind
+ - name
+ type: object
+ x-kubernetes-map-type: atomic
+ dataSourceRef:
+ properties:
+ apiGroup:
+ type: string
+ kind:
+ type: string
+ name:
+ type: string
+ namespace:
+ type: string
+ required:
+ - kind
+ - name
+ type: object
+ resources:
+ properties:
+ limits:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ requests:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ type: object
+ selector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ storageClassName:
+ type: string
+ volumeAttributesClassName:
+ type: string
+ volumeMode:
+ type: string
+ volumeName:
+ type: string
+ type: object
+ required:
+ - spec
+ type: object
+ type: object
+ fc:
+ properties:
+ fsType:
+ type: string
+ lun:
+ format: int32
+ type: integer
+ readOnly:
+ type: boolean
+ targetWWNs:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ wwids:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ flexVolume:
+ properties:
+ driver:
+ type: string
+ fsType:
+ type: string
+ options:
+ additionalProperties:
+ type: string
+ type: object
+ readOnly:
+ type: boolean
+ secretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ required:
+ - driver
+ type: object
+ flocker:
+ properties:
+ datasetName:
+ type: string
+ datasetUUID:
+ type: string
+ type: object
+ gcePersistentDisk:
+ properties:
+ fsType:
+ type: string
+ partition:
+ format: int32
+ type: integer
+ pdName:
+ type: string
+ readOnly:
+ type: boolean
+ required:
+ - pdName
+ type: object
+ gitRepo:
+ properties:
+ directory:
+ type: string
+ repository:
+ type: string
+ revision:
+ type: string
+ required:
+ - repository
+ type: object
+ glusterfs:
+ properties:
+ endpoints:
+ type: string
+ path:
+ type: string
+ readOnly:
+ type: boolean
+ required:
+ - endpoints
+ - path
+ type: object
+ hostPath:
+ properties:
+ path:
+ type: string
+ type:
+ type: string
+ required:
+ - path
+ type: object
+ image:
+ properties:
+ pullPolicy:
+ type: string
+ reference:
+ type: string
+ type: object
+ iscsi:
+ properties:
+ chapAuthDiscovery:
+ type: boolean
+ chapAuthSession:
+ type: boolean
+ fsType:
+ type: string
+ initiatorName:
+ type: string
+ iqn:
+ type: string
+ iscsiInterface:
+ default: default
+ type: string
+ lun:
+ format: int32
+ type: integer
+ portals:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ readOnly:
+ type: boolean
+ secretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ targetPortal:
+ type: string
+ required:
+ - iqn
+ - lun
+ - targetPortal
+ type: object
+ name:
+ type: string
+ nfs:
+ properties:
+ path:
+ type: string
+ readOnly:
+ type: boolean
+ server:
+ type: string
+ required:
+ - path
+ - server
+ type: object
+ persistentVolumeClaim:
+ properties:
+ claimName:
+ type: string
+ readOnly:
+ type: boolean
+ required:
+ - claimName
+ type: object
+ photonPersistentDisk:
+ properties:
+ fsType:
+ type: string
+ pdID:
+ type: string
+ required:
+ - pdID
+ type: object
+ portworxVolume:
+ properties:
+ fsType:
+ type: string
+ readOnly:
+ type: boolean
+ volumeID:
+ type: string
+ required:
+ - volumeID
+ type: object
+ projected:
+ properties:
+ defaultMode:
+ format: int32
+ type: integer
+ sources:
+ items:
+ properties:
+ clusterTrustBundle:
+ properties:
+ labelSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ name:
+ type: string
+ optional:
+ type: boolean
+ path:
+ type: string
+ signerName:
+ type: string
+ required:
+ - path
+ type: object
+ configMap:
+ properties:
+ items:
+ items:
+ properties:
+ key:
+ type: string
+ mode:
+ format: int32
+ type: integer
+ path:
+ type: string
+ required:
+ - key
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ downwardAPI:
+ properties:
+ items:
+ items:
+ properties:
+ fieldRef:
+ properties:
+ apiVersion:
+ type: string
+ fieldPath:
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ mode:
+ format: int32
+ type: integer
+ path:
+ type: string
+ resourceFieldRef:
+ properties:
+ containerName:
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ required:
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ secret:
+ properties:
+ items:
+ items:
+ properties:
+ key:
+ type: string
+ mode:
+ format: int32
+ type: integer
+ path:
+ type: string
+ required:
+ - key
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ serviceAccountToken:
+ properties:
+ audience:
+ type: string
+ expirationSeconds:
+ format: int64
+ type: integer
+ path:
+ type: string
+ required:
+ - path
+ type: object
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ quobyte:
+ properties:
+ group:
+ type: string
+ readOnly:
+ type: boolean
+ registry:
+ type: string
+ tenant:
+ type: string
+ user:
+ type: string
+ volume:
+ type: string
+ required:
+ - registry
+ - volume
+ type: object
+ rbd:
+ properties:
+ fsType:
+ type: string
+ image:
+ type: string
+ keyring:
+ default: /etc/ceph/keyring
+ type: string
+ monitors:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ pool:
+ default: rbd
+ type: string
+ readOnly:
+ type: boolean
+ secretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ user:
+ default: admin
+ type: string
+ required:
+ - image
+ - monitors
+ type: object
+ scaleIO:
+ properties:
+ fsType:
+ default: xfs
+ type: string
+ gateway:
+ type: string
+ protectionDomain:
+ type: string
+ readOnly:
+ type: boolean
+ secretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ sslEnabled:
+ type: boolean
+ storageMode:
+ default: ThinProvisioned
+ type: string
+ storagePool:
+ type: string
+ system:
+ type: string
+ volumeName:
+ type: string
+ required:
+ - gateway
+ - secretRef
+ - system
+ type: object
+ secret:
+ properties:
+ defaultMode:
+ format: int32
+ type: integer
+ items:
+ items:
+ properties:
+ key:
+ type: string
+ mode:
+ format: int32
+ type: integer
+ path:
+ type: string
+ required:
+ - key
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ optional:
+ type: boolean
+ secretName:
+ type: string
+ type: object
+ storageos:
+ properties:
+ fsType:
+ type: string
+ readOnly:
+ type: boolean
+ secretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ volumeName:
+ type: string
+ volumeNamespace:
+ type: string
+ type: object
+ vsphereVolume:
+ properties:
+ fsType:
+ type: string
+ storagePolicyID:
+ type: string
+ storagePolicyName:
+ type: string
+ volumePath:
+ type: string
+ required:
+ - volumePath
+ type: object
+ required:
+ - name
+ type: object
+ type: array
+ type: object
xgboost:
properties:
args:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
items:
properties:
@@ -15410,6 +22946,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -15448,6 +22985,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -15460,12 +22998,16 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
items:
properties:
configMapRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -15476,6 +23018,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -15483,6 +23026,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
type: string
imagePullPolicy:
@@ -15497,6 +23041,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -15514,6 +23059,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -15526,6 +23072,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -15547,6 +23101,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -15564,6 +23119,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -15576,6 +23132,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -15598,6 +23162,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -15608,6 +23173,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -15628,6 +23194,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -15700,6 +23267,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -15710,6 +23278,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -15730,6 +23299,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -15786,6 +23356,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -15818,16 +23390,27 @@ spec:
properties:
allowPrivilegeEscalation:
type: boolean
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
capabilities:
properties:
add:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
type: boolean
@@ -15883,6 +23466,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -15893,6 +23477,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -15913,6 +23498,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -15990,6 +23576,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
items:
properties:
@@ -16001,6 +23590,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -16010,6 +23601,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
type: string
type: object
@@ -16039,11 +23633,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchFields:
items:
properties:
@@ -16055,11 +23651,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
x-kubernetes-map-type: atomic
weight:
@@ -16070,6 +23668,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
properties:
nodeSelectorTerms:
@@ -16086,11 +23685,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchFields:
items:
properties:
@@ -16102,14 +23703,17 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
x-kubernetes-map-type: atomic
type: array
+ x-kubernetes-list-type: atomic
required:
- nodeSelectorTerms
type: object
@@ -16135,17 +23739,29 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
properties:
matchExpressions:
@@ -16159,11 +23775,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -16174,6 +23792,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
type: string
required:
@@ -16187,6 +23806,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
items:
properties:
@@ -16203,17 +23823,29 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
properties:
matchExpressions:
@@ -16227,11 +23859,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -16242,12 +23876,14 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
type: string
required:
- topologyKey
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
podAntiAffinity:
properties:
@@ -16269,17 +23905,29 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
properties:
matchExpressions:
@@ -16293,11 +23941,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -16308,6 +23958,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
type: string
required:
@@ -16321,6 +23972,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
items:
properties:
@@ -16337,17 +23989,29 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
properties:
matchExpressions:
@@ -16361,11 +24025,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -16376,18 +24042,162 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
type: string
required:
- topologyKey
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
type: object
annotations:
additionalProperties:
type: string
type: object
+ autoScaling:
+ properties:
+ metrics:
+ items:
+ properties:
+ external:
+ properties:
+ metric:
+ properties:
+ backend:
+ enum:
+ - prometheus
+ - graphite
+ type: string
+ namespace:
+ type: string
+ query:
+ type: string
+ serverAddress:
+ type: string
+ type: object
+ target:
+ properties:
+ averageUtilization:
+ format: int32
+ type: integer
+ averageValue:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type:
+ enum:
+ - Utilization
+ - Value
+ - AverageValue
+ type: string
+ value:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ required:
+ - metric
+ - target
+ type: object
+ podmetric:
+ properties:
+ metric:
+ properties:
+ backend:
+ enum:
+ - opentelemetry
+ type: string
+ metricNames:
+ items:
+ type: string
+ type: array
+ operationOverTime:
+ type: string
+ query:
+ type: string
+ serverAddress:
+ type: string
+ type: object
+ target:
+ properties:
+ averageUtilization:
+ format: int32
+ type: integer
+ averageValue:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type:
+ enum:
+ - Utilization
+ - Value
+ - AverageValue
+ type: string
+ value:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ required:
+ - metric
+ - target
+ type: object
+ resource:
+ properties:
+ name:
+ enum:
+ - cpu
+ - memory
+ type: string
+ target:
+ properties:
+ averageUtilization:
+ format: int32
+ type: integer
+ averageValue:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type:
+ enum:
+ - Utilization
+ - Value
+ - AverageValue
+ type: string
+ value:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ required:
+ - name
+ - target
+ type: object
+ type:
+ enum:
+ - Resource
+ - External
+ - PodMetric
+ type: string
+ required:
+ - type
+ type: object
+ type: array
+ type: object
automountServiceAccountToken:
type: boolean
batcher:
@@ -16412,10 +24222,12 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
items:
properties:
@@ -16430,6 +24242,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -16468,6 +24281,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -16480,12 +24294,16 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
items:
properties:
configMapRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -16496,6 +24314,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -16503,6 +24322,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
type: string
imagePullPolicy:
@@ -16517,6 +24337,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -16534,6 +24355,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -16546,6 +24368,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -16567,6 +24397,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -16584,6 +24415,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -16596,6 +24428,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -16618,6 +24458,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -16628,6 +24469,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -16648,6 +24490,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -16720,6 +24563,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -16730,6 +24574,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -16750,6 +24595,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -16808,6 +24654,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -16838,16 +24686,27 @@ spec:
properties:
allowPrivilegeEscalation:
type: boolean
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
capabilities:
properties:
add:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
type: boolean
@@ -16903,6 +24762,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -16913,6 +24773,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -16933,6 +24794,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -16995,6 +24857,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
items:
properties:
@@ -17006,6 +24871,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -17015,6 +24882,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
type: string
required:
@@ -17045,6 +24915,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
options:
items:
properties:
@@ -17054,10 +24925,12 @@ spec:
type: string
type: object
type: array
+ x-kubernetes-list-type: atomic
searches:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
dnsPolicy:
type: string
@@ -17070,8 +24943,11 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
ip:
type: string
+ required:
+ - ip
type: object
type: array
hostIPC:
@@ -17088,6 +24964,7 @@ spec:
items:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -17099,10 +24976,12 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
items:
properties:
@@ -17117,6 +24996,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -17155,6 +25035,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -17167,12 +25048,16 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
items:
properties:
configMapRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -17183,6 +25068,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -17190,6 +25076,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
type: string
imagePullPolicy:
@@ -17204,6 +25091,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -17221,6 +25109,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -17233,6 +25122,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -17254,6 +25151,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -17271,6 +25169,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -17283,6 +25182,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -17305,6 +25212,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -17315,6 +25223,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -17335,6 +25244,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -17409,6 +25319,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -17419,6 +25330,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -17439,6 +25351,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -17499,6 +25412,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -17529,16 +25444,27 @@ spec:
properties:
allowPrivilegeEscalation:
type: boolean
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
capabilities:
properties:
add:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
type: boolean
@@ -17594,6 +25520,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -17604,6 +25531,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -17624,6 +25552,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -17686,6 +25615,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
items:
properties:
@@ -17697,6 +25629,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -17706,6 +25640,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
type: string
required:
@@ -17718,6 +25655,10 @@ spec:
type: object
logger:
properties:
+ metadataHeaders:
+ items:
+ type: string
+ type: array
mode:
enum:
- all
@@ -17728,8 +25669,10 @@ spec:
type: string
type: object
maxReplicas:
+ format: int32
type: integer
minReplicas:
+ format: int32
type: integer
nodeName:
type: string
@@ -17772,13 +25715,10 @@ spec:
properties:
name:
type: string
- source:
- properties:
- resourceClaimName:
- type: string
- resourceClaimTemplateName:
- type: string
- type: object
+ resourceClaimName:
+ type: string
+ resourceClaimTemplateName:
+ type: string
required:
- name
type: object
@@ -17786,6 +25726,39 @@ spec:
x-kubernetes-list-map-keys:
- name
x-kubernetes-list-type: map
+ resources:
+ properties:
+ claims:
+ items:
+ properties:
+ name:
+ type: string
+ request:
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ limits:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ requests:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ type: object
restartPolicy:
type: string
runtimeClassName:
@@ -17797,7 +25770,14 @@ spec:
- concurrency
- rps
type: string
+ scaleMetricType:
+ enum:
+ - Utilization
+ - Value
+ - AverageValue
+ type: string
scaleTarget:
+ format: int32
type: integer
schedulerName:
type: string
@@ -17815,6 +25795,15 @@ spec:
x-kubernetes-list-type: map
securityContext:
properties:
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
fsGroup:
format: int64
type: integer
@@ -17828,6 +25817,8 @@ spec:
runAsUser:
format: int64
type: integer
+ seLinuxChangePolicy:
+ type: string
seLinuxOptions:
properties:
level:
@@ -17853,6 +25844,9 @@ spec:
format: int64
type: integer
type: array
+ x-kubernetes-list-type: atomic
+ supplementalGroupsPolicy:
+ type: string
sysctls:
items:
properties:
@@ -17865,6 +25859,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
windowsOptions:
properties:
gmsaCredentialSpec:
@@ -17925,11 +25920,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -17991,10 +25988,12 @@ spec:
diskURI:
type: string
fsType:
+ default: ext4
type: string
kind:
type: string
readOnly:
+ default: false
type: boolean
required:
- diskName
@@ -18018,6 +26017,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
readOnly:
@@ -18027,6 +26027,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -18044,6 +26045,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -18072,7 +26074,9 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
name:
+ default: ""
type: string
optional:
type: boolean
@@ -18087,6 +26091,7 @@ spec:
nodePublishSecretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -18142,6 +26147,7 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
emptyDir:
properties:
@@ -18166,6 +26172,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
dataSource:
properties:
apiGroup:
@@ -18195,18 +26202,6 @@ spec:
type: object
resources:
properties:
- claims:
- items:
- properties:
- name:
- type: string
- required:
- - name
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - name
- x-kubernetes-list-type: map
limits:
additionalProperties:
anyOf:
@@ -18237,11 +26232,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -18250,6 +26247,8 @@ spec:
x-kubernetes-map-type: atomic
storageClassName:
type: string
+ volumeAttributesClassName:
+ type: string
volumeMode:
type: string
volumeName:
@@ -18272,10 +26271,12 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
wwids:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
flexVolume:
properties:
@@ -18292,6 +26293,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -18351,6 +26353,13 @@ spec:
required:
- path
type: object
+ image:
+ properties:
+ pullPolicy:
+ type: string
+ reference:
+ type: string
+ type: object
iscsi:
properties:
chapAuthDiscovery:
@@ -18364,6 +26373,7 @@ spec:
iqn:
type: string
iscsiInterface:
+ default: default
type: string
lun:
format: int32
@@ -18372,11 +26382,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
readOnly:
type: boolean
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -18438,6 +26450,45 @@ spec:
sources:
items:
properties:
+ clusterTrustBundle:
+ properties:
+ labelSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ name:
+ type: string
+ optional:
+ type: boolean
+ path:
+ type: string
+ signerName:
+ type: string
+ required:
+ - path
+ type: object
configMap:
properties:
items:
@@ -18455,7 +26506,9 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
name:
+ default: ""
type: string
optional:
type: boolean
@@ -18501,6 +26554,7 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
secret:
properties:
@@ -18519,7 +26573,9 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
name:
+ default: ""
type: string
optional:
type: boolean
@@ -18539,6 +26595,7 @@ spec:
type: object
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
quobyte:
properties:
@@ -18565,22 +26622,27 @@ spec:
image:
type: string
keyring:
+ default: /etc/ceph/keyring
type: string
monitors:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
pool:
+ default: rbd
type: string
readOnly:
type: boolean
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
user:
+ default: admin
type: string
required:
- image
@@ -18589,6 +26651,7 @@ spec:
scaleIO:
properties:
fsType:
+ default: xfs
type: string
gateway:
type: string
@@ -18599,12 +26662,14 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
sslEnabled:
type: boolean
storageMode:
+ default: ThinProvisioned
type: string
storagePool:
type: string
@@ -18637,6 +26702,7 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
optional:
type: boolean
secretName:
@@ -18651,6 +26717,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -18855,7 +26922,846 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
- controller-gen.kubebuilder.io/version: v0.12.0
+ controller-gen.kubebuilder.io/version: v0.16.2
+ name: localmodelcaches.serving.kserve.io
+spec:
+ group: serving.kserve.io
+ names:
+ kind: LocalModelCache
+ listKind: LocalModelCacheList
+ plural: localmodelcaches
+ singular: localmodelcache
+ scope: Cluster
+ versions:
+ - name: v1alpha1
+ schema:
+ openAPIV3Schema:
+ properties:
+ apiVersion:
+ type: string
+ kind:
+ type: string
+ metadata:
+ type: object
+ spec:
+ properties:
+ modelSize:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ nodeGroups:
+ items:
+ type: string
+ minItems: 1
+ type: array
+ sourceModelUri:
+ type: string
+ x-kubernetes-validations:
+ - message: StorageUri is immutable
+ rule: self == oldSelf
+ required:
+ - modelSize
+ - nodeGroups
+ - sourceModelUri
+ type: object
+ status:
+ properties:
+ copies:
+ properties:
+ available:
+ type: integer
+ failed:
+ type: integer
+ total:
+ type: integer
+ type: object
+ inferenceServices:
+ items:
+ properties:
+ name:
+ type: string
+ namespace:
+ type: string
+ type: object
+ type: array
+ nodeStatus:
+ additionalProperties:
+ enum:
+ - ""
+ - NodeNotReady
+ - NodeDownloadPending
+ - NodeDownloading
+ - NodeDownloaded
+ - NodeDownloadError
+ type: string
+ type: object
+ type: object
+ type: object
+ served: true
+ storage: true
+ subresources:
+ status: {}
+---
+apiVersion: apiextensions.k8s.io/v1
+kind: CustomResourceDefinition
+metadata:
+ annotations:
+ controller-gen.kubebuilder.io/version: v0.16.2
+ name: localmodelnodegroups.serving.kserve.io
+spec:
+ group: serving.kserve.io
+ names:
+ kind: LocalModelNodeGroup
+ listKind: LocalModelNodeGroupList
+ plural: localmodelnodegroups
+ singular: localmodelnodegroup
+ scope: Cluster
+ versions:
+ - name: v1alpha1
+ schema:
+ openAPIV3Schema:
+ properties:
+ apiVersion:
+ type: string
+ kind:
+ type: string
+ metadata:
+ type: object
+ spec:
+ properties:
+ persistentVolumeClaimSpec:
+ properties:
+ accessModes:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ dataSource:
+ properties:
+ apiGroup:
+ type: string
+ kind:
+ type: string
+ name:
+ type: string
+ required:
+ - kind
+ - name
+ type: object
+ x-kubernetes-map-type: atomic
+ dataSourceRef:
+ properties:
+ apiGroup:
+ type: string
+ kind:
+ type: string
+ name:
+ type: string
+ namespace:
+ type: string
+ required:
+ - kind
+ - name
+ type: object
+ resources:
+ properties:
+ limits:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ requests:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ type: object
+ selector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ storageClassName:
+ type: string
+ volumeAttributesClassName:
+ type: string
+ volumeMode:
+ type: string
+ volumeName:
+ type: string
+ type: object
+ persistentVolumeSpec:
+ properties:
+ accessModes:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ awsElasticBlockStore:
+ properties:
+ fsType:
+ type: string
+ partition:
+ format: int32
+ type: integer
+ readOnly:
+ type: boolean
+ volumeID:
+ type: string
+ required:
+ - volumeID
+ type: object
+ azureDisk:
+ properties:
+ cachingMode:
+ type: string
+ diskName:
+ type: string
+ diskURI:
+ type: string
+ fsType:
+ default: ext4
+ type: string
+ kind:
+ type: string
+ readOnly:
+ default: false
+ type: boolean
+ required:
+ - diskName
+ - diskURI
+ type: object
+ azureFile:
+ properties:
+ readOnly:
+ type: boolean
+ secretName:
+ type: string
+ secretNamespace:
+ type: string
+ shareName:
+ type: string
+ required:
+ - secretName
+ - shareName
+ type: object
+ capacity:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ cephfs:
+ properties:
+ monitors:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ readOnly:
+ type: boolean
+ secretFile:
+ type: string
+ secretRef:
+ properties:
+ name:
+ type: string
+ namespace:
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ user:
+ type: string
+ required:
+ - monitors
+ type: object
+ cinder:
+ properties:
+ fsType:
+ type: string
+ readOnly:
+ type: boolean
+ secretRef:
+ properties:
+ name:
+ type: string
+ namespace:
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ volumeID:
+ type: string
+ required:
+ - volumeID
+ type: object
+ claimRef:
+ properties:
+ apiVersion:
+ type: string
+ fieldPath:
+ type: string
+ kind:
+ type: string
+ name:
+ type: string
+ namespace:
+ type: string
+ resourceVersion:
+ type: string
+ uid:
+ type: string
+ type: object
+ x-kubernetes-map-type: granular
+ csi:
+ properties:
+ controllerExpandSecretRef:
+ properties:
+ name:
+ type: string
+ namespace:
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ controllerPublishSecretRef:
+ properties:
+ name:
+ type: string
+ namespace:
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ driver:
+ type: string
+ fsType:
+ type: string
+ nodeExpandSecretRef:
+ properties:
+ name:
+ type: string
+ namespace:
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ nodePublishSecretRef:
+ properties:
+ name:
+ type: string
+ namespace:
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ nodeStageSecretRef:
+ properties:
+ name:
+ type: string
+ namespace:
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ readOnly:
+ type: boolean
+ volumeAttributes:
+ additionalProperties:
+ type: string
+ type: object
+ volumeHandle:
+ type: string
+ required:
+ - driver
+ - volumeHandle
+ type: object
+ fc:
+ properties:
+ fsType:
+ type: string
+ lun:
+ format: int32
+ type: integer
+ readOnly:
+ type: boolean
+ targetWWNs:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ wwids:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ flexVolume:
+ properties:
+ driver:
+ type: string
+ fsType:
+ type: string
+ options:
+ additionalProperties:
+ type: string
+ type: object
+ readOnly:
+ type: boolean
+ secretRef:
+ properties:
+ name:
+ type: string
+ namespace:
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ required:
+ - driver
+ type: object
+ flocker:
+ properties:
+ datasetName:
+ type: string
+ datasetUUID:
+ type: string
+ type: object
+ gcePersistentDisk:
+ properties:
+ fsType:
+ type: string
+ partition:
+ format: int32
+ type: integer
+ pdName:
+ type: string
+ readOnly:
+ type: boolean
+ required:
+ - pdName
+ type: object
+ glusterfs:
+ properties:
+ endpoints:
+ type: string
+ endpointsNamespace:
+ type: string
+ path:
+ type: string
+ readOnly:
+ type: boolean
+ required:
+ - endpoints
+ - path
+ type: object
+ hostPath:
+ properties:
+ path:
+ type: string
+ type:
+ type: string
+ required:
+ - path
+ type: object
+ iscsi:
+ properties:
+ chapAuthDiscovery:
+ type: boolean
+ chapAuthSession:
+ type: boolean
+ fsType:
+ type: string
+ initiatorName:
+ type: string
+ iqn:
+ type: string
+ iscsiInterface:
+ default: default
+ type: string
+ lun:
+ format: int32
+ type: integer
+ portals:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ readOnly:
+ type: boolean
+ secretRef:
+ properties:
+ name:
+ type: string
+ namespace:
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ targetPortal:
+ type: string
+ required:
+ - iqn
+ - lun
+ - targetPortal
+ type: object
+ local:
+ properties:
+ fsType:
+ type: string
+ path:
+ type: string
+ required:
+ - path
+ type: object
+ mountOptions:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ nfs:
+ properties:
+ path:
+ type: string
+ readOnly:
+ type: boolean
+ server:
+ type: string
+ required:
+ - path
+ - server
+ type: object
+ nodeAffinity:
+ properties:
+ required:
+ properties:
+ nodeSelectorTerms:
+ items:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchFields:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ x-kubernetes-map-type: atomic
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - nodeSelectorTerms
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ persistentVolumeReclaimPolicy:
+ type: string
+ photonPersistentDisk:
+ properties:
+ fsType:
+ type: string
+ pdID:
+ type: string
+ required:
+ - pdID
+ type: object
+ portworxVolume:
+ properties:
+ fsType:
+ type: string
+ readOnly:
+ type: boolean
+ volumeID:
+ type: string
+ required:
+ - volumeID
+ type: object
+ quobyte:
+ properties:
+ group:
+ type: string
+ readOnly:
+ type: boolean
+ registry:
+ type: string
+ tenant:
+ type: string
+ user:
+ type: string
+ volume:
+ type: string
+ required:
+ - registry
+ - volume
+ type: object
+ rbd:
+ properties:
+ fsType:
+ type: string
+ image:
+ type: string
+ keyring:
+ default: /etc/ceph/keyring
+ type: string
+ monitors:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ pool:
+ default: rbd
+ type: string
+ readOnly:
+ type: boolean
+ secretRef:
+ properties:
+ name:
+ type: string
+ namespace:
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ user:
+ default: admin
+ type: string
+ required:
+ - image
+ - monitors
+ type: object
+ scaleIO:
+ properties:
+ fsType:
+ default: xfs
+ type: string
+ gateway:
+ type: string
+ protectionDomain:
+ type: string
+ readOnly:
+ type: boolean
+ secretRef:
+ properties:
+ name:
+ type: string
+ namespace:
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ sslEnabled:
+ type: boolean
+ storageMode:
+ default: ThinProvisioned
+ type: string
+ storagePool:
+ type: string
+ system:
+ type: string
+ volumeName:
+ type: string
+ required:
+ - gateway
+ - secretRef
+ - system
+ type: object
+ storageClassName:
+ type: string
+ storageos:
+ properties:
+ fsType:
+ type: string
+ readOnly:
+ type: boolean
+ secretRef:
+ properties:
+ apiVersion:
+ type: string
+ fieldPath:
+ type: string
+ kind:
+ type: string
+ name:
+ type: string
+ namespace:
+ type: string
+ resourceVersion:
+ type: string
+ uid:
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ volumeName:
+ type: string
+ volumeNamespace:
+ type: string
+ type: object
+ volumeAttributesClassName:
+ type: string
+ volumeMode:
+ type: string
+ vsphereVolume:
+ properties:
+ fsType:
+ type: string
+ storagePolicyID:
+ type: string
+ storagePolicyName:
+ type: string
+ volumePath:
+ type: string
+ required:
+ - volumePath
+ type: object
+ type: object
+ storageLimit:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ required:
+ - persistentVolumeClaimSpec
+ - persistentVolumeSpec
+ - storageLimit
+ type: object
+ status:
+ properties:
+ available:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ used:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ type: object
+ served: true
+ storage: true
+---
+apiVersion: apiextensions.k8s.io/v1
+kind: CustomResourceDefinition
+metadata:
+ annotations:
+ controller-gen.kubebuilder.io/version: v0.16.2
+ name: localmodelnodes.serving.kserve.io
+spec:
+ group: serving.kserve.io
+ names:
+ kind: LocalModelNode
+ listKind: LocalModelNodeList
+ plural: localmodelnodes
+ singular: localmodelnode
+ scope: Cluster
+ versions:
+ - name: v1alpha1
+ schema:
+ openAPIV3Schema:
+ properties:
+ apiVersion:
+ type: string
+ kind:
+ type: string
+ metadata:
+ type: object
+ spec:
+ properties:
+ localModels:
+ items:
+ properties:
+ modelName:
+ type: string
+ sourceModelUri:
+ type: string
+ required:
+ - modelName
+ - sourceModelUri
+ type: object
+ type: array
+ required:
+ - localModels
+ type: object
+ status:
+ properties:
+ modelStatus:
+ additionalProperties:
+ enum:
+ - ""
+ - ModelDownloadPending
+ - ModelDownloading
+ - ModelDownloaded
+ - ModelDownloadError
+ type: string
+ type: object
+ type: object
+ type: object
+ served: true
+ storage: true
+ subresources:
+ status: {}
+---
+apiVersion: apiextensions.k8s.io/v1
+kind: CustomResourceDefinition
+metadata:
+ annotations:
+ controller-gen.kubebuilder.io/version: v0.16.2
name: servingruntimes.serving.kserve.io
spec:
group: serving.kserve.io
@@ -18911,11 +27817,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchFields:
items:
properties:
@@ -18927,11 +27835,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
x-kubernetes-map-type: atomic
weight:
@@ -18942,6 +27852,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
properties:
nodeSelectorTerms:
@@ -18958,11 +27869,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchFields:
items:
properties:
@@ -18974,14 +27887,17 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
x-kubernetes-map-type: atomic
type: array
+ x-kubernetes-list-type: atomic
required:
- nodeSelectorTerms
type: object
@@ -19007,17 +27923,29 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
properties:
matchExpressions:
@@ -19031,11 +27959,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -19046,6 +27976,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
type: string
required:
@@ -19059,6 +27990,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
items:
properties:
@@ -19075,17 +28007,29 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
properties:
matchExpressions:
@@ -19099,11 +28043,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -19114,12 +28060,14 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
type: string
required:
- topologyKey
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
podAntiAffinity:
properties:
@@ -19141,17 +28089,29 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
properties:
matchExpressions:
@@ -19165,11 +28125,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -19180,6 +28142,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
type: string
required:
@@ -19193,6 +28156,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
items:
properties:
@@ -19209,17 +28173,29 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
properties:
matchExpressions:
@@ -19233,11 +28209,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -19248,12 +28226,14 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
type: string
required:
- topologyKey
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
type: object
annotations:
@@ -19276,6 +28256,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -19314,6 +28295,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -19342,10 +28324,12 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
items:
properties:
@@ -19360,6 +28344,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -19398,6 +28383,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -19410,12 +28396,16 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
items:
properties:
configMapRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -19426,6 +28416,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -19433,6 +28424,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
type: string
imagePullPolicy:
@@ -19447,6 +28439,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -19464,6 +28457,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -19476,6 +28470,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -19497,6 +28499,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -19514,6 +28517,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -19526,6 +28530,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -19548,6 +28560,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -19558,6 +28571,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -19578,6 +28592,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -19652,6 +28667,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -19662,6 +28678,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -19682,6 +28699,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -19742,6 +28760,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -19772,16 +28792,27 @@ spec:
properties:
allowPrivilegeEscalation:
type: boolean
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
capabilities:
properties:
add:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
type: boolean
@@ -19837,6 +28868,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -19847,6 +28879,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -19867,6 +28900,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -19929,6 +28963,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
items:
properties:
@@ -19940,6 +28977,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -19949,6 +28988,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
type: string
required:
@@ -19961,12 +29003,15 @@ spec:
type: string
grpcEndpoint:
type: string
+ hostIPC:
+ type: boolean
httpDataEndpoint:
type: string
imagePullSecrets:
items:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -20051,10 +29096,12 @@ spec:
diskURI:
type: string
fsType:
+ default: ext4
type: string
kind:
type: string
readOnly:
+ default: false
type: boolean
required:
- diskName
@@ -20078,6 +29125,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
readOnly:
@@ -20087,6 +29135,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -20104,6 +29153,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -20132,7 +29182,9 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
name:
+ default: ""
type: string
optional:
type: boolean
@@ -20147,6 +29199,7 @@ spec:
nodePublishSecretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -20202,6 +29255,7 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
emptyDir:
properties:
@@ -20226,6 +29280,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
dataSource:
properties:
apiGroup:
@@ -20255,18 +29310,6 @@ spec:
type: object
resources:
properties:
- claims:
- items:
- properties:
- name:
- type: string
- required:
- - name
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - name
- x-kubernetes-list-type: map
limits:
additionalProperties:
anyOf:
@@ -20297,11 +29340,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -20310,6 +29355,8 @@ spec:
x-kubernetes-map-type: atomic
storageClassName:
type: string
+ volumeAttributesClassName:
+ type: string
volumeMode:
type: string
volumeName:
@@ -20332,10 +29379,12 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
wwids:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
flexVolume:
properties:
@@ -20352,6 +29401,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -20411,6 +29461,13 @@ spec:
required:
- path
type: object
+ image:
+ properties:
+ pullPolicy:
+ type: string
+ reference:
+ type: string
+ type: object
iscsi:
properties:
chapAuthDiscovery:
@@ -20424,6 +29481,7 @@ spec:
iqn:
type: string
iscsiInterface:
+ default: default
type: string
lun:
format: int32
@@ -20432,11 +29490,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
readOnly:
type: boolean
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -20498,6 +29558,45 @@ spec:
sources:
items:
properties:
+ clusterTrustBundle:
+ properties:
+ labelSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ name:
+ type: string
+ optional:
+ type: boolean
+ path:
+ type: string
+ signerName:
+ type: string
+ required:
+ - path
+ type: object
configMap:
properties:
items:
@@ -20515,7 +29614,9 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
name:
+ default: ""
type: string
optional:
type: boolean
@@ -20561,6 +29662,7 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
secret:
properties:
@@ -20579,7 +29681,9 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
name:
+ default: ""
type: string
optional:
type: boolean
@@ -20599,6 +29703,7 @@ spec:
type: object
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
quobyte:
properties:
@@ -20625,22 +29730,27 @@ spec:
image:
type: string
keyring:
+ default: /etc/ceph/keyring
type: string
monitors:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
pool:
+ default: rbd
type: string
readOnly:
type: boolean
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
user:
+ default: admin
type: string
required:
- image
@@ -20649,6 +29759,7 @@ spec:
scaleIO:
properties:
fsType:
+ default: xfs
type: string
gateway:
type: string
@@ -20659,12 +29770,14 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
sslEnabled:
type: boolean
storageMode:
+ default: ThinProvisioned
type: string
storagePool:
type: string
@@ -20697,6 +29810,7 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
optional:
type: boolean
secretName:
@@ -20711,6 +29825,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -20736,6 +29851,1954 @@ spec:
- name
type: object
type: array
+ workerSpec:
+ properties:
+ affinity:
+ properties:
+ nodeAffinity:
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ items:
+ properties:
+ preference:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchFields:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ x-kubernetes-map-type: atomic
+ weight:
+ format: int32
+ type: integer
+ required:
+ - preference
+ - weight
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ properties:
+ nodeSelectorTerms:
+ items:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchFields:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ x-kubernetes-map-type: atomic
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - nodeSelectorTerms
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ podAffinity:
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ items:
+ properties:
+ podAffinityTerm:
+ properties:
+ labelSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ namespaces:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ type: string
+ required:
+ - topologyKey
+ type: object
+ weight:
+ format: int32
+ type: integer
+ required:
+ - podAffinityTerm
+ - weight
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ items:
+ properties:
+ labelSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ namespaces:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ type: string
+ required:
+ - topologyKey
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ podAntiAffinity:
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ items:
+ properties:
+ podAffinityTerm:
+ properties:
+ labelSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ namespaces:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ type: string
+ required:
+ - topologyKey
+ type: object
+ weight:
+ format: int32
+ type: integer
+ required:
+ - podAffinityTerm
+ - weight
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ items:
+ properties:
+ labelSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ namespaces:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ type: string
+ required:
+ - topologyKey
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ type: object
+ annotations:
+ additionalProperties:
+ type: string
+ type: object
+ containers:
+ items:
+ properties:
+ args:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ env:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ valueFrom:
+ properties:
+ configMapKeyRef:
+ properties:
+ key:
+ type: string
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ fieldRef:
+ properties:
+ apiVersion:
+ type: string
+ fieldPath:
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ resourceFieldRef:
+ properties:
+ containerName:
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ secretKeyRef:
+ properties:
+ key:
+ type: string
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ envFrom:
+ items:
+ properties:
+ configMapRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ prefix:
+ type: string
+ secretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ image:
+ type: string
+ imagePullPolicy:
+ type: string
+ lifecycle:
+ properties:
+ postStart:
+ properties:
+ exec:
+ properties:
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ properties:
+ host:
+ type: string
+ httpHeaders:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ scheme:
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ properties:
+ host:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ preStop:
+ properties:
+ exec:
+ properties:
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ properties:
+ host:
+ type: string
+ httpHeaders:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ scheme:
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ properties:
+ host:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ type: object
+ livenessProbe:
+ properties:
+ exec:
+ properties:
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ format: int32
+ type: integer
+ grpc:
+ properties:
+ port:
+ format: int32
+ type: integer
+ service:
+ default: ""
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ properties:
+ host:
+ type: string
+ httpHeaders:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ scheme:
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ format: int32
+ type: integer
+ periodSeconds:
+ format: int32
+ type: integer
+ successThreshold:
+ format: int32
+ type: integer
+ tcpSocket:
+ properties:
+ host:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ format: int64
+ type: integer
+ timeoutSeconds:
+ format: int32
+ type: integer
+ type: object
+ name:
+ type: string
+ ports:
+ items:
+ properties:
+ containerPort:
+ format: int32
+ type: integer
+ hostIP:
+ type: string
+ hostPort:
+ format: int32
+ type: integer
+ name:
+ type: string
+ protocol:
+ default: TCP
+ type: string
+ required:
+ - containerPort
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - containerPort
+ - protocol
+ x-kubernetes-list-type: map
+ readinessProbe:
+ properties:
+ exec:
+ properties:
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ format: int32
+ type: integer
+ grpc:
+ properties:
+ port:
+ format: int32
+ type: integer
+ service:
+ default: ""
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ properties:
+ host:
+ type: string
+ httpHeaders:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ scheme:
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ format: int32
+ type: integer
+ periodSeconds:
+ format: int32
+ type: integer
+ successThreshold:
+ format: int32
+ type: integer
+ tcpSocket:
+ properties:
+ host:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ format: int64
+ type: integer
+ timeoutSeconds:
+ format: int32
+ type: integer
+ type: object
+ resizePolicy:
+ items:
+ properties:
+ resourceName:
+ type: string
+ restartPolicy:
+ type: string
+ required:
+ - resourceName
+ - restartPolicy
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ resources:
+ properties:
+ claims:
+ items:
+ properties:
+ name:
+ type: string
+ request:
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ limits:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ requests:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ type: object
+ restartPolicy:
+ type: string
+ securityContext:
+ properties:
+ allowPrivilegeEscalation:
+ type: boolean
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
+ capabilities:
+ properties:
+ add:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ drop:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ privileged:
+ type: boolean
+ procMount:
+ type: string
+ readOnlyRootFilesystem:
+ type: boolean
+ runAsGroup:
+ format: int64
+ type: integer
+ runAsNonRoot:
+ type: boolean
+ runAsUser:
+ format: int64
+ type: integer
+ seLinuxOptions:
+ properties:
+ level:
+ type: string
+ role:
+ type: string
+ type:
+ type: string
+ user:
+ type: string
+ type: object
+ seccompProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
+ windowsOptions:
+ properties:
+ gmsaCredentialSpec:
+ type: string
+ gmsaCredentialSpecName:
+ type: string
+ hostProcess:
+ type: boolean
+ runAsUserName:
+ type: string
+ type: object
+ type: object
+ startupProbe:
+ properties:
+ exec:
+ properties:
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ format: int32
+ type: integer
+ grpc:
+ properties:
+ port:
+ format: int32
+ type: integer
+ service:
+ default: ""
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ properties:
+ host:
+ type: string
+ httpHeaders:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ scheme:
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ format: int32
+ type: integer
+ periodSeconds:
+ format: int32
+ type: integer
+ successThreshold:
+ format: int32
+ type: integer
+ tcpSocket:
+ properties:
+ host:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ format: int64
+ type: integer
+ timeoutSeconds:
+ format: int32
+ type: integer
+ type: object
+ stdin:
+ type: boolean
+ stdinOnce:
+ type: boolean
+ terminationMessagePath:
+ type: string
+ terminationMessagePolicy:
+ type: string
+ tty:
+ type: boolean
+ volumeDevices:
+ items:
+ properties:
+ devicePath:
+ type: string
+ name:
+ type: string
+ required:
+ - devicePath
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
+ volumeMounts:
+ items:
+ properties:
+ mountPath:
+ type: string
+ mountPropagation:
+ type: string
+ name:
+ type: string
+ readOnly:
+ type: boolean
+ recursiveReadOnly:
+ type: string
+ subPath:
+ type: string
+ subPathExpr:
+ type: string
+ required:
+ - mountPath
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
+ workingDir:
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ hostIPC:
+ type: boolean
+ imagePullSecrets:
+ items:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ type: array
+ labels:
+ additionalProperties:
+ type: string
+ type: object
+ nodeSelector:
+ additionalProperties:
+ type: string
+ type: object
+ pipelineParallelSize:
+ type: integer
+ tensorParallelSize:
+ type: integer
+ tolerations:
+ items:
+ properties:
+ effect:
+ type: string
+ key:
+ type: string
+ operator:
+ type: string
+ tolerationSeconds:
+ format: int64
+ type: integer
+ value:
+ type: string
+ type: object
+ type: array
+ volumes:
+ items:
+ properties:
+ awsElasticBlockStore:
+ properties:
+ fsType:
+ type: string
+ partition:
+ format: int32
+ type: integer
+ readOnly:
+ type: boolean
+ volumeID:
+ type: string
+ required:
+ - volumeID
+ type: object
+ azureDisk:
+ properties:
+ cachingMode:
+ type: string
+ diskName:
+ type: string
+ diskURI:
+ type: string
+ fsType:
+ default: ext4
+ type: string
+ kind:
+ type: string
+ readOnly:
+ default: false
+ type: boolean
+ required:
+ - diskName
+ - diskURI
+ type: object
+ azureFile:
+ properties:
+ readOnly:
+ type: boolean
+ secretName:
+ type: string
+ shareName:
+ type: string
+ required:
+ - secretName
+ - shareName
+ type: object
+ cephfs:
+ properties:
+ monitors:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ readOnly:
+ type: boolean
+ secretFile:
+ type: string
+ secretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ user:
+ type: string
+ required:
+ - monitors
+ type: object
+ cinder:
+ properties:
+ fsType:
+ type: string
+ readOnly:
+ type: boolean
+ secretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ volumeID:
+ type: string
+ required:
+ - volumeID
+ type: object
+ configMap:
+ properties:
+ defaultMode:
+ format: int32
+ type: integer
+ items:
+ items:
+ properties:
+ key:
+ type: string
+ mode:
+ format: int32
+ type: integer
+ path:
+ type: string
+ required:
+ - key
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ csi:
+ properties:
+ driver:
+ type: string
+ fsType:
+ type: string
+ nodePublishSecretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ readOnly:
+ type: boolean
+ volumeAttributes:
+ additionalProperties:
+ type: string
+ type: object
+ required:
+ - driver
+ type: object
+ downwardAPI:
+ properties:
+ defaultMode:
+ format: int32
+ type: integer
+ items:
+ items:
+ properties:
+ fieldRef:
+ properties:
+ apiVersion:
+ type: string
+ fieldPath:
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ mode:
+ format: int32
+ type: integer
+ path:
+ type: string
+ resourceFieldRef:
+ properties:
+ containerName:
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ required:
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ emptyDir:
+ properties:
+ medium:
+ type: string
+ sizeLimit:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ ephemeral:
+ properties:
+ volumeClaimTemplate:
+ properties:
+ metadata:
+ type: object
+ spec:
+ properties:
+ accessModes:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ dataSource:
+ properties:
+ apiGroup:
+ type: string
+ kind:
+ type: string
+ name:
+ type: string
+ required:
+ - kind
+ - name
+ type: object
+ x-kubernetes-map-type: atomic
+ dataSourceRef:
+ properties:
+ apiGroup:
+ type: string
+ kind:
+ type: string
+ name:
+ type: string
+ namespace:
+ type: string
+ required:
+ - kind
+ - name
+ type: object
+ resources:
+ properties:
+ limits:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ requests:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ type: object
+ selector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ storageClassName:
+ type: string
+ volumeAttributesClassName:
+ type: string
+ volumeMode:
+ type: string
+ volumeName:
+ type: string
+ type: object
+ required:
+ - spec
+ type: object
+ type: object
+ fc:
+ properties:
+ fsType:
+ type: string
+ lun:
+ format: int32
+ type: integer
+ readOnly:
+ type: boolean
+ targetWWNs:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ wwids:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ flexVolume:
+ properties:
+ driver:
+ type: string
+ fsType:
+ type: string
+ options:
+ additionalProperties:
+ type: string
+ type: object
+ readOnly:
+ type: boolean
+ secretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ required:
+ - driver
+ type: object
+ flocker:
+ properties:
+ datasetName:
+ type: string
+ datasetUUID:
+ type: string
+ type: object
+ gcePersistentDisk:
+ properties:
+ fsType:
+ type: string
+ partition:
+ format: int32
+ type: integer
+ pdName:
+ type: string
+ readOnly:
+ type: boolean
+ required:
+ - pdName
+ type: object
+ gitRepo:
+ properties:
+ directory:
+ type: string
+ repository:
+ type: string
+ revision:
+ type: string
+ required:
+ - repository
+ type: object
+ glusterfs:
+ properties:
+ endpoints:
+ type: string
+ path:
+ type: string
+ readOnly:
+ type: boolean
+ required:
+ - endpoints
+ - path
+ type: object
+ hostPath:
+ properties:
+ path:
+ type: string
+ type:
+ type: string
+ required:
+ - path
+ type: object
+ image:
+ properties:
+ pullPolicy:
+ type: string
+ reference:
+ type: string
+ type: object
+ iscsi:
+ properties:
+ chapAuthDiscovery:
+ type: boolean
+ chapAuthSession:
+ type: boolean
+ fsType:
+ type: string
+ initiatorName:
+ type: string
+ iqn:
+ type: string
+ iscsiInterface:
+ default: default
+ type: string
+ lun:
+ format: int32
+ type: integer
+ portals:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ readOnly:
+ type: boolean
+ secretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ targetPortal:
+ type: string
+ required:
+ - iqn
+ - lun
+ - targetPortal
+ type: object
+ name:
+ type: string
+ nfs:
+ properties:
+ path:
+ type: string
+ readOnly:
+ type: boolean
+ server:
+ type: string
+ required:
+ - path
+ - server
+ type: object
+ persistentVolumeClaim:
+ properties:
+ claimName:
+ type: string
+ readOnly:
+ type: boolean
+ required:
+ - claimName
+ type: object
+ photonPersistentDisk:
+ properties:
+ fsType:
+ type: string
+ pdID:
+ type: string
+ required:
+ - pdID
+ type: object
+ portworxVolume:
+ properties:
+ fsType:
+ type: string
+ readOnly:
+ type: boolean
+ volumeID:
+ type: string
+ required:
+ - volumeID
+ type: object
+ projected:
+ properties:
+ defaultMode:
+ format: int32
+ type: integer
+ sources:
+ items:
+ properties:
+ clusterTrustBundle:
+ properties:
+ labelSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ name:
+ type: string
+ optional:
+ type: boolean
+ path:
+ type: string
+ signerName:
+ type: string
+ required:
+ - path
+ type: object
+ configMap:
+ properties:
+ items:
+ items:
+ properties:
+ key:
+ type: string
+ mode:
+ format: int32
+ type: integer
+ path:
+ type: string
+ required:
+ - key
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ downwardAPI:
+ properties:
+ items:
+ items:
+ properties:
+ fieldRef:
+ properties:
+ apiVersion:
+ type: string
+ fieldPath:
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ mode:
+ format: int32
+ type: integer
+ path:
+ type: string
+ resourceFieldRef:
+ properties:
+ containerName:
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ required:
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ secret:
+ properties:
+ items:
+ items:
+ properties:
+ key:
+ type: string
+ mode:
+ format: int32
+ type: integer
+ path:
+ type: string
+ required:
+ - key
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ serviceAccountToken:
+ properties:
+ audience:
+ type: string
+ expirationSeconds:
+ format: int64
+ type: integer
+ path:
+ type: string
+ required:
+ - path
+ type: object
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ quobyte:
+ properties:
+ group:
+ type: string
+ readOnly:
+ type: boolean
+ registry:
+ type: string
+ tenant:
+ type: string
+ user:
+ type: string
+ volume:
+ type: string
+ required:
+ - registry
+ - volume
+ type: object
+ rbd:
+ properties:
+ fsType:
+ type: string
+ image:
+ type: string
+ keyring:
+ default: /etc/ceph/keyring
+ type: string
+ monitors:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ pool:
+ default: rbd
+ type: string
+ readOnly:
+ type: boolean
+ secretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ user:
+ default: admin
+ type: string
+ required:
+ - image
+ - monitors
+ type: object
+ scaleIO:
+ properties:
+ fsType:
+ default: xfs
+ type: string
+ gateway:
+ type: string
+ protectionDomain:
+ type: string
+ readOnly:
+ type: boolean
+ secretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ sslEnabled:
+ type: boolean
+ storageMode:
+ default: ThinProvisioned
+ type: string
+ storagePool:
+ type: string
+ system:
+ type: string
+ volumeName:
+ type: string
+ required:
+ - gateway
+ - secretRef
+ - system
+ type: object
+ secret:
+ properties:
+ defaultMode:
+ format: int32
+ type: integer
+ items:
+ items:
+ properties:
+ key:
+ type: string
+ mode:
+ format: int32
+ type: integer
+ path:
+ type: string
+ required:
+ - key
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ optional:
+ type: boolean
+ secretName:
+ type: string
+ type: object
+ storageos:
+ properties:
+ fsType:
+ type: string
+ readOnly:
+ type: boolean
+ secretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ volumeName:
+ type: string
+ volumeNamespace:
+ type: string
+ type: object
+ vsphereVolume:
+ properties:
+ fsType:
+ type: string
+ storagePolicyID:
+ type: string
+ storagePolicyName:
+ type: string
+ volumePath:
+ type: string
+ required:
+ - volumePath
+ type: object
+ required:
+ - name
+ type: object
+ type: array
+ required:
+ - containers
+ type: object
required:
- containers
type: object
@@ -20750,7 +31813,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
- controller-gen.kubebuilder.io/version: v0.12.0
+ controller-gen.kubebuilder.io/version: v0.16.2
name: trainedmodels.serving.kserve.io
spec:
group: serving.kserve.io
@@ -20867,6 +31930,26 @@ metadata:
name: kserve-controller-manager
namespace: kserve
---
+apiVersion: v1
+kind: ServiceAccount
+metadata:
+ labels:
+ app.kubernetes.io/instance: kserve-localmodel-controller-manager
+ app.kubernetes.io/managed-by: kserve-localmodel-controller-manager
+ app.kubernetes.io/name: kserve-localmodel-controller-manager
+ name: kserve-localmodel-controller-manager
+ namespace: kserve
+---
+apiVersion: v1
+kind: ServiceAccount
+metadata:
+ labels:
+ app.kubernetes.io/instance: kserve-localmodelnode-agent
+ app.kubernetes.io/managed-by: kserve-localmodelnode-agent
+ app.kubernetes.io/name: kserve-localmodelnode-agent
+ name: kserve-localmodelnode-agent
+ namespace: kserve
+---
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
@@ -20911,9 +31994,203 @@ rules:
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
+metadata:
+ name: kserve-localmodel-manager-role
+rules:
+- apiGroups:
+ - ""
+ resources:
+ - configmaps
+ verbs:
+ - get
+- apiGroups:
+ - ""
+ resources:
+ - nodes
+ verbs:
+ - get
+ - list
+ - watch
+- apiGroups:
+ - ""
+ resources:
+ - nodes/status
+ verbs:
+ - get
+ - watch
+- apiGroups:
+ - ""
+ resources:
+ - persistentvolumeclaims
+ - persistentvolumes
+ verbs:
+ - create
+ - delete
+ - get
+ - list
+ - patch
+ - update
+ - watch
+- apiGroups:
+ - serving.kserve.io
+ resources:
+ - inferenceservices
+ - localmodelnodegroups
+ verbs:
+ - get
+ - list
+ - watch
+- apiGroups:
+ - serving.kserve.io
+ resources:
+ - localmodelcaches
+ - localmodelnodes
+ verbs:
+ - create
+ - delete
+ - get
+ - list
+ - patch
+ - update
+ - watch
+- apiGroups:
+ - serving.kserve.io
+ resources:
+ - localmodelcaches/status
+ verbs:
+ - get
+ - patch
+ - update
+- apiGroups:
+ - serving.kserve.io
+ resources:
+ - localmodelnodes/status
+ verbs:
+ - get
+ - watch
+---
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
+metadata:
+ name: kserve-localmodelnode-agent-role
+rules:
+- apiGroups:
+ - ""
+ resources:
+ - configmaps
+ verbs:
+ - get
+- apiGroups:
+ - ""
+ resources:
+ - nodes
+ verbs:
+ - get
+ - list
+ - watch
+- apiGroups:
+ - ""
+ resources:
+ - nodes/status
+ verbs:
+ - get
+ - watch
+- apiGroups:
+ - batch
+ resources:
+ - jobs
+ verbs:
+ - create
+ - delete
+ - get
+ - list
+ - patch
+ - update
+ - watch
+- apiGroups:
+ - batch
+ resources:
+ - jobs/status
+ verbs:
+ - get
+- apiGroups:
+ - serving.kserve.io
+ resources:
+ - clusterstoragecontainers
+ verbs:
+ - get
+ - list
+ - watch
+- apiGroups:
+ - serving.kserve.io
+ resources:
+ - localmodelnodegroups
+ verbs:
+ - get
+ - list
+- apiGroups:
+ - serving.kserve.io
+ resources:
+ - localmodelnodes
+ verbs:
+ - create
+ - delete
+ - get
+ - list
+ - patch
+ - update
+ - watch
+- apiGroups:
+ - serving.kserve.io
+ resources:
+ - localmodelnodes/status
+ verbs:
+ - get
+ - patch
+ - update
+---
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
metadata:
name: kserve-manager-role
rules:
+- apiGroups:
+ - ""
+ resources:
+ - configmaps
+ verbs:
+ - create
+ - get
+ - update
+- apiGroups:
+ - ""
+ resources:
+ - events
+ - services
+ verbs:
+ - create
+ - delete
+ - get
+ - list
+ - patch
+ - update
+ - watch
+- apiGroups:
+ - ""
+ resources:
+ - namespaces
+ - pods
+ verbs:
+ - get
+ - list
+ - watch
+- apiGroups:
+ - ""
+ resources:
+ - secrets
+ - serviceaccounts
+ verbs:
+ - get
- apiGroups:
- admissionregistration.k8s.io
resources:
@@ -20952,17 +32229,9 @@ rules:
- update
- watch
- apiGroups:
- - ""
+ - gateway.networking.k8s.io
resources:
- - configmaps
- verbs:
- - create
- - get
- - update
-- apiGroups:
- - ""
- resources:
- - events
+ - httproutes
verbs:
- create
- delete
@@ -20972,41 +32241,10 @@ rules:
- update
- watch
- apiGroups:
- - ""
+ - keda.sh
resources:
- - namespaces
- verbs:
- - get
- - list
- - watch
-- apiGroups:
- - ""
- resources:
- - pods
- verbs:
- - get
- - list
- - watch
-- apiGroups:
- - ""
- resources:
- - secrets
- verbs:
- - create
- - delete
- - get
- - patch
- - update
-- apiGroups:
- - ""
- resources:
- - serviceaccounts
- verbs:
- - get
-- apiGroups:
- - ""
- resources:
- - services
+ - scaledobjects
+ - scaledobjects/finalizers
verbs:
- create
- delete
@@ -21015,21 +32253,18 @@ rules:
- patch
- update
- watch
+- apiGroups:
+ - keda.sh
+ resources:
+ - scaledobjects/status
+ verbs:
+ - get
+ - patch
+ - update
- apiGroups:
- networking.istio.io
resources:
- virtualservices
- verbs:
- - create
- - delete
- - get
- - list
- - patch
- - update
- - watch
-- apiGroups:
- - networking.istio.io
- resources:
- virtualservices/finalizers
verbs:
- create
@@ -21060,9 +32295,10 @@ rules:
- update
- watch
- apiGroups:
- - serving.knative.dev
+ - opentelemetry.io
resources:
- - services
+ - opentelemetrycollectors
+ - opentelemetrycollectors/finalizers
verbs:
- create
- delete
@@ -21071,9 +32307,18 @@ rules:
- patch
- update
- watch
+- apiGroups:
+ - opentelemetry.io
+ resources:
+ - opentelemetrycollectors/status
+ verbs:
+ - get
+ - patch
+ - update
- apiGroups:
- serving.knative.dev
resources:
+ - services
- services/finalizers
verbs:
- create
@@ -21096,100 +32341,13 @@ rules:
resources:
- clusterservingruntimes
- clusterservingruntimes/finalizers
- verbs:
- - create
- - delete
- - get
- - list
- - patch
- - update
- - watch
-- apiGroups:
- - serving.kserve.io
- resources:
- - clusterservingruntimes/status
- verbs:
- - get
- - patch
- - update
-- apiGroups:
- - serving.kserve.io
- resources:
- clusterstoragecontainers
- verbs:
- - create
- - delete
- - get
- - list
- - patch
- - update
- - watch
-- apiGroups:
- - serving.kserve.io
- resources:
- inferencegraphs
- inferencegraphs/finalizers
- verbs:
- - create
- - delete
- - get
- - list
- - patch
- - update
- - watch
-- apiGroups:
- - serving.kserve.io
- resources:
- - inferencegraphs/status
- verbs:
- - get
- - patch
- - update
-- apiGroups:
- - serving.kserve.io
- resources:
- inferenceservices
- inferenceservices/finalizers
- verbs:
- - create
- - delete
- - get
- - list
- - patch
- - update
- - watch
-- apiGroups:
- - serving.kserve.io
- resources:
- - inferenceservices/status
- verbs:
- - get
- - patch
- - update
-- apiGroups:
- - serving.kserve.io
- resources:
- servingruntimes
- servingruntimes/finalizers
- verbs:
- - create
- - delete
- - get
- - list
- - patch
- - update
- - watch
-- apiGroups:
- - serving.kserve.io
- resources:
- - servingruntimes/status
- verbs:
- - get
- - patch
- - update
-- apiGroups:
- - serving.kserve.io
- resources:
- trainedmodels
verbs:
- create
@@ -21202,11 +32360,23 @@ rules:
- apiGroups:
- serving.kserve.io
resources:
+ - clusterservingruntimes/status
+ - inferencegraphs/status
+ - inferenceservices/status
+ - servingruntimes/status
- trainedmodels/status
verbs:
- get
- patch
- update
+- apiGroups:
+ - serving.kserve.io
+ resources:
+ - localmodelcaches
+ verbs:
+ - get
+ - list
+ - watch
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
@@ -21242,6 +32412,32 @@ subjects:
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
+metadata:
+ name: kserve-localmodel-manager-rolebinding
+roleRef:
+ apiGroup: rbac.authorization.k8s.io
+ kind: ClusterRole
+ name: kserve-localmodel-manager-role
+subjects:
+- kind: ServiceAccount
+ name: kserve-localmodel-controller-manager
+ namespace: kserve
+---
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRoleBinding
+metadata:
+ name: kserve-localmodelnode-agent-rolebinding
+roleRef:
+ apiGroup: rbac.authorization.k8s.io
+ kind: ClusterRole
+ name: kserve-localmodelnode-agent-role
+subjects:
+- kind: ServiceAccount
+ name: kserve-localmodelnode-agent
+ namespace: kserve
+---
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRoleBinding
metadata:
name: kserve-manager-rolebinding
roleRef:
@@ -21282,30 +32478,60 @@ data:
image contains the default Art explainer serving runtime image uri.\n \"image\"
: \"kserve/art-explainer\",\n \n # defautltImageVersion contains the
Art explainer serving runtime default image version.\n \"defaultImageVersion\":
- \"latest\"\n }\n }\n \n # ====================================== STORAGE
- INITIALIZER CONFIGURATION ======================================\n # Example\n
- storageInitializer: |-\n {\n \"image\" : \"kserve/storage-initializer:v0.13.0\",\n
- \ \"memoryRequest\": \"100Mi\",\n \"memoryLimit\": \"1Gi\",\n \"cpuRequest\":
- \"100m\",\n \"cpuLimit\": \"1\",\n \"caBundleConfigMapName\": \"\",\n
- \ \"caBundleVolumeMountPath\": \"/etc/ssl/custom-certs\",\n \"enableDirectPvcVolumeMount\":
- false,\n \"enableModelcar\": false,\n \"cpuModelcar\": \"10m\",\n
- \ \"memoryModelcar\": \"15Mi\"\n }\n storageInitializer: |-\n {\n #
- image contains the default storage initializer image uri.\n \"image\" :
- \"kserve/storage-initializer:v0.13.0\",\n \n # memoryRequest is the
- requests.memory to set for the storage initializer init container.\n \"memoryRequest\":
- \"100Mi\",\n \n # memoryLimit is the limits.memory to set for the storage
- initializer init container.\n \"memoryLimit\": \"1Gi\",\n \n #
- cpuRequest is the requests.cpu to set for the storage initializer init container.\n
- \ \"cpuRequest\": \"100m\",\n \n # cpuLimit is the limits.cpu
- to set for the storage initializer init container.\n \"cpuLimit\": \"1\",\n
- \ \n # caBundleConfigMapName is the ConfigMap will be copied to a user
- namespace for the storage initializer init container.\n \"caBundleConfigMapName\":
- \"\",\n\n # caBundleVolumeMountPath is the mount point for the configmap
- set by caBundleConfigMapName for the storage initializer init container.\n \"caBundleVolumeMountPath\":
- \"/etc/ssl/custom-certs\",\n\n # enableDirectPvcVolumeMount controls whether
- users can mount pvc volumes directly.\n # if pvc volume is provided in storageuri
- then the pvc volume is directly mounted to /mnt/models in the user container.\n
- \ # rather than symlink it to a shared volume. For more info see https://github.com/kserve/kserve/issues/2737\n
+ \"latest\"\n }\n }\n# ====================================== ISVC CONFIGURATION
+ ======================================\n# Example \n inferenceService: |-\n
+ \ {\n \"serviceAnnotationDisallowedList\": [\n \"my.custom.annotation/1\"
+ \ \n ],\n \"serviceLabelDisallowedList\": [\n \"my.custom.label.1\"
+ \ \n ]\n }\n# Example of isvc configuration\ninferenceService: |-\n {\n
+ \ # ServiceAnnotationDisallowedList is a list of annotations that are not allowed
+ to be propagated to Knative \n # revisions, which prevents the reconciliation
+ loop to be triggered if the annotations is \n # configured here are used.\n
+ \ # Default values are:\n # \"autoscaling.knative.dev/min-scale\",\n #
+ \ \"autoscaling.knative.dev/max-scale\",\n # \"internal.serving.kserve.io/storage-initializer-sourceuri\",\n
+ \ # \"kubectl.kubernetes.io/last-applied-configuration\"\n # Any new value
+ will be appended to the list.\n \"serviceAnnotationDisallowedList\": [\n \"my.custom.annotation/1\"
+ \ \n ],\n # ServiceLabelDisallowedList is a list of labels that are not
+ allowed to be propagated to Knative revisions\n # which prevents the reconciliation
+ loop to be triggered if the labels is configured here are used.\n \"serviceLabelDisallowedList\":
+ [\n \"my.custom.label.1\" \n ]\n } \n# ======================================
+ MultiNode CONFIGURATION ======================================\n# Example \nmultiNode:
+ |-\n {\n \"customGPUResourceTypeList\": [\n \"custom.com/gpu\"\n ]\n
+ \ }\n# Example of multinode configuration\nmultiNode: |-\n { \n # CustomGPUResourceTypeList
+ is a list of custom GPU resource types intended to identify the GPU type of a
+ resource,\n # not to restrict the user from using a specific GPU type.\n #
+ The MultiNode runtime pod will dynamically add GPU resources based on the registered
+ GPU types.\n \"customGPUResourceTypeList\": [\n \"custom.com/gpu\"\n ]\n
+ \ } \n # ====================================== OTelCollector CONFIGURATION ======================================\n
+ # Example\n opentelemetryCollector: |-\n {\n # scrapeInterval is the interval
+ at which the OpenTelemetry Collector will scrape the metrics.\n \"scrapeInterval\":
+ \"5s\",\n # metricScalerEndpoint is the endpoint from which the KEDA's ScaledObject
+ will scrape the metrics.\n \"metricScalerEndpoint\": \"keda-otel-scaler.keda.svc:4318\",\n
+ \ # metricReceiverEndpoint is the endpoint from which the OpenTelemetry Collector
+ will scrape the metrics.\n \"metricReceiverEndpoint\": \"keda-otel-scaler.keda.svc:4317\"\n
+ \ }\n \n # ====================================== STORAGE INITIALIZER CONFIGURATION
+ ======================================\n # Example\n storageInitializer: |-\n
+ \ {\n \"image\" : \"kserve/storage-initializer:v0.15.0\",\n \"memoryRequest\":
+ \"100Mi\",\n \"memoryLimit\": \"1Gi\",\n \"cpuRequest\": \"100m\",\n
+ \ \"cpuLimit\": \"1\",\n \"caBundleConfigMapName\": \"\",\n \"caBundleVolumeMountPath\":
+ \"/etc/ssl/custom-certs\",\n \"enableDirectPvcVolumeMount\": false,\n \"enableModelcar\":
+ false,\n \"cpuModelcar\": \"10m\",\n \"memoryModelcar\": \"15Mi\"\n
+ \ }\n storageInitializer: |-\n {\n # image contains the default storage
+ initializer image uri.\n \"image\" : \"kserve/storage-initializer:v0.15.0\",\n
+ \ \n # memoryRequest is the requests.memory to set for the storage
+ initializer init container.\n \"memoryRequest\": \"100Mi\",\n \n #
+ memoryLimit is the limits.memory to set for the storage initializer init container.\n
+ \ \"memoryLimit\": \"1Gi\",\n \n # cpuRequest is the requests.cpu
+ to set for the storage initializer init container.\n \"cpuRequest\": \"100m\",\n
+ \ \n # cpuLimit is the limits.cpu to set for the storage initializer
+ init container.\n \"cpuLimit\": \"1\",\n \n # caBundleConfigMapName
+ is the ConfigMap will be copied to a user namespace for the storage initializer
+ init container.\n \"caBundleConfigMapName\": \"\",\n\n # caBundleVolumeMountPath
+ is the mount point for the configmap set by caBundleConfigMapName for the storage
+ initializer init container.\n \"caBundleVolumeMountPath\": \"/etc/ssl/custom-certs\",\n\n
+ \ # enableDirectPvcVolumeMount controls whether users can mount pvc volumes
+ directly.\n # if pvc volume is provided in storageuri then the pvc volume
+ is directly mounted to /mnt/models in the user container.\n # rather than
+ symlink it to a shared volume. For more info see https://github.com/kserve/kserve/issues/2737\n
\ \"enableDirectPvcVolumeMount\": true,\n\n # enableModelcar enabled
allows you to directly access an OCI container image by\n # using a source
URL with an \"oci://\" schema.\n \"enableModelcar\": false,\n\n #
@@ -21368,29 +32594,45 @@ data:
specifies the path to a certificate bundle to use for HTTPS certificate validation.\n
\ \"s3CABundle\": \"\"\n }\n }\n \n # ======================================
INGRESS CONFIGURATION ======================================\n # Example\n ingress:
- |-\n {\n \"ingressGateway\" : \"knative-serving/knative-ingress-gateway\",\n
- \ \"ingressService\" : \"istio-ingressgateway.istio-system.svc.cluster.local\",\n
+ |-\n { \n \"enableGatewayApi\": false,\n \"kserveIngressGateway\":
+ \"kserve/kserve-ingress-gateway\",\n \"ingressGateway\" : \"knative-serving/knative-ingress-gateway\",\n
\ \"localGateway\" : \"knative-serving/knative-local-gateway\",\n \"localGatewayService\"
: \"knative-local-gateway.istio-system.svc.cluster.local\",\n \"ingressDomain\"
\ : \"example.com\",\n \"additionalIngressDomains\": [\"additional-example.com\",
\"additional-example-1.com\"],\n \"ingressClassName\" : \"istio\",\n \"domainTemplate\":
\"{{ .Name }}-{{ .Namespace }}.{{ .IngressDomain }}\",\n \"urlScheme\":
\"http\",\n \"disableIstioVirtualHost\": false,\n \"disableIngressCreation\":
- false\n }\n ingress: |-\n {\n # ingressGateway specifies the ingress
+ false\n }\n ingress: |-\n { \n # enableGatewayApi specifies whether
+ to use Gateway API instead of Ingress to serve external traffic.\n \"enableGatewayApi\":
+ false,\n\n # KServe implements [Gateway API](https://gateway-api.sigs.k8s.io/)
+ to serve external traffic. \n # By default, KServe configures a default
+ gateway to serve external traffic.\n # But, KServe can be configured to
+ use a custom gateway by modifying this configuration.\n # The gateway should
+ be specified in format /\n # NOTE: This
+ configuration only applicable for raw deployment.\n \"kserveIngressGateway\":
+ \"kserve/kserve-ingress-gateway\",\n \n # ingressGateway specifies the ingress
gateway to serve external traffic.\n # The gateway should be specified in
format /\n # NOTE: This configuration only
applicable for serverless deployment with Istio configured as network layer.\n
\ \"ingressGateway\" : \"knative-serving/knative-ingress-gateway\",\n \n
- \ # ingressService specifies the hostname of the ingress service.\n #
- NOTE: This configuration only applicable for serverless deployment with Istio
- configured as network layer.\n \"ingressService\" : \"istio-ingressgateway.istio-system.svc.cluster.local\",\n
- \n # localGateway specifies the gateway which handles the network traffic
- within the cluster.\n # NOTE: This configuration only applicable for serverless
- deployment with Istio configured as network layer.\n \"localGateway\" :
- \"knative-serving/knative-local-gateway\",\n \n # localGatewayService specifies
- the hostname of the local gateway service.\n # NOTE: This configuration
+ \ # knativeLocalGatewayService specifies the hostname of the Knative's local
+ gateway service.\n # The default KServe configurations are re-using the
+ Istio local gateways for Knative. In this case, this\n # knativeLocalGatewayService
+ field can be left unset. When unset, the value of \"localGatewayService\" will
+ be used.\n # However, sometimes it may be better to have local gateways
+ specifically for KServe (e.g. when enabling strict mTLS in Istio).\n # Under
+ such setups where KServe is needed to have its own local gateways, the values
+ of the \"localGateway\" and\n # \"localGatewayService\" should point to
+ the KServe local gateways. Then, this knativeLocalGatewayService field\n #
+ should point to the Knative's local gateway service.\n # NOTE: This configuration
only applicable for serverless deployment with Istio configured as network layer.\n
- \ \"localGatewayService\" : \"knative-local-gateway.istio-system.svc.cluster.local\",\n
+ \ \"knativeLocalGatewayService\": \"\",\n \n # localGateway specifies
+ the gateway which handles the network traffic within the cluster.\n # NOTE:
+ This configuration only applicable for serverless deployment with Istio configured
+ as network layer.\n \"localGateway\" : \"knative-serving/knative-local-gateway\",\n
+ \n # localGatewayService specifies the hostname of the local gateway service.\n
+ \ # NOTE: This configuration only applicable for serverless deployment with
+ Istio configured as network layer.\n \"localGatewayService\" : \"knative-local-gateway.istio-system.svc.cluster.local\",\n
\n # ingressDomain specifies the domain name which is used for creating
the url.\n # If ingressDomain is empty then example.com is used as default
domain.\n # NOTE: This configuration only applicable for raw deployment.\n
@@ -21430,11 +32672,11 @@ data:
NOTE: This configuration only applicable to serverless deployment.\n \"pathTemplate\":
\"/serving/{{ .Namespace }}/{{ .Name }}\"\n }\n \n # ======================================
LOGGER CONFIGURATION ======================================\n # Example\n logger:
- |-\n {\n \"image\" : \"kserve/agent:v0.13.0\",\n \"memoryRequest\":
+ |-\n {\n \"image\" : \"kserve/agent:v0.15.0\",\n \"memoryRequest\":
\"100Mi\",\n \"memoryLimit\": \"1Gi\",\n \"cpuRequest\": \"100m\",\n
\ \"cpuLimit\": \"1\",\n \"defaultUrl\": \"http://default-broker\"\n
\ }\n logger: |-\n {\n # image contains the default logger image uri.\n
- \ \"image\" : \"kserve/agent:v0.13.0\",\n \n # memoryRequest is the
+ \ \"image\" : \"kserve/agent:v0.15.0\",\n \n # memoryRequest is the
requests.memory to set for the logger container.\n \"memoryRequest\": \"100Mi\",\n
\ \n # memoryLimit is the limits.memory to set for the logger container.\n
\ \"memoryLimit\": \"1Gi\",\n \n # cpuRequest is the requests.cpu
@@ -21443,11 +32685,11 @@ data:
\"1\",\n \n # defaultUrl specifies the default logger url. If logger
is not specified in the resource this url is used.\n \"defaultUrl\": \"http://default-broker\"\n
\ }\n \n # ====================================== BATCHER CONFIGURATION ======================================\n
- # Example\n batcher: |-\n {\n \"image\" : \"kserve/agent:v0.13.0\",\n \"memoryRequest\":
+ # Example\n batcher: |-\n {\n \"image\" : \"kserve/agent:v0.15.0\",\n \"memoryRequest\":
\"1Gi\",\n \"memoryLimit\": \"1Gi\",\n \"cpuRequest\": \"1\",\n \"cpuLimit\":
\"1\",\n \"maxBatchSize\": \"32\",\n \"maxLatency\": \"5000\"\n }\n
batcher: |-\n {\n # image contains the default batcher image uri.\n \"image\"
- : \"kserve/agent:v0.13.0\",\n \n # memoryRequest is the requests.memory
+ : \"kserve/agent:v0.15.0\",\n \n # memoryRequest is the requests.memory
to set for the batcher container.\n \"memoryRequest\": \"1Gi\",\n \n #
memoryLimit is the limits.memory to set for the batcher container.\n \"memoryLimit\":
\"1Gi\",\n \n # cpuRequest is the requests.cpu to set for the batcher
@@ -21457,10 +32699,10 @@ data:
\ # maxLatency is the default maximum latency in milliseconds for batcher
to wait and collect the batch.\n \"maxLatency\": \"5000\"\n }\n \n # ======================================
AGENT CONFIGURATION ======================================\n # Example\n agent:
- |-\n {\n \"image\" : \"kserve/agent:v0.13.0\",\n \"memoryRequest\":
+ |-\n {\n \"image\" : \"kserve/agent:v0.15.0\",\n \"memoryRequest\":
\"100Mi\",\n \"memoryLimit\": \"1Gi\",\n \"cpuRequest\": \"100m\",\n
\ \"cpuLimit\": \"1\"\n }\n agent: |-\n {\n # image contains the
- default agent image uri.\n \"image\" : \"kserve/agent:v0.13.0\",\n \n #
+ default agent image uri.\n \"image\" : \"kserve/agent:v0.15.0\",\n \n #
memoryRequest is the requests.memory to set for the agent container.\n \"memoryRequest\":
\"100Mi\",\n \n # memoryLimit is the limits.memory to set for the agent
container.\n \"memoryLimit\": \"1Gi\",\n \n # cpuRequest is
@@ -21468,12 +32710,13 @@ data:
\ \n # cpuLimit is the limits.cpu to set for the agent container.\n
\ \"cpuLimit\": \"1\"\n }\n \n # ======================================
ROUTER CONFIGURATION ======================================\n # Example\n router:
- |-\n {\n \"image\" : \"kserve/router:v0.13.0\",\n \"memoryRequest\":
+ |-\n {\n \"image\" : \"kserve/router:v0.15.0\",\n \"memoryRequest\":
\"100Mi\",\n \"memoryLimit\": \"1Gi\",\n \"cpuRequest\": \"100m\",\n
\ \"cpuLimit\": \"1\",\n \"headers\": {\n \"propagate\": []\n
- \ }\n }\n # router is the implementation of inference graph.\n router:
- |-\n {\n # image contains the default router image uri.\n \"image\"
- : \"kserve/router:v0.13.0\",\n \n # memoryRequest is the requests.memory
+ \ },\n \"imagePullPolicy\": \"IfNotPresent\",\n \"imagePullSecrets\":
+ [\"docker-secret\"]\n }\n # router is the implementation of inference graph.\n
+ router: |-\n {\n # image contains the default router image uri.\n \"image\"
+ : \"kserve/router:v0.15.0\",\n \n # memoryRequest is the requests.memory
to set for the router container.\n \"memoryRequest\": \"100Mi\",\n \n
\ # memoryLimit is the limits.memory to set for the router container.\n \"memoryLimit\":
\"1Gi\",\n \n # cpuRequest is the requests.cpu to set for the router
@@ -21484,19 +32727,28 @@ data:
regex patterns]\n # (https://pkg.go.dev/regexp/syntax@go1.21.3#hdr-Syntax)
to propagate multiple headers.\n \"headers\": {\n \"propagate\":
[\n \"Authorization\",\n \"Test-Header-*\",\n \"*Trace-Id*\"\n
- \ ]\n }\n }\n \n # ====================================== DEPLOYMENT
- CONFIGURATION ======================================\n # Example\n deploy: |-\n
- \ {\n \"defaultDeploymentMode\": \"Serverless\"\n }\n deploy: |-\n {\n
- \ # defaultDeploymentMode specifies the default deployment mode of the kserve.
- The supported values are\n # Serverless, RawDeployment and ModelMesh. Users
- can override the deployment mode at service level\n # by adding the annotation
- serving.kserve.io/deploymentMode.For more info on deployment mode visit\n #
- Serverless https://kserve.github.io/website/master/admin/serverless/serverless/\n
+ \ ]\n }\n\n # imagePullPolicy specifies when the router image
+ should be pulled from registry.\n \"imagePullPolicy\": \"IfNotPresent\",\n
+ \ \n # # imagePullSecrets specifies the list of secrets to be used
+ for pulling the router image from registry.\n # https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/\n
+ \ \"imagePullSecrets\": [\"docker-secret\"]\n }\n \n # ======================================
+ DEPLOYMENT CONFIGURATION ======================================\n # Example\n
+ deploy: |-\n {\n \"defaultDeploymentMode\": \"Serverless\"\n }\n deploy:
+ |-\n {\n # defaultDeploymentMode specifies the default deployment mode of
+ the kserve. The supported values are\n # Serverless, RawDeployment and ModelMesh.
+ Users can override the deployment mode at service level\n # by adding the
+ annotation serving.kserve.io/deploymentMode.For more info on deployment mode visit\n
+ \ # Serverless https://kserve.github.io/website/master/admin/serverless/serverless/\n
\ # RawDeployment https://kserve.github.io/website/master/admin/kubernetes_deployment/\n
\ # ModelMesh https://kserve.github.io/website/master/admin/modelmesh/\n \"defaultDeploymentMode\":
- \"Serverless\"\n }\n \n # ====================================== METRICS CONFIGURATION
- ======================================\n # Example\n metricsAggregator: |-\n {\n
- \ \"enableMetricAggregation\": \"false\",\n \"enablePrometheusScraping\"
+ \"Serverless\"\n }\n\n # ====================================== SERVICE CONFIGURATION
+ ======================================\n # Example\n service: |-\n {\n \"serviceClusterIPNone\":
+ \ false\n }\n service: |-\n {\n # ServiceClusterIPNone is a boolean flag
+ to indicate if the service should have a clusterIP set to None.\n # If the
+ DeploymentMode is Raw, the default value for ServiceClusterIPNone if not set is
+ false\n # \"serviceClusterIPNone\": false\n }\n\n # ======================================
+ METRICS CONFIGURATION ======================================\n # Example\n metricsAggregator:
+ |-\n {\n \"enableMetricAggregation\": \"false\",\n \"enablePrometheusScraping\"
: \"false\"\n }\n # For more info see https://github.com/kserve/kserve/blob/master/qpext/README.md\n
metricsAggregator: |-\n {\n # enableMetricAggregation configures metric
aggregation annotation. This adds the annotation serving.kserve.io/enable-metric-aggregation
@@ -21509,10 +32761,36 @@ data:
are added to the pod. If serving.kserve.io/enable-metric-aggregation is false,\n
\ # the prometheus port is set with the default prometheus scraping port 9090,
otherwise the prometheus port annotation is set with the metric aggregation port.\n
- \ \"enablePrometheusScraping\" : \"false\"\n }"
+ \ \"enablePrometheusScraping\" : \"false\"\n }\n \n # ======================================
+ LOCALMODEL CONFIGURATION ======================================\n # Example\n
+ localModel: |-\n {\n \"enabled\": false,\n # jobNamespace specifies
+ the namespace where the download job will be created.\n \"jobNamespace\":
+ \"kserve-localmodel-jobs\",\n # defaultJobImage specifies the default image
+ used for the download job.\n \"defaultJobImage\" : \"kserve/storage-initializer:v0.15.0\",\n
+ \ # Kubernetes modifies the filesystem group ID on the attached volume.\n \"fsGroup\":
+ 1000,\n # TTL for the download job after it is finished.\n \"jobTTLSecondsAfterFinished\":
+ 3600,\n # The frequency at which the local model agent reconciles the local
+ models\n # This is to detect if models are missing from local disk\n \"reconcilationFrequencyInSecs\":
+ 60,\n # This is to disable localmodel pv and pvc management for namespaces
+ without isvcs\n \"disableVolumeManagement\": false\n }\n \n # ======================================
+ LOCALMODEL CONFIGURATION ======================================\n # Example\n
+ inferenceservice: |-\n {\n \"resource\": {\n \"cpuLimit\": \"1\",\n
+ \ \"memoryLimit\": \"2Gi\",\n \"cpuRequest\": \"1\",\n \"memoryRequest\":
+ \"2Gi\"\n }\n }\n inferenceservice: |-\n {\n # resource contains
+ the default resource configuration for the inference service.\n # you can
+ override this configuration by specifying the resources in the inference service
+ yaml.\n # If you want to unbound the resource (limits and requests), you
+ can set the value to null or \"\" \n # or just remove the specific field
+ from the config.\n \"resource\": {\n # cpuLimit is the limits.cpu
+ to set for the inference service.\n \"cpuLimit\": \"1\",\n \n
+ \ # memoryLimit is the limits.memory to set for the inference service.\n
+ \ \"memoryLimit\": \"2Gi\",\n \n # cpuRequest is the
+ requests.cpu to set for the inference service.\n \"cpuRequest\": \"1\",\n
+ \ \n # memoryRequest is the requests.memory to set for the inference
+ service.\n \"memoryRequest\": \"2Gi\"\n }\n }"
agent: |-
{
- "image" : "kserve/agent:v0.13.0",
+ "image" : "kserve/agent:v0.15.0",
"memoryRequest": "100Mi",
"memoryLimit": "1Gi",
"cpuRequest": "100m",
@@ -21520,7 +32798,7 @@ data:
}
batcher: |-
{
- "image" : "kserve/agent:v0.13.0",
+ "image" : "kserve/agent:v0.15.0",
"memoryRequest": "1Gi",
"memoryLimit": "1Gi",
"cpuRequest": "1",
@@ -21559,22 +32837,32 @@ data:
"defaultImageVersion": "latest"
}
}
- ingress: |-
+ inferenceService: |-
{
- "ingressGateway" : "knative-serving/knative-ingress-gateway",
- "ingressService" : "istio-ingressgateway.istio-system.svc.cluster.local",
- "localGateway" : "knative-serving/knative-local-gateway",
- "localGatewayService" : "knative-local-gateway.istio-system.svc.cluster.local",
- "ingressDomain" : "example.com",
- "ingressClassName" : "istio",
- "domainTemplate": "{{ .Name }}-{{ .Namespace }}.{{ .IngressDomain }}",
- "urlScheme": "http",
- "disableIstioVirtualHost": false,
- "disableIngressCreation": false
+ "resource": {
+ "cpuLimit": "1",
+ "memoryLimit": "2Gi",
+ "cpuRequest": "1",
+ "memoryRequest": "2Gi"
+ }
+ }
+ ingress: "{ \n \"enableGatewayApi\": false,\n \"kserveIngressGateway\":
+ \"kserve/kserve-ingress-gateway\",\n \"ingressGateway\" : \"knative-serving/knative-ingress-gateway\",\n
+ \ \"localGateway\" : \"knative-serving/knative-local-gateway\",\n \"localGatewayService\"
+ : \"knative-local-gateway.istio-system.svc.cluster.local\",\n \"ingressDomain\"
+ \ : \"example.com\",\n \"ingressClassName\" : \"istio\",\n \"domainTemplate\":
+ \"{{ .Name }}-{{ .Namespace }}.{{ .IngressDomain }}\",\n \"urlScheme\": \"http\",\n
+ \ \"disableIstioVirtualHost\": false,\n \"disableIngressCreation\": false\n}"
+ localModel: |-
+ {
+ "enabled": false,
+ "jobNamespace": "kserve-localmodel-jobs",
+ "defaultJobImage" : "kserve/storage-initializer:v0.15.0",
+ "fsGroup": 1000
}
logger: |-
{
- "image" : "kserve/agent:v0.13.0",
+ "image" : "kserve/agent:v0.15.0",
"memoryRequest": "100Mi",
"memoryLimit": "1Gi",
"cpuRequest": "100m",
@@ -21586,17 +32874,28 @@ data:
"enableMetricAggregation": "false",
"enablePrometheusScraping" : "false"
}
+ opentelemetryCollector: |-
+ {
+ "scrapeInterval": "5s",
+ "metricReceiverEndpoint": "keda-otel-scaler.keda.svc:4317",
+ "metricScalerEndpoint": "keda-otel-scaler.keda.svc:4318"
+ }
router: |-
{
- "image" : "kserve/router:v0.13.0",
+ "image" : "kserve/router:v0.15.0",
"memoryRequest": "100Mi",
"memoryLimit": "1Gi",
"cpuRequest": "100m",
- "cpuLimit": "1"
+ "cpuLimit": "1",
+ "imagePullPolicy": "IfNotPresent"
+ }
+ security: |-
+ {
+ "autoMountServiceAccountToken": true
}
storageInitializer: |-
{
- "image" : "kserve/storage-initializer:v0.13.0",
+ "image" : "kserve/storage-initializer:v0.15.0",
"memoryRequest": "100Mi",
"memoryLimit": "1Gi",
"cpuRequest": "100m",
@@ -21673,6 +32972,7 @@ apiVersion: apps/v1
kind: Deployment
metadata:
labels:
+ app.kubernetes.io/name: kserve-controller-manager
control-plane: kserve-controller-manager
controller-tools.k8s.io: "1.0"
name: kserve-controller-manager
@@ -21687,6 +32987,7 @@ spec:
annotations:
kubectl.kubernetes.io/default-container: manager
labels:
+ app.kubernetes.io/name: kserve-controller-manager
control-plane: kserve-controller-manager
controller-tools.k8s.io: "1.0"
spec:
@@ -21703,14 +33004,14 @@ spec:
fieldPath: metadata.namespace
- name: SECRET_NAME
value: kserve-webhook-server-cert
- image: kserve/kserve-controller:v0.13.0
+ image: kserve/kserve-controller:v0.15.0
imagePullPolicy: Always
livenessProbe:
failureThreshold: 5
httpGet:
path: /healthz
port: 8081
- initialDelaySeconds: 10
+ initialDelaySeconds: 30
timeoutSeconds: 5
name: manager
ports:
@@ -21718,11 +33019,11 @@ spec:
name: webhook-server
protocol: TCP
readinessProbe:
- failureThreshold: 10
+ failureThreshold: 5
httpGet:
path: /readyz
port: 8081
- initialDelaySeconds: 10
+ initialDelaySeconds: 30
periodSeconds: 5
timeoutSeconds: 5
resources:
@@ -21734,6 +33035,12 @@ spec:
memory: 200Mi
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ privileged: false
+ readOnlyRootFilesystem: true
+ runAsNonRoot: true
volumeMounts:
- mountPath: /tmp/k8s-webhook-server/serving-certs
name: cert
@@ -21743,12 +33050,20 @@ spec:
- --upstream=http://127.0.0.1:8080/
- --logtostderr=true
- --v=10
- image: gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
+ image: quay.io/brancz/kube-rbac-proxy:v0.18.0
name: kube-rbac-proxy
ports:
- containerPort: 8443
name: https
protocol: TCP
+ securityContext:
+ allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ privileged: false
+ readOnlyRootFilesystem: true
+ runAsNonRoot: true
securityContext:
runAsNonRoot: true
serviceAccountName: kserve-controller-manager
@@ -21759,6 +33074,129 @@ spec:
defaultMode: 420
secretName: kserve-webhook-server-cert
---
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+ labels:
+ app.kubernetes.io/name: kserve-localmodel-controller-manager
+ control-plane: kserve-localmodel-controller-manager
+ controller-tools.k8s.io: "1.0"
+ name: kserve-localmodel-controller-manager
+ namespace: kserve
+spec:
+ selector:
+ matchLabels:
+ control-plane: kserve-localmodel-controller-manager
+ controller-tools.k8s.io: "1.0"
+ template:
+ metadata:
+ annotations:
+ kubectl.kubernetes.io/default-container: manager
+ labels:
+ app.kubernetes.io/name: kserve-localmodel-controller-manager
+ control-plane: kserve-localmodel-controller-manager
+ controller-tools.k8s.io: "1.0"
+ spec:
+ containers:
+ - command:
+ - /manager
+ env:
+ - name: POD_NAMESPACE
+ valueFrom:
+ fieldRef:
+ fieldPath: metadata.namespace
+ image: kserve/kserve-localmodel-controller:v0.15.0
+ imagePullPolicy: Always
+ name: manager
+ resources:
+ limits:
+ cpu: 100m
+ memory: 300Mi
+ requests:
+ cpu: 100m
+ memory: 200Mi
+ securityContext:
+ allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ privileged: false
+ readOnlyRootFilesystem: true
+ runAsNonRoot: true
+ securityContext:
+ runAsNonRoot: true
+ serviceAccountName: kserve-localmodel-controller-manager
+ terminationGracePeriodSeconds: 10
+---
+apiVersion: apps/v1
+kind: DaemonSet
+metadata:
+ labels:
+ app.kubernetes.io/name: kserve-localmodelnode-agent
+ control-plane: kserve-localmodelnode-agent
+ controller-tools.k8s.io: "1.0"
+ name: kserve-localmodelnode-agent
+ namespace: kserve
+spec:
+ selector:
+ matchLabels:
+ control-plane: kserve-localmodelnode-agent
+ controller-tools.k8s.io: "1.0"
+ template:
+ metadata:
+ annotations:
+ kubectl.kubernetes.io/default-container: manager
+ labels:
+ app.kubernetes.io/name: kserve-localmodelnode-agent
+ control-plane: kserve-localmodelnode-agent
+ controller-tools.k8s.io: "1.0"
+ spec:
+ containers:
+ - command:
+ - /manager
+ env:
+ - name: POD_NAMESPACE
+ valueFrom:
+ fieldRef:
+ fieldPath: metadata.namespace
+ - name: NODE_NAME
+ valueFrom:
+ fieldRef:
+ fieldPath: spec.nodeName
+ image: kserve/kserve-localmodelnode-agent:v0.15.0
+ imagePullPolicy: Always
+ name: manager
+ resources:
+ limits:
+ cpu: 100m
+ memory: 300Mi
+ requests:
+ cpu: 100m
+ memory: 200Mi
+ securityContext:
+ allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ privileged: false
+ readOnlyRootFilesystem: true
+ runAsNonRoot: true
+ volumeMounts:
+ - mountPath: /mnt/models
+ name: models
+ readOnly: false
+ nodeSelector:
+ kserve/localmodel: worker
+ securityContext:
+ runAsNonRoot: true
+ serviceAccountName: kserve-localmodelnode-agent
+ terminationGracePeriodSeconds: 10
+ volumes:
+ - hostPath:
+ path: /models
+ type: DirectoryOrCreate
+ name: models
+---
apiVersion: cert-manager.io/v1
kind: Certificate
metadata:
@@ -21792,7 +33230,6 @@ webhooks:
- admissionReviewVersions:
- v1beta1
clientConfig:
- caBundle: Cg==
service:
name: kserve-webhook-server-service
namespace: kserve
@@ -21813,7 +33250,6 @@ webhooks:
- admissionReviewVersions:
- v1beta1
clientConfig:
- caBundle: Cg==
service:
name: kserve-webhook-server-service
namespace: kserve
@@ -21851,7 +33287,6 @@ webhooks:
- admissionReviewVersions:
- v1beta1
clientConfig:
- caBundle: Cg==
service:
name: kserve-webhook-server-service
namespace: kserve
@@ -21881,7 +33316,6 @@ webhooks:
- admissionReviewVersions:
- v1beta1
clientConfig:
- caBundle: Cg==
service:
name: kserve-webhook-server-service
namespace: kserve
@@ -21911,7 +33345,6 @@ webhooks:
- admissionReviewVersions:
- v1beta1
clientConfig:
- caBundle: Cg==
service:
name: kserve-webhook-server-service
namespace: kserve
@@ -21932,6 +33365,36 @@ webhooks:
---
apiVersion: admissionregistration.k8s.io/v1
kind: ValidatingWebhookConfiguration
+metadata:
+ annotations:
+ cert-manager.io/inject-ca-from: kserve/serving-cert
+ creationTimestamp: null
+ name: localmodelcache.serving.kserve.io
+webhooks:
+- admissionReviewVersions:
+ - v1beta1
+ clientConfig:
+ service:
+ name: kserve-webhook-server-service
+ namespace: kserve
+ path: /validate-serving-kserve-io-v1alpha1-localmodelcache
+ failurePolicy: Fail
+ name: localmodelcache.kserve-webhook-server.validator
+ rules:
+ - apiGroups:
+ - serving.kserve.io
+ apiVersions:
+ - v1alpha1
+ operations:
+ - CREATE
+ - UPDATE
+ - DELETE
+ resources:
+ - localmodelcaches
+ sideEffects: None
+---
+apiVersion: admissionregistration.k8s.io/v1
+kind: ValidatingWebhookConfiguration
metadata:
annotations:
cert-manager.io/inject-ca-from: kserve/serving-cert
@@ -21941,7 +33404,6 @@ webhooks:
- admissionReviewVersions:
- v1beta1
clientConfig:
- caBundle: Cg==
service:
name: kserve-webhook-server-service
namespace: kserve
@@ -21971,7 +33433,6 @@ webhooks:
- admissionReviewVersions:
- v1beta1
clientConfig:
- caBundle: Cg==
service:
name: kserve-webhook-server-service
namespace: kserve
diff --git a/charts/kubeflow/contrib/kserve/kserve/kserve_kubeflow.yaml b/charts/kubeflow/apps/kserve/kserve/kserve_kubeflow.yaml
similarity index 62%
rename from charts/kubeflow/contrib/kserve/kserve/kserve_kubeflow.yaml
rename to charts/kubeflow/apps/kserve/kserve/kserve_kubeflow.yaml
index 300aaaa..1a686b3 100644
--- a/charts/kubeflow/contrib/kserve/kserve/kserve_kubeflow.yaml
+++ b/charts/kubeflow/apps/kserve/kserve/kserve_kubeflow.yaml
@@ -2,7 +2,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
- controller-gen.kubebuilder.io/version: v0.12.0
+ controller-gen.kubebuilder.io/version: v0.16.2
labels:
app: kserve
app.kubernetes.io/name: kserve
@@ -61,11 +61,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchFields:
items:
properties:
@@ -77,11 +79,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
x-kubernetes-map-type: atomic
weight:
@@ -92,6 +96,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
properties:
nodeSelectorTerms:
@@ -108,11 +113,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchFields:
items:
properties:
@@ -124,14 +131,17 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
x-kubernetes-map-type: atomic
type: array
+ x-kubernetes-list-type: atomic
required:
- nodeSelectorTerms
type: object
@@ -157,17 +167,29 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
properties:
matchExpressions:
@@ -181,11 +203,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -196,6 +220,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
type: string
required:
@@ -209,6 +234,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
items:
properties:
@@ -225,17 +251,29 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
properties:
matchExpressions:
@@ -249,11 +287,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -264,12 +304,14 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
type: string
required:
- topologyKey
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
podAntiAffinity:
properties:
@@ -291,17 +333,29 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
properties:
matchExpressions:
@@ -315,11 +369,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -330,6 +386,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
type: string
required:
@@ -343,6 +400,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
items:
properties:
@@ -359,17 +417,29 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
properties:
matchExpressions:
@@ -383,11 +453,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -398,12 +470,14 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
type: string
required:
- topologyKey
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
type: object
annotations:
@@ -426,6 +500,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -464,6 +539,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -492,10 +568,12 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
items:
properties:
@@ -510,6 +588,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -548,6 +627,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -560,12 +640,16 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
items:
properties:
configMapRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -576,6 +660,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -583,6 +668,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
type: string
imagePullPolicy:
@@ -597,6 +683,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -614,6 +701,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -626,6 +714,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -647,6 +743,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -664,6 +761,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -676,6 +774,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -698,6 +804,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -708,6 +815,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -728,6 +836,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -802,6 +911,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -812,6 +922,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -832,6 +943,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -892,6 +1004,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -922,16 +1036,27 @@ spec:
properties:
allowPrivilegeEscalation:
type: boolean
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
capabilities:
properties:
add:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
type: boolean
@@ -987,6 +1112,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -997,6 +1123,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -1017,6 +1144,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -1079,6 +1207,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
items:
properties:
@@ -1090,6 +1221,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -1099,6 +1232,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
type: string
required:
@@ -1111,12 +1247,15 @@ spec:
type: string
grpcEndpoint:
type: string
+ hostIPC:
+ type: boolean
httpDataEndpoint:
type: string
imagePullSecrets:
items:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -1201,10 +1340,12 @@ spec:
diskURI:
type: string
fsType:
+ default: ext4
type: string
kind:
type: string
readOnly:
+ default: false
type: boolean
required:
- diskName
@@ -1228,6 +1369,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
readOnly:
@@ -1237,6 +1379,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -1254,6 +1397,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -1282,7 +1426,9 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
name:
+ default: ""
type: string
optional:
type: boolean
@@ -1297,6 +1443,7 @@ spec:
nodePublishSecretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -1352,6 +1499,7 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
emptyDir:
properties:
@@ -1376,6 +1524,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
dataSource:
properties:
apiGroup:
@@ -1405,18 +1554,6 @@ spec:
type: object
resources:
properties:
- claims:
- items:
- properties:
- name:
- type: string
- required:
- - name
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - name
- x-kubernetes-list-type: map
limits:
additionalProperties:
anyOf:
@@ -1447,11 +1584,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -1460,6 +1599,8 @@ spec:
x-kubernetes-map-type: atomic
storageClassName:
type: string
+ volumeAttributesClassName:
+ type: string
volumeMode:
type: string
volumeName:
@@ -1482,10 +1623,12 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
wwids:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
flexVolume:
properties:
@@ -1502,6 +1645,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -1561,6 +1705,13 @@ spec:
required:
- path
type: object
+ image:
+ properties:
+ pullPolicy:
+ type: string
+ reference:
+ type: string
+ type: object
iscsi:
properties:
chapAuthDiscovery:
@@ -1574,6 +1725,7 @@ spec:
iqn:
type: string
iscsiInterface:
+ default: default
type: string
lun:
format: int32
@@ -1582,11 +1734,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
readOnly:
type: boolean
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -1648,6 +1802,45 @@ spec:
sources:
items:
properties:
+ clusterTrustBundle:
+ properties:
+ labelSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ name:
+ type: string
+ optional:
+ type: boolean
+ path:
+ type: string
+ signerName:
+ type: string
+ required:
+ - path
+ type: object
configMap:
properties:
items:
@@ -1665,7 +1858,9 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
name:
+ default: ""
type: string
optional:
type: boolean
@@ -1711,6 +1906,7 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
secret:
properties:
@@ -1729,7 +1925,9 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
name:
+ default: ""
type: string
optional:
type: boolean
@@ -1749,6 +1947,7 @@ spec:
type: object
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
quobyte:
properties:
@@ -1775,22 +1974,27 @@ spec:
image:
type: string
keyring:
+ default: /etc/ceph/keyring
type: string
monitors:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
pool:
+ default: rbd
type: string
readOnly:
type: boolean
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
user:
+ default: admin
type: string
required:
- image
@@ -1799,6 +2003,7 @@ spec:
scaleIO:
properties:
fsType:
+ default: xfs
type: string
gateway:
type: string
@@ -1809,12 +2014,14 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
sslEnabled:
type: boolean
storageMode:
+ default: ThinProvisioned
type: string
storagePool:
type: string
@@ -1847,6 +2054,7 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
optional:
type: boolean
secretName:
@@ -1861,6 +2069,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -1886,6 +2095,1954 @@ spec:
- name
type: object
type: array
+ workerSpec:
+ properties:
+ affinity:
+ properties:
+ nodeAffinity:
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ items:
+ properties:
+ preference:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchFields:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ x-kubernetes-map-type: atomic
+ weight:
+ format: int32
+ type: integer
+ required:
+ - preference
+ - weight
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ properties:
+ nodeSelectorTerms:
+ items:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchFields:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ x-kubernetes-map-type: atomic
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - nodeSelectorTerms
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ podAffinity:
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ items:
+ properties:
+ podAffinityTerm:
+ properties:
+ labelSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ namespaces:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ type: string
+ required:
+ - topologyKey
+ type: object
+ weight:
+ format: int32
+ type: integer
+ required:
+ - podAffinityTerm
+ - weight
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ items:
+ properties:
+ labelSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ namespaces:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ type: string
+ required:
+ - topologyKey
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ podAntiAffinity:
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ items:
+ properties:
+ podAffinityTerm:
+ properties:
+ labelSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ namespaces:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ type: string
+ required:
+ - topologyKey
+ type: object
+ weight:
+ format: int32
+ type: integer
+ required:
+ - podAffinityTerm
+ - weight
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ items:
+ properties:
+ labelSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ namespaces:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ type: string
+ required:
+ - topologyKey
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ type: object
+ annotations:
+ additionalProperties:
+ type: string
+ type: object
+ containers:
+ items:
+ properties:
+ args:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ env:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ valueFrom:
+ properties:
+ configMapKeyRef:
+ properties:
+ key:
+ type: string
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ fieldRef:
+ properties:
+ apiVersion:
+ type: string
+ fieldPath:
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ resourceFieldRef:
+ properties:
+ containerName:
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ secretKeyRef:
+ properties:
+ key:
+ type: string
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ envFrom:
+ items:
+ properties:
+ configMapRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ prefix:
+ type: string
+ secretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ image:
+ type: string
+ imagePullPolicy:
+ type: string
+ lifecycle:
+ properties:
+ postStart:
+ properties:
+ exec:
+ properties:
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ properties:
+ host:
+ type: string
+ httpHeaders:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ scheme:
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ properties:
+ host:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ preStop:
+ properties:
+ exec:
+ properties:
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ properties:
+ host:
+ type: string
+ httpHeaders:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ scheme:
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ properties:
+ host:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ type: object
+ livenessProbe:
+ properties:
+ exec:
+ properties:
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ format: int32
+ type: integer
+ grpc:
+ properties:
+ port:
+ format: int32
+ type: integer
+ service:
+ default: ""
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ properties:
+ host:
+ type: string
+ httpHeaders:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ scheme:
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ format: int32
+ type: integer
+ periodSeconds:
+ format: int32
+ type: integer
+ successThreshold:
+ format: int32
+ type: integer
+ tcpSocket:
+ properties:
+ host:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ format: int64
+ type: integer
+ timeoutSeconds:
+ format: int32
+ type: integer
+ type: object
+ name:
+ type: string
+ ports:
+ items:
+ properties:
+ containerPort:
+ format: int32
+ type: integer
+ hostIP:
+ type: string
+ hostPort:
+ format: int32
+ type: integer
+ name:
+ type: string
+ protocol:
+ default: TCP
+ type: string
+ required:
+ - containerPort
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - containerPort
+ - protocol
+ x-kubernetes-list-type: map
+ readinessProbe:
+ properties:
+ exec:
+ properties:
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ format: int32
+ type: integer
+ grpc:
+ properties:
+ port:
+ format: int32
+ type: integer
+ service:
+ default: ""
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ properties:
+ host:
+ type: string
+ httpHeaders:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ scheme:
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ format: int32
+ type: integer
+ periodSeconds:
+ format: int32
+ type: integer
+ successThreshold:
+ format: int32
+ type: integer
+ tcpSocket:
+ properties:
+ host:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ format: int64
+ type: integer
+ timeoutSeconds:
+ format: int32
+ type: integer
+ type: object
+ resizePolicy:
+ items:
+ properties:
+ resourceName:
+ type: string
+ restartPolicy:
+ type: string
+ required:
+ - resourceName
+ - restartPolicy
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ resources:
+ properties:
+ claims:
+ items:
+ properties:
+ name:
+ type: string
+ request:
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ limits:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ requests:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ type: object
+ restartPolicy:
+ type: string
+ securityContext:
+ properties:
+ allowPrivilegeEscalation:
+ type: boolean
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
+ capabilities:
+ properties:
+ add:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ drop:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ privileged:
+ type: boolean
+ procMount:
+ type: string
+ readOnlyRootFilesystem:
+ type: boolean
+ runAsGroup:
+ format: int64
+ type: integer
+ runAsNonRoot:
+ type: boolean
+ runAsUser:
+ format: int64
+ type: integer
+ seLinuxOptions:
+ properties:
+ level:
+ type: string
+ role:
+ type: string
+ type:
+ type: string
+ user:
+ type: string
+ type: object
+ seccompProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
+ windowsOptions:
+ properties:
+ gmsaCredentialSpec:
+ type: string
+ gmsaCredentialSpecName:
+ type: string
+ hostProcess:
+ type: boolean
+ runAsUserName:
+ type: string
+ type: object
+ type: object
+ startupProbe:
+ properties:
+ exec:
+ properties:
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ format: int32
+ type: integer
+ grpc:
+ properties:
+ port:
+ format: int32
+ type: integer
+ service:
+ default: ""
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ properties:
+ host:
+ type: string
+ httpHeaders:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ scheme:
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ format: int32
+ type: integer
+ periodSeconds:
+ format: int32
+ type: integer
+ successThreshold:
+ format: int32
+ type: integer
+ tcpSocket:
+ properties:
+ host:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ format: int64
+ type: integer
+ timeoutSeconds:
+ format: int32
+ type: integer
+ type: object
+ stdin:
+ type: boolean
+ stdinOnce:
+ type: boolean
+ terminationMessagePath:
+ type: string
+ terminationMessagePolicy:
+ type: string
+ tty:
+ type: boolean
+ volumeDevices:
+ items:
+ properties:
+ devicePath:
+ type: string
+ name:
+ type: string
+ required:
+ - devicePath
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
+ volumeMounts:
+ items:
+ properties:
+ mountPath:
+ type: string
+ mountPropagation:
+ type: string
+ name:
+ type: string
+ readOnly:
+ type: boolean
+ recursiveReadOnly:
+ type: string
+ subPath:
+ type: string
+ subPathExpr:
+ type: string
+ required:
+ - mountPath
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
+ workingDir:
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ hostIPC:
+ type: boolean
+ imagePullSecrets:
+ items:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ type: array
+ labels:
+ additionalProperties:
+ type: string
+ type: object
+ nodeSelector:
+ additionalProperties:
+ type: string
+ type: object
+ pipelineParallelSize:
+ type: integer
+ tensorParallelSize:
+ type: integer
+ tolerations:
+ items:
+ properties:
+ effect:
+ type: string
+ key:
+ type: string
+ operator:
+ type: string
+ tolerationSeconds:
+ format: int64
+ type: integer
+ value:
+ type: string
+ type: object
+ type: array
+ volumes:
+ items:
+ properties:
+ awsElasticBlockStore:
+ properties:
+ fsType:
+ type: string
+ partition:
+ format: int32
+ type: integer
+ readOnly:
+ type: boolean
+ volumeID:
+ type: string
+ required:
+ - volumeID
+ type: object
+ azureDisk:
+ properties:
+ cachingMode:
+ type: string
+ diskName:
+ type: string
+ diskURI:
+ type: string
+ fsType:
+ default: ext4
+ type: string
+ kind:
+ type: string
+ readOnly:
+ default: false
+ type: boolean
+ required:
+ - diskName
+ - diskURI
+ type: object
+ azureFile:
+ properties:
+ readOnly:
+ type: boolean
+ secretName:
+ type: string
+ shareName:
+ type: string
+ required:
+ - secretName
+ - shareName
+ type: object
+ cephfs:
+ properties:
+ monitors:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ readOnly:
+ type: boolean
+ secretFile:
+ type: string
+ secretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ user:
+ type: string
+ required:
+ - monitors
+ type: object
+ cinder:
+ properties:
+ fsType:
+ type: string
+ readOnly:
+ type: boolean
+ secretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ volumeID:
+ type: string
+ required:
+ - volumeID
+ type: object
+ configMap:
+ properties:
+ defaultMode:
+ format: int32
+ type: integer
+ items:
+ items:
+ properties:
+ key:
+ type: string
+ mode:
+ format: int32
+ type: integer
+ path:
+ type: string
+ required:
+ - key
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ csi:
+ properties:
+ driver:
+ type: string
+ fsType:
+ type: string
+ nodePublishSecretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ readOnly:
+ type: boolean
+ volumeAttributes:
+ additionalProperties:
+ type: string
+ type: object
+ required:
+ - driver
+ type: object
+ downwardAPI:
+ properties:
+ defaultMode:
+ format: int32
+ type: integer
+ items:
+ items:
+ properties:
+ fieldRef:
+ properties:
+ apiVersion:
+ type: string
+ fieldPath:
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ mode:
+ format: int32
+ type: integer
+ path:
+ type: string
+ resourceFieldRef:
+ properties:
+ containerName:
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ required:
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ emptyDir:
+ properties:
+ medium:
+ type: string
+ sizeLimit:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ ephemeral:
+ properties:
+ volumeClaimTemplate:
+ properties:
+ metadata:
+ type: object
+ spec:
+ properties:
+ accessModes:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ dataSource:
+ properties:
+ apiGroup:
+ type: string
+ kind:
+ type: string
+ name:
+ type: string
+ required:
+ - kind
+ - name
+ type: object
+ x-kubernetes-map-type: atomic
+ dataSourceRef:
+ properties:
+ apiGroup:
+ type: string
+ kind:
+ type: string
+ name:
+ type: string
+ namespace:
+ type: string
+ required:
+ - kind
+ - name
+ type: object
+ resources:
+ properties:
+ limits:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ requests:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ type: object
+ selector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ storageClassName:
+ type: string
+ volumeAttributesClassName:
+ type: string
+ volumeMode:
+ type: string
+ volumeName:
+ type: string
+ type: object
+ required:
+ - spec
+ type: object
+ type: object
+ fc:
+ properties:
+ fsType:
+ type: string
+ lun:
+ format: int32
+ type: integer
+ readOnly:
+ type: boolean
+ targetWWNs:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ wwids:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ flexVolume:
+ properties:
+ driver:
+ type: string
+ fsType:
+ type: string
+ options:
+ additionalProperties:
+ type: string
+ type: object
+ readOnly:
+ type: boolean
+ secretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ required:
+ - driver
+ type: object
+ flocker:
+ properties:
+ datasetName:
+ type: string
+ datasetUUID:
+ type: string
+ type: object
+ gcePersistentDisk:
+ properties:
+ fsType:
+ type: string
+ partition:
+ format: int32
+ type: integer
+ pdName:
+ type: string
+ readOnly:
+ type: boolean
+ required:
+ - pdName
+ type: object
+ gitRepo:
+ properties:
+ directory:
+ type: string
+ repository:
+ type: string
+ revision:
+ type: string
+ required:
+ - repository
+ type: object
+ glusterfs:
+ properties:
+ endpoints:
+ type: string
+ path:
+ type: string
+ readOnly:
+ type: boolean
+ required:
+ - endpoints
+ - path
+ type: object
+ hostPath:
+ properties:
+ path:
+ type: string
+ type:
+ type: string
+ required:
+ - path
+ type: object
+ image:
+ properties:
+ pullPolicy:
+ type: string
+ reference:
+ type: string
+ type: object
+ iscsi:
+ properties:
+ chapAuthDiscovery:
+ type: boolean
+ chapAuthSession:
+ type: boolean
+ fsType:
+ type: string
+ initiatorName:
+ type: string
+ iqn:
+ type: string
+ iscsiInterface:
+ default: default
+ type: string
+ lun:
+ format: int32
+ type: integer
+ portals:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ readOnly:
+ type: boolean
+ secretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ targetPortal:
+ type: string
+ required:
+ - iqn
+ - lun
+ - targetPortal
+ type: object
+ name:
+ type: string
+ nfs:
+ properties:
+ path:
+ type: string
+ readOnly:
+ type: boolean
+ server:
+ type: string
+ required:
+ - path
+ - server
+ type: object
+ persistentVolumeClaim:
+ properties:
+ claimName:
+ type: string
+ readOnly:
+ type: boolean
+ required:
+ - claimName
+ type: object
+ photonPersistentDisk:
+ properties:
+ fsType:
+ type: string
+ pdID:
+ type: string
+ required:
+ - pdID
+ type: object
+ portworxVolume:
+ properties:
+ fsType:
+ type: string
+ readOnly:
+ type: boolean
+ volumeID:
+ type: string
+ required:
+ - volumeID
+ type: object
+ projected:
+ properties:
+ defaultMode:
+ format: int32
+ type: integer
+ sources:
+ items:
+ properties:
+ clusterTrustBundle:
+ properties:
+ labelSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ name:
+ type: string
+ optional:
+ type: boolean
+ path:
+ type: string
+ signerName:
+ type: string
+ required:
+ - path
+ type: object
+ configMap:
+ properties:
+ items:
+ items:
+ properties:
+ key:
+ type: string
+ mode:
+ format: int32
+ type: integer
+ path:
+ type: string
+ required:
+ - key
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ downwardAPI:
+ properties:
+ items:
+ items:
+ properties:
+ fieldRef:
+ properties:
+ apiVersion:
+ type: string
+ fieldPath:
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ mode:
+ format: int32
+ type: integer
+ path:
+ type: string
+ resourceFieldRef:
+ properties:
+ containerName:
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ required:
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ secret:
+ properties:
+ items:
+ items:
+ properties:
+ key:
+ type: string
+ mode:
+ format: int32
+ type: integer
+ path:
+ type: string
+ required:
+ - key
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ serviceAccountToken:
+ properties:
+ audience:
+ type: string
+ expirationSeconds:
+ format: int64
+ type: integer
+ path:
+ type: string
+ required:
+ - path
+ type: object
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ quobyte:
+ properties:
+ group:
+ type: string
+ readOnly:
+ type: boolean
+ registry:
+ type: string
+ tenant:
+ type: string
+ user:
+ type: string
+ volume:
+ type: string
+ required:
+ - registry
+ - volume
+ type: object
+ rbd:
+ properties:
+ fsType:
+ type: string
+ image:
+ type: string
+ keyring:
+ default: /etc/ceph/keyring
+ type: string
+ monitors:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ pool:
+ default: rbd
+ type: string
+ readOnly:
+ type: boolean
+ secretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ user:
+ default: admin
+ type: string
+ required:
+ - image
+ - monitors
+ type: object
+ scaleIO:
+ properties:
+ fsType:
+ default: xfs
+ type: string
+ gateway:
+ type: string
+ protectionDomain:
+ type: string
+ readOnly:
+ type: boolean
+ secretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ sslEnabled:
+ type: boolean
+ storageMode:
+ default: ThinProvisioned
+ type: string
+ storagePool:
+ type: string
+ system:
+ type: string
+ volumeName:
+ type: string
+ required:
+ - gateway
+ - secretRef
+ - system
+ type: object
+ secret:
+ properties:
+ defaultMode:
+ format: int32
+ type: integer
+ items:
+ items:
+ properties:
+ key:
+ type: string
+ mode:
+ format: int32
+ type: integer
+ path:
+ type: string
+ required:
+ - key
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ optional:
+ type: boolean
+ secretName:
+ type: string
+ type: object
+ storageos:
+ properties:
+ fsType:
+ type: string
+ readOnly:
+ type: boolean
+ secretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ volumeName:
+ type: string
+ volumeNamespace:
+ type: string
+ type: object
+ vsphereVolume:
+ properties:
+ fsType:
+ type: string
+ storagePolicyID:
+ type: string
+ storagePolicyName:
+ type: string
+ volumePath:
+ type: string
+ required:
+ - volumePath
+ type: object
+ required:
+ - name
+ type: object
+ type: array
+ required:
+ - containers
+ type: object
required:
- containers
type: object
@@ -1900,7 +4057,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
- controller-gen.kubebuilder.io/version: v0.12.0
+ controller-gen.kubebuilder.io/version: v0.16.2
labels:
app: kserve
app.kubernetes.io/name: kserve
@@ -1934,10 +4091,12 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
items:
properties:
@@ -1952,6 +4111,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -1990,6 +4150,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -2002,12 +4163,16 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
items:
properties:
configMapRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -2018,6 +4183,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -2025,6 +4191,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
type: string
imagePullPolicy:
@@ -2039,6 +4206,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -2056,6 +4224,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -2068,6 +4237,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -2089,6 +4266,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -2106,6 +4284,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -2118,6 +4297,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -2140,6 +4327,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -2150,6 +4338,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -2170,6 +4359,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -2244,6 +4434,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -2254,6 +4445,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -2274,6 +4466,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -2334,6 +4527,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -2364,16 +4559,27 @@ spec:
properties:
allowPrivilegeEscalation:
type: boolean
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
capabilities:
properties:
add:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
type: boolean
@@ -2429,6 +4635,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -2439,6 +4646,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -2459,6 +4667,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -2521,6 +4730,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
items:
properties:
@@ -2532,6 +4744,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -2541,6 +4755,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
type: string
required:
@@ -2555,6 +4772,9 @@ spec:
type: string
type: object
type: array
+ workloadType:
+ default: initContainer
+ type: string
required:
- container
- supportedUriFormats
@@ -2567,7 +4787,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
- controller-gen.kubebuilder.io/version: v0.12.0
+ controller-gen.kubebuilder.io/version: v0.16.2
labels:
app: kserve
app.kubernetes.io/name: kserve
@@ -2625,11 +4845,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchFields:
items:
properties:
@@ -2641,11 +4863,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
x-kubernetes-map-type: atomic
weight:
@@ -2656,6 +4880,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
properties:
nodeSelectorTerms:
@@ -2672,11 +4897,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchFields:
items:
properties:
@@ -2688,14 +4915,17 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
x-kubernetes-map-type: atomic
type: array
+ x-kubernetes-list-type: atomic
required:
- nodeSelectorTerms
type: object
@@ -2721,17 +4951,29 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
properties:
matchExpressions:
@@ -2745,11 +4987,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -2760,6 +5004,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
type: string
required:
@@ -2773,6 +5018,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
items:
properties:
@@ -2789,17 +5035,29 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
properties:
matchExpressions:
@@ -2813,11 +5071,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -2828,12 +5088,14 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
type: string
required:
- topologyKey
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
podAntiAffinity:
properties:
@@ -2855,17 +5117,29 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
properties:
matchExpressions:
@@ -2879,11 +5153,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -2894,6 +5170,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
type: string
required:
@@ -2907,6 +5184,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
items:
properties:
@@ -2923,17 +5201,29 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
properties:
matchExpressions:
@@ -2947,11 +5237,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -2962,18 +5254,28 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
type: string
required:
- topologyKey
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
type: object
maxReplicas:
+ format: int32
type: integer
minReplicas:
+ format: int32
type: integer
+ nodeName:
+ type: string
+ nodeSelector:
+ additionalProperties:
+ type: string
+ type: object
nodes:
additionalProperties:
properties:
@@ -3020,6 +5322,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -3052,10 +5356,29 @@ spec:
- rps
type: string
scaleTarget:
+ format: int32
type: integer
+ serviceAccountName:
+ type: string
timeout:
format: int64
type: integer
+ tolerations:
+ items:
+ properties:
+ effect:
+ type: string
+ key:
+ type: string
+ operator:
+ type: string
+ tolerationSeconds:
+ format: int64
+ type: integer
+ value:
+ type: string
+ type: object
+ type: array
required:
- nodes
type: object
@@ -3102,7 +5425,7 @@ kind: CustomResourceDefinition
metadata:
annotations:
cert-manager.io/inject-ca-from: kubeflow/serving-cert
- controller-gen.kubebuilder.io/version: v0.12.0
+ controller-gen.kubebuilder.io/version: v0.16.2
labels:
app: kserve
app.kubernetes.io/name: kserve
@@ -3177,11 +5500,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchFields:
items:
properties:
@@ -3193,11 +5518,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
x-kubernetes-map-type: atomic
weight:
@@ -3208,6 +5535,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
properties:
nodeSelectorTerms:
@@ -3224,11 +5552,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchFields:
items:
properties:
@@ -3240,14 +5570,17 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
x-kubernetes-map-type: atomic
type: array
+ x-kubernetes-list-type: atomic
required:
- nodeSelectorTerms
type: object
@@ -3273,17 +5606,29 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
properties:
matchExpressions:
@@ -3297,11 +5642,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -3312,6 +5659,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
type: string
required:
@@ -3325,6 +5673,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
items:
properties:
@@ -3341,17 +5690,29 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
properties:
matchExpressions:
@@ -3365,11 +5726,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -3380,12 +5743,14 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
type: string
required:
- topologyKey
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
podAntiAffinity:
properties:
@@ -3407,17 +5772,29 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
properties:
matchExpressions:
@@ -3431,11 +5808,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -3446,6 +5825,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
type: string
required:
@@ -3459,6 +5839,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
items:
properties:
@@ -3475,17 +5856,29 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
properties:
matchExpressions:
@@ -3499,11 +5892,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -3514,12 +5909,14 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
type: string
required:
- topologyKey
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
type: object
annotations:
@@ -3532,10 +5929,12 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
config:
additionalProperties:
type: string
@@ -3554,6 +5953,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -3592,6 +5992,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -3604,12 +6005,16 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
items:
properties:
configMapRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -3620,6 +6025,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -3627,6 +6033,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
type: string
imagePullPolicy:
@@ -3641,6 +6048,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -3658,6 +6066,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -3670,6 +6079,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -3691,6 +6108,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -3708,6 +6126,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -3720,6 +6139,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -3742,6 +6169,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -3752,6 +6180,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -3772,6 +6201,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -3842,6 +6272,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -3852,6 +6283,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -3872,6 +6304,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -3928,6 +6361,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -3960,16 +6395,27 @@ spec:
properties:
allowPrivilegeEscalation:
type: boolean
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
capabilities:
properties:
add:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
type: boolean
@@ -4025,6 +6471,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -4035,6 +6482,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -4055,6 +6503,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -4134,6 +6583,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
items:
properties:
@@ -4145,6 +6597,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -4154,9 +6608,154 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
type: string
type: object
+ autoScaling:
+ properties:
+ metrics:
+ items:
+ properties:
+ external:
+ properties:
+ metric:
+ properties:
+ backend:
+ enum:
+ - prometheus
+ - graphite
+ type: string
+ namespace:
+ type: string
+ query:
+ type: string
+ serverAddress:
+ type: string
+ type: object
+ target:
+ properties:
+ averageUtilization:
+ format: int32
+ type: integer
+ averageValue:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type:
+ enum:
+ - Utilization
+ - Value
+ - AverageValue
+ type: string
+ value:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ required:
+ - metric
+ - target
+ type: object
+ podmetric:
+ properties:
+ metric:
+ properties:
+ backend:
+ enum:
+ - opentelemetry
+ type: string
+ metricNames:
+ items:
+ type: string
+ type: array
+ operationOverTime:
+ type: string
+ query:
+ type: string
+ serverAddress:
+ type: string
+ type: object
+ target:
+ properties:
+ averageUtilization:
+ format: int32
+ type: integer
+ averageValue:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type:
+ enum:
+ - Utilization
+ - Value
+ - AverageValue
+ type: string
+ value:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ required:
+ - metric
+ - target
+ type: object
+ resource:
+ properties:
+ name:
+ enum:
+ - cpu
+ - memory
+ type: string
+ target:
+ properties:
+ averageUtilization:
+ format: int32
+ type: integer
+ averageValue:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type:
+ enum:
+ - Utilization
+ - Value
+ - AverageValue
+ type: string
+ value:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ required:
+ - name
+ - target
+ type: object
+ type:
+ enum:
+ - Resource
+ - External
+ - PodMetric
+ type: string
+ required:
+ - type
+ type: object
+ type: array
+ type: object
automountServiceAccountToken:
type: boolean
batcher:
@@ -4181,10 +6780,12 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
items:
properties:
@@ -4199,6 +6800,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -4237,6 +6839,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -4249,12 +6852,16 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
items:
properties:
configMapRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -4265,6 +6872,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -4272,6 +6880,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
type: string
imagePullPolicy:
@@ -4286,6 +6895,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -4303,6 +6913,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -4315,6 +6926,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -4336,6 +6955,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -4353,6 +6973,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -4365,6 +6986,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -4387,6 +7016,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -4397,6 +7027,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -4417,6 +7048,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -4489,6 +7121,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -4499,6 +7132,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -4519,6 +7153,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -4577,6 +7212,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -4607,16 +7244,27 @@ spec:
properties:
allowPrivilegeEscalation:
type: boolean
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
capabilities:
properties:
add:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
type: boolean
@@ -4672,6 +7320,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -4682,6 +7331,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -4702,6 +7352,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -4764,6 +7415,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
items:
properties:
@@ -4775,6 +7429,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -4784,6 +7440,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
type: string
required:
@@ -4814,6 +7473,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
options:
items:
properties:
@@ -4823,10 +7483,12 @@ spec:
type: string
type: object
type: array
+ x-kubernetes-list-type: atomic
searches:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
dnsPolicy:
type: string
@@ -4839,8 +7501,11 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
ip:
type: string
+ required:
+ - ip
type: object
type: array
hostIPC:
@@ -4857,6 +7522,7 @@ spec:
items:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -4868,10 +7534,12 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
items:
properties:
@@ -4886,6 +7554,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -4924,6 +7593,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -4936,12 +7606,16 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
items:
properties:
configMapRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -4952,6 +7626,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -4959,6 +7634,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
type: string
imagePullPolicy:
@@ -4973,6 +7649,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -4990,6 +7667,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -5002,6 +7680,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -5023,6 +7709,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -5040,6 +7727,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -5052,6 +7740,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -5074,6 +7770,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -5084,6 +7781,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -5104,6 +7802,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -5178,6 +7877,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -5188,6 +7888,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -5208,6 +7909,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -5268,6 +7970,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -5298,16 +8002,27 @@ spec:
properties:
allowPrivilegeEscalation:
type: boolean
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
capabilities:
properties:
add:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
type: boolean
@@ -5363,6 +8078,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -5373,6 +8089,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -5393,6 +8110,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -5455,6 +8173,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
items:
properties:
@@ -5466,6 +8187,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -5475,6 +8198,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
type: string
required:
@@ -5487,6 +8213,10 @@ spec:
type: object
logger:
properties:
+ metadataHeaders:
+ items:
+ type: string
+ type: array
mode:
enum:
- all
@@ -5497,8 +8227,10 @@ spec:
type: string
type: object
maxReplicas:
+ format: int32
type: integer
minReplicas:
+ format: int32
type: integer
nodeName:
type: string
@@ -5541,13 +8273,10 @@ spec:
properties:
name:
type: string
- source:
- properties:
- resourceClaimName:
- type: string
- resourceClaimTemplateName:
- type: string
- type: object
+ resourceClaimName:
+ type: string
+ resourceClaimTemplateName:
+ type: string
required:
- name
type: object
@@ -5555,6 +8284,39 @@ spec:
x-kubernetes-list-map-keys:
- name
x-kubernetes-list-type: map
+ resources:
+ properties:
+ claims:
+ items:
+ properties:
+ name:
+ type: string
+ request:
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ limits:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ requests:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ type: object
restartPolicy:
type: string
runtimeClassName:
@@ -5566,7 +8328,14 @@ spec:
- concurrency
- rps
type: string
+ scaleMetricType:
+ enum:
+ - Utilization
+ - Value
+ - AverageValue
+ type: string
scaleTarget:
+ format: int32
type: integer
schedulerName:
type: string
@@ -5584,6 +8353,15 @@ spec:
x-kubernetes-list-type: map
securityContext:
properties:
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
fsGroup:
format: int64
type: integer
@@ -5597,6 +8375,8 @@ spec:
runAsUser:
format: int64
type: integer
+ seLinuxChangePolicy:
+ type: string
seLinuxOptions:
properties:
level:
@@ -5622,6 +8402,9 @@ spec:
format: int64
type: integer
type: array
+ x-kubernetes-list-type: atomic
+ supplementalGroupsPolicy:
+ type: string
sysctls:
items:
properties:
@@ -5634,6 +8417,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
windowsOptions:
properties:
gmsaCredentialSpec:
@@ -5694,11 +8478,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -5760,10 +8546,12 @@ spec:
diskURI:
type: string
fsType:
+ default: ext4
type: string
kind:
type: string
readOnly:
+ default: false
type: boolean
required:
- diskName
@@ -5787,6 +8575,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
readOnly:
@@ -5796,6 +8585,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -5813,6 +8603,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -5841,7 +8632,9 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
name:
+ default: ""
type: string
optional:
type: boolean
@@ -5856,6 +8649,7 @@ spec:
nodePublishSecretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -5911,6 +8705,7 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
emptyDir:
properties:
@@ -5935,6 +8730,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
dataSource:
properties:
apiGroup:
@@ -5964,18 +8760,6 @@ spec:
type: object
resources:
properties:
- claims:
- items:
- properties:
- name:
- type: string
- required:
- - name
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - name
- x-kubernetes-list-type: map
limits:
additionalProperties:
anyOf:
@@ -6006,11 +8790,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -6019,6 +8805,8 @@ spec:
x-kubernetes-map-type: atomic
storageClassName:
type: string
+ volumeAttributesClassName:
+ type: string
volumeMode:
type: string
volumeName:
@@ -6041,10 +8829,12 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
wwids:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
flexVolume:
properties:
@@ -6061,6 +8851,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -6120,6 +8911,13 @@ spec:
required:
- path
type: object
+ image:
+ properties:
+ pullPolicy:
+ type: string
+ reference:
+ type: string
+ type: object
iscsi:
properties:
chapAuthDiscovery:
@@ -6133,6 +8931,7 @@ spec:
iqn:
type: string
iscsiInterface:
+ default: default
type: string
lun:
format: int32
@@ -6141,11 +8940,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
readOnly:
type: boolean
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -6207,6 +9008,45 @@ spec:
sources:
items:
properties:
+ clusterTrustBundle:
+ properties:
+ labelSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ name:
+ type: string
+ optional:
+ type: boolean
+ path:
+ type: string
+ signerName:
+ type: string
+ required:
+ - path
+ type: object
configMap:
properties:
items:
@@ -6224,7 +9064,9 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
name:
+ default: ""
type: string
optional:
type: boolean
@@ -6270,6 +9112,7 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
secret:
properties:
@@ -6288,7 +9131,9 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
name:
+ default: ""
type: string
optional:
type: boolean
@@ -6308,6 +9153,7 @@ spec:
type: object
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
quobyte:
properties:
@@ -6334,22 +9180,27 @@ spec:
image:
type: string
keyring:
+ default: /etc/ceph/keyring
type: string
monitors:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
pool:
+ default: rbd
type: string
readOnly:
type: boolean
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
user:
+ default: admin
type: string
required:
- image
@@ -6358,6 +9209,7 @@ spec:
scaleIO:
properties:
fsType:
+ default: xfs
type: string
gateway:
type: string
@@ -6368,12 +9220,14 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
sslEnabled:
type: boolean
storageMode:
+ default: ThinProvisioned
type: string
storagePool:
type: string
@@ -6406,6 +9260,7 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
optional:
type: boolean
secretName:
@@ -6420,6 +9275,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -6471,11 +9327,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchFields:
items:
properties:
@@ -6487,11 +9345,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
x-kubernetes-map-type: atomic
weight:
@@ -6502,6 +9362,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
properties:
nodeSelectorTerms:
@@ -6518,11 +9379,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchFields:
items:
properties:
@@ -6534,14 +9397,17 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
x-kubernetes-map-type: atomic
type: array
+ x-kubernetes-list-type: atomic
required:
- nodeSelectorTerms
type: object
@@ -6567,17 +9433,29 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
properties:
matchExpressions:
@@ -6591,11 +9469,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -6606,6 +9486,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
type: string
required:
@@ -6619,6 +9500,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
items:
properties:
@@ -6635,17 +9517,29 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
properties:
matchExpressions:
@@ -6659,11 +9553,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -6674,12 +9570,14 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
type: string
required:
- topologyKey
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
podAntiAffinity:
properties:
@@ -6701,17 +9599,29 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
properties:
matchExpressions:
@@ -6725,11 +9635,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -6740,6 +9652,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
type: string
required:
@@ -6753,6 +9666,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
items:
properties:
@@ -6769,17 +9683,29 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
properties:
matchExpressions:
@@ -6793,11 +9719,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -6808,18 +9736,162 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
type: string
required:
- topologyKey
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
type: object
annotations:
additionalProperties:
type: string
type: object
+ autoScaling:
+ properties:
+ metrics:
+ items:
+ properties:
+ external:
+ properties:
+ metric:
+ properties:
+ backend:
+ enum:
+ - prometheus
+ - graphite
+ type: string
+ namespace:
+ type: string
+ query:
+ type: string
+ serverAddress:
+ type: string
+ type: object
+ target:
+ properties:
+ averageUtilization:
+ format: int32
+ type: integer
+ averageValue:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type:
+ enum:
+ - Utilization
+ - Value
+ - AverageValue
+ type: string
+ value:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ required:
+ - metric
+ - target
+ type: object
+ podmetric:
+ properties:
+ metric:
+ properties:
+ backend:
+ enum:
+ - opentelemetry
+ type: string
+ metricNames:
+ items:
+ type: string
+ type: array
+ operationOverTime:
+ type: string
+ query:
+ type: string
+ serverAddress:
+ type: string
+ type: object
+ target:
+ properties:
+ averageUtilization:
+ format: int32
+ type: integer
+ averageValue:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type:
+ enum:
+ - Utilization
+ - Value
+ - AverageValue
+ type: string
+ value:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ required:
+ - metric
+ - target
+ type: object
+ resource:
+ properties:
+ name:
+ enum:
+ - cpu
+ - memory
+ type: string
+ target:
+ properties:
+ averageUtilization:
+ format: int32
+ type: integer
+ averageValue:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type:
+ enum:
+ - Utilization
+ - Value
+ - AverageValue
+ type: string
+ value:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ required:
+ - name
+ - target
+ type: object
+ type:
+ enum:
+ - Resource
+ - External
+ - PodMetric
+ type: string
+ required:
+ - type
+ type: object
+ type: array
+ type: object
automountServiceAccountToken:
type: boolean
batcher:
@@ -6844,10 +9916,12 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
items:
properties:
@@ -6862,6 +9936,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -6900,6 +9975,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -6912,12 +9988,16 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
items:
properties:
configMapRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -6928,6 +10008,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -6935,6 +10016,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
type: string
imagePullPolicy:
@@ -6949,6 +10031,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -6966,6 +10049,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -6978,6 +10062,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -6999,6 +10091,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -7016,6 +10109,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -7028,6 +10122,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -7050,6 +10152,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -7060,6 +10163,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -7080,6 +10184,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -7152,6 +10257,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -7162,6 +10268,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -7182,6 +10289,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -7240,6 +10348,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -7270,16 +10380,27 @@ spec:
properties:
allowPrivilegeEscalation:
type: boolean
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
capabilities:
properties:
add:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
type: boolean
@@ -7335,6 +10456,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -7345,6 +10467,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -7365,6 +10488,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -7427,6 +10551,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
items:
properties:
@@ -7438,6 +10565,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -7447,6 +10576,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
type: string
required:
@@ -7477,6 +10609,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
options:
items:
properties:
@@ -7486,10 +10619,12 @@ spec:
type: string
type: object
type: array
+ x-kubernetes-list-type: atomic
searches:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
dnsPolicy:
type: string
@@ -7502,8 +10637,11 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
ip:
type: string
+ required:
+ - ip
type: object
type: array
hostIPC:
@@ -7522,10 +10660,12 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
items:
properties:
@@ -7540,6 +10680,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -7578,6 +10719,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -7590,12 +10732,16 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
items:
properties:
configMapRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -7606,6 +10752,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -7613,6 +10760,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
type: string
imagePullPolicy:
@@ -7627,6 +10775,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -7644,6 +10793,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -7656,6 +10806,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -7677,6 +10835,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -7694,6 +10853,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -7706,6 +10866,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -7728,6 +10896,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -7738,6 +10907,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -7758,6 +10928,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -7830,6 +11001,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -7840,6 +11012,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -7860,6 +11033,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -7916,6 +11090,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -7948,16 +11124,27 @@ spec:
properties:
allowPrivilegeEscalation:
type: boolean
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
capabilities:
properties:
add:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
type: boolean
@@ -8013,6 +11200,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -8023,6 +11211,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -8043,6 +11232,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -8120,6 +11310,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
items:
properties:
@@ -8131,6 +11324,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -8140,6 +11335,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
type: string
type: object
@@ -8147,6 +11345,7 @@ spec:
items:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -8158,10 +11357,12 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
items:
properties:
@@ -8176,6 +11377,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -8214,6 +11416,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -8226,12 +11429,16 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
items:
properties:
configMapRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -8242,6 +11449,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -8249,6 +11457,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
type: string
imagePullPolicy:
@@ -8263,6 +11472,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -8280,6 +11490,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -8292,6 +11503,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -8313,6 +11532,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -8330,6 +11550,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -8342,6 +11563,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -8364,6 +11593,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -8374,6 +11604,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -8394,6 +11625,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -8468,6 +11700,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -8478,6 +11711,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -8498,6 +11732,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -8558,6 +11793,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -8588,16 +11825,27 @@ spec:
properties:
allowPrivilegeEscalation:
type: boolean
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
capabilities:
properties:
add:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
type: boolean
@@ -8653,6 +11901,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -8663,6 +11912,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -8683,6 +11933,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -8745,6 +11996,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
items:
properties:
@@ -8756,6 +12010,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -8765,6 +12021,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
type: string
required:
@@ -8781,10 +12040,12 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
items:
properties:
@@ -8799,6 +12060,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -8837,6 +12099,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -8849,12 +12112,16 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
items:
properties:
configMapRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -8865,6 +12132,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -8872,6 +12140,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
type: string
imagePullPolicy:
@@ -8886,6 +12155,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -8903,6 +12173,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -8915,6 +12186,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -8936,6 +12215,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -8953,6 +12233,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -8965,6 +12246,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -8987,6 +12276,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -8997,6 +12287,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -9017,6 +12308,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -9089,6 +12381,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -9099,6 +12392,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -9119,6 +12413,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -9175,6 +12470,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -9207,16 +12504,27 @@ spec:
properties:
allowPrivilegeEscalation:
type: boolean
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
capabilities:
properties:
add:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
type: boolean
@@ -9272,6 +12580,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -9282,6 +12591,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -9302,6 +12612,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -9379,6 +12690,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
items:
properties:
@@ -9390,6 +12704,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -9399,11 +12715,18 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
type: string
type: object
logger:
properties:
+ metadataHeaders:
+ items:
+ type: string
+ type: array
mode:
enum:
- all
@@ -9414,8 +12737,10 @@ spec:
type: string
type: object
maxReplicas:
+ format: int32
type: integer
minReplicas:
+ format: int32
type: integer
model:
properties:
@@ -9423,10 +12748,12 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
items:
properties:
@@ -9441,6 +12768,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -9479,6 +12807,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -9491,12 +12820,16 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
items:
properties:
configMapRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -9507,6 +12840,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -9514,6 +12848,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
type: string
imagePullPolicy:
@@ -9528,6 +12863,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -9545,6 +12881,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -9557,6 +12894,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -9578,6 +12923,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -9595,6 +12941,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -9607,6 +12954,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -9629,6 +12984,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -9639,6 +12995,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -9659,6 +13016,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -9740,6 +13098,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -9750,6 +13109,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -9770,6 +13130,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -9826,6 +13187,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -9860,16 +13223,27 @@ spec:
properties:
allowPrivilegeEscalation:
type: boolean
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
capabilities:
properties:
add:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
type: boolean
@@ -9925,6 +13299,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -9935,6 +13310,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -9955,6 +13331,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -10032,6 +13409,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
items:
properties:
@@ -10043,6 +13423,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -10052,6 +13434,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
type: string
type: object
@@ -10068,10 +13453,12 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
items:
properties:
@@ -10086,6 +13473,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -10124,6 +13512,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -10136,12 +13525,16 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
items:
properties:
configMapRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -10152,6 +13545,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -10159,6 +13553,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
type: string
imagePullPolicy:
@@ -10173,6 +13568,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -10190,6 +13586,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -10202,6 +13599,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -10223,6 +13628,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -10240,6 +13646,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -10252,6 +13659,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -10274,6 +13689,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -10284,6 +13700,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -10304,6 +13721,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -10376,6 +13794,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -10386,6 +13805,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -10406,6 +13826,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -10462,6 +13883,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -10494,16 +13917,27 @@ spec:
properties:
allowPrivilegeEscalation:
type: boolean
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
capabilities:
properties:
add:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
type: boolean
@@ -10559,6 +13993,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -10569,6 +14004,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -10589,6 +14025,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -10666,6 +14103,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
items:
properties:
@@ -10677,6 +14117,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -10686,6 +14128,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
type: string
type: object
@@ -10708,10 +14153,12 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
items:
properties:
@@ -10726,6 +14173,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -10764,6 +14212,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -10776,12 +14225,16 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
items:
properties:
configMapRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -10792,6 +14245,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -10799,6 +14253,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
type: string
imagePullPolicy:
@@ -10813,6 +14268,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -10830,6 +14286,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -10842,6 +14299,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -10863,6 +14328,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -10880,6 +14346,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -10892,6 +14359,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -10914,6 +14389,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -10924,6 +14400,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -10944,6 +14421,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -11016,6 +14494,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -11026,6 +14505,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -11046,6 +14526,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -11102,6 +14583,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -11134,16 +14617,27 @@ spec:
properties:
allowPrivilegeEscalation:
type: boolean
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
capabilities:
properties:
add:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
type: boolean
@@ -11199,6 +14693,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -11209,6 +14704,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -11229,6 +14725,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -11306,6 +14803,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
items:
properties:
@@ -11317,6 +14817,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -11326,6 +14828,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
type: string
type: object
@@ -11335,10 +14840,12 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
items:
properties:
@@ -11353,6 +14860,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -11391,6 +14899,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -11403,12 +14912,16 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
items:
properties:
configMapRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -11419,6 +14932,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -11426,6 +14940,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
type: string
imagePullPolicy:
@@ -11440,6 +14955,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -11457,6 +14973,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -11469,6 +14986,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -11490,6 +15015,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -11507,6 +15033,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -11519,6 +15046,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -11541,6 +15076,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -11551,6 +15087,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -11571,6 +15108,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -11643,6 +15181,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -11653,6 +15192,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -11673,6 +15213,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -11729,6 +15270,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -11761,16 +15304,27 @@ spec:
properties:
allowPrivilegeEscalation:
type: boolean
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
capabilities:
properties:
add:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
type: boolean
@@ -11826,6 +15380,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -11836,6 +15391,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -11856,6 +15412,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -11933,6 +15490,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
items:
properties:
@@ -11944,6 +15504,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -11953,6 +15515,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
type: string
type: object
@@ -11969,10 +15534,12 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
items:
properties:
@@ -11987,6 +15554,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -12025,6 +15593,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -12037,12 +15606,16 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
items:
properties:
configMapRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -12053,6 +15626,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -12060,6 +15634,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
type: string
imagePullPolicy:
@@ -12074,6 +15649,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -12091,6 +15667,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -12103,6 +15680,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -12124,6 +15709,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -12141,6 +15727,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -12153,6 +15740,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -12175,6 +15770,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -12185,6 +15781,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -12205,6 +15802,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -12277,6 +15875,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -12287,6 +15886,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -12307,6 +15907,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -12363,6 +15964,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -12395,16 +15998,27 @@ spec:
properties:
allowPrivilegeEscalation:
type: boolean
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
capabilities:
properties:
add:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
type: boolean
@@ -12460,6 +16074,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -12470,6 +16085,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -12490,6 +16106,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -12567,6 +16184,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
items:
properties:
@@ -12578,6 +16198,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -12587,6 +16209,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
type: string
type: object
@@ -12604,13 +16229,10 @@ spec:
properties:
name:
type: string
- source:
- properties:
- resourceClaimName:
- type: string
- resourceClaimTemplateName:
- type: string
- type: object
+ resourceClaimName:
+ type: string
+ resourceClaimTemplateName:
+ type: string
required:
- name
type: object
@@ -12618,6 +16240,39 @@ spec:
x-kubernetes-list-map-keys:
- name
x-kubernetes-list-type: map
+ resources:
+ properties:
+ claims:
+ items:
+ properties:
+ name:
+ type: string
+ request:
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ limits:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ requests:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ type: object
restartPolicy:
type: string
runtimeClassName:
@@ -12629,7 +16284,14 @@ spec:
- concurrency
- rps
type: string
+ scaleMetricType:
+ enum:
+ - Utilization
+ - Value
+ - AverageValue
+ type: string
scaleTarget:
+ format: int32
type: integer
schedulerName:
type: string
@@ -12647,6 +16309,15 @@ spec:
x-kubernetes-list-type: map
securityContext:
properties:
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
fsGroup:
format: int64
type: integer
@@ -12660,6 +16331,8 @@ spec:
runAsUser:
format: int64
type: integer
+ seLinuxChangePolicy:
+ type: string
seLinuxOptions:
properties:
level:
@@ -12685,6 +16358,9 @@ spec:
format: int64
type: integer
type: array
+ x-kubernetes-list-type: atomic
+ supplementalGroupsPolicy:
+ type: string
sysctls:
items:
properties:
@@ -12697,6 +16373,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
windowsOptions:
properties:
gmsaCredentialSpec:
@@ -12723,10 +16400,12 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
items:
properties:
@@ -12741,6 +16420,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -12779,6 +16459,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -12791,12 +16472,16 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
items:
properties:
configMapRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -12807,6 +16492,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -12814,6 +16500,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
type: string
imagePullPolicy:
@@ -12828,6 +16515,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -12845,6 +16533,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -12857,6 +16546,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -12878,6 +16575,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -12895,6 +16593,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -12907,6 +16606,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -12929,6 +16636,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -12939,6 +16647,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -12959,6 +16668,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -13031,6 +16741,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -13041,6 +16752,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -13061,6 +16773,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -13117,6 +16830,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -13149,16 +16864,27 @@ spec:
properties:
allowPrivilegeEscalation:
type: boolean
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
capabilities:
properties:
add:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
type: boolean
@@ -13214,6 +16940,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -13224,6 +16951,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -13244,6 +16972,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -13321,6 +17050,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
items:
properties:
@@ -13332,6 +17064,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -13341,6 +17075,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
type: string
type: object
@@ -13352,10 +17089,12 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
items:
properties:
@@ -13370,6 +17109,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -13408,6 +17148,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -13420,12 +17161,16 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
items:
properties:
configMapRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -13436,6 +17181,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -13443,6 +17189,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
type: string
imagePullPolicy:
@@ -13457,6 +17204,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -13474,6 +17222,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -13486,6 +17235,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -13507,6 +17264,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -13524,6 +17282,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -13536,6 +17295,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -13558,6 +17325,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -13568,6 +17336,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -13588,6 +17357,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -13660,6 +17430,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -13670,6 +17441,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -13690,6 +17462,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -13746,6 +17519,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -13778,16 +17553,27 @@ spec:
properties:
allowPrivilegeEscalation:
type: boolean
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
capabilities:
properties:
add:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
type: boolean
@@ -13843,6 +17629,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -13853,6 +17640,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -13873,6 +17661,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -13950,6 +17739,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
items:
properties:
@@ -13961,6 +17753,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -13970,6 +17764,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
type: string
type: object
@@ -14011,11 +17808,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -14057,10 +17856,12 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
items:
properties:
@@ -14075,6 +17876,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -14113,6 +17915,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -14125,12 +17928,16 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
items:
properties:
configMapRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -14141,6 +17948,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -14148,6 +17956,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
type: string
imagePullPolicy:
@@ -14162,6 +17971,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -14179,6 +17989,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -14191,6 +18002,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -14212,6 +18031,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -14229,6 +18049,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -14241,6 +18062,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -14263,6 +18092,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -14273,6 +18103,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -14293,6 +18124,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -14365,6 +18197,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -14375,6 +18208,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -14395,6 +18229,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -14451,6 +18286,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -14483,16 +18320,27 @@ spec:
properties:
allowPrivilegeEscalation:
type: boolean
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
capabilities:
properties:
add:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
type: boolean
@@ -14548,6 +18396,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -14558,6 +18407,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -14578,6 +18428,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -14655,6 +18506,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
items:
properties:
@@ -14666,6 +18520,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -14675,6 +18531,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
type: string
type: object
@@ -14704,10 +18563,12 @@ spec:
diskURI:
type: string
fsType:
+ default: ext4
type: string
kind:
type: string
readOnly:
+ default: false
type: boolean
required:
- diskName
@@ -14731,6 +18592,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
readOnly:
@@ -14740,6 +18602,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -14757,6 +18620,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -14785,7 +18649,9 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
name:
+ default: ""
type: string
optional:
type: boolean
@@ -14800,6 +18666,7 @@ spec:
nodePublishSecretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -14855,6 +18722,7 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
emptyDir:
properties:
@@ -14879,6 +18747,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
dataSource:
properties:
apiGroup:
@@ -14908,18 +18777,6 @@ spec:
type: object
resources:
properties:
- claims:
- items:
- properties:
- name:
- type: string
- required:
- - name
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - name
- x-kubernetes-list-type: map
limits:
additionalProperties:
anyOf:
@@ -14950,11 +18807,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -14963,6 +18822,8 @@ spec:
x-kubernetes-map-type: atomic
storageClassName:
type: string
+ volumeAttributesClassName:
+ type: string
volumeMode:
type: string
volumeName:
@@ -14985,10 +18846,12 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
wwids:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
flexVolume:
properties:
@@ -15005,6 +18868,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -15064,6 +18928,13 @@ spec:
required:
- path
type: object
+ image:
+ properties:
+ pullPolicy:
+ type: string
+ reference:
+ type: string
+ type: object
iscsi:
properties:
chapAuthDiscovery:
@@ -15077,6 +18948,7 @@ spec:
iqn:
type: string
iscsiInterface:
+ default: default
type: string
lun:
format: int32
@@ -15085,11 +18957,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
readOnly:
type: boolean
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -15151,6 +19025,45 @@ spec:
sources:
items:
properties:
+ clusterTrustBundle:
+ properties:
+ labelSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ name:
+ type: string
+ optional:
+ type: boolean
+ path:
+ type: string
+ signerName:
+ type: string
+ required:
+ - path
+ type: object
configMap:
properties:
items:
@@ -15168,7 +19081,9 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
name:
+ default: ""
type: string
optional:
type: boolean
@@ -15214,6 +19129,7 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
secret:
properties:
@@ -15232,7 +19148,9 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
name:
+ default: ""
type: string
optional:
type: boolean
@@ -15252,6 +19170,7 @@ spec:
type: object
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
quobyte:
properties:
@@ -15278,22 +19197,27 @@ spec:
image:
type: string
keyring:
+ default: /etc/ceph/keyring
type: string
monitors:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
pool:
+ default: rbd
type: string
readOnly:
type: boolean
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
user:
+ default: admin
type: string
required:
- image
@@ -15302,6 +19226,7 @@ spec:
scaleIO:
properties:
fsType:
+ default: xfs
type: string
gateway:
type: string
@@ -15312,12 +19237,14 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
sslEnabled:
type: boolean
storageMode:
+ default: ThinProvisioned
type: string
storagePool:
type: string
@@ -15350,6 +19277,7 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
optional:
type: boolean
secretName:
@@ -15364,6 +19292,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -15389,16 +19318,3623 @@ spec:
- name
type: object
type: array
+ workerSpec:
+ properties:
+ activeDeadlineSeconds:
+ format: int64
+ type: integer
+ affinity:
+ properties:
+ nodeAffinity:
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ items:
+ properties:
+ preference:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchFields:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ x-kubernetes-map-type: atomic
+ weight:
+ format: int32
+ type: integer
+ required:
+ - preference
+ - weight
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ properties:
+ nodeSelectorTerms:
+ items:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchFields:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ x-kubernetes-map-type: atomic
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - nodeSelectorTerms
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ podAffinity:
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ items:
+ properties:
+ podAffinityTerm:
+ properties:
+ labelSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ namespaces:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ type: string
+ required:
+ - topologyKey
+ type: object
+ weight:
+ format: int32
+ type: integer
+ required:
+ - podAffinityTerm
+ - weight
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ items:
+ properties:
+ labelSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ namespaces:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ type: string
+ required:
+ - topologyKey
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ podAntiAffinity:
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ items:
+ properties:
+ podAffinityTerm:
+ properties:
+ labelSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ namespaces:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ type: string
+ required:
+ - topologyKey
+ type: object
+ weight:
+ format: int32
+ type: integer
+ required:
+ - podAffinityTerm
+ - weight
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ items:
+ properties:
+ labelSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ namespaces:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ type: string
+ required:
+ - topologyKey
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ type: object
+ automountServiceAccountToken:
+ type: boolean
+ containers:
+ items:
+ properties:
+ args:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ env:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ valueFrom:
+ properties:
+ configMapKeyRef:
+ properties:
+ key:
+ type: string
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ fieldRef:
+ properties:
+ apiVersion:
+ type: string
+ fieldPath:
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ resourceFieldRef:
+ properties:
+ containerName:
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ secretKeyRef:
+ properties:
+ key:
+ type: string
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ envFrom:
+ items:
+ properties:
+ configMapRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ prefix:
+ type: string
+ secretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ image:
+ type: string
+ imagePullPolicy:
+ type: string
+ lifecycle:
+ properties:
+ postStart:
+ properties:
+ exec:
+ properties:
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ properties:
+ host:
+ type: string
+ httpHeaders:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ scheme:
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ properties:
+ host:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ preStop:
+ properties:
+ exec:
+ properties:
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ properties:
+ host:
+ type: string
+ httpHeaders:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ scheme:
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ properties:
+ host:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ type: object
+ livenessProbe:
+ properties:
+ exec:
+ properties:
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ format: int32
+ type: integer
+ grpc:
+ properties:
+ port:
+ format: int32
+ type: integer
+ service:
+ default: ""
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ properties:
+ host:
+ type: string
+ httpHeaders:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ scheme:
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ format: int32
+ type: integer
+ periodSeconds:
+ format: int32
+ type: integer
+ successThreshold:
+ format: int32
+ type: integer
+ tcpSocket:
+ properties:
+ host:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ format: int64
+ type: integer
+ timeoutSeconds:
+ format: int32
+ type: integer
+ type: object
+ name:
+ type: string
+ ports:
+ items:
+ properties:
+ containerPort:
+ format: int32
+ type: integer
+ hostIP:
+ type: string
+ hostPort:
+ format: int32
+ type: integer
+ name:
+ type: string
+ protocol:
+ default: TCP
+ type: string
+ required:
+ - containerPort
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - containerPort
+ - protocol
+ x-kubernetes-list-type: map
+ readinessProbe:
+ properties:
+ exec:
+ properties:
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ format: int32
+ type: integer
+ grpc:
+ properties:
+ port:
+ format: int32
+ type: integer
+ service:
+ default: ""
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ properties:
+ host:
+ type: string
+ httpHeaders:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ scheme:
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ format: int32
+ type: integer
+ periodSeconds:
+ format: int32
+ type: integer
+ successThreshold:
+ format: int32
+ type: integer
+ tcpSocket:
+ properties:
+ host:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ format: int64
+ type: integer
+ timeoutSeconds:
+ format: int32
+ type: integer
+ type: object
+ resizePolicy:
+ items:
+ properties:
+ resourceName:
+ type: string
+ restartPolicy:
+ type: string
+ required:
+ - resourceName
+ - restartPolicy
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ resources:
+ properties:
+ claims:
+ items:
+ properties:
+ name:
+ type: string
+ request:
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ limits:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ requests:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ type: object
+ restartPolicy:
+ type: string
+ securityContext:
+ properties:
+ allowPrivilegeEscalation:
+ type: boolean
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
+ capabilities:
+ properties:
+ add:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ drop:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ privileged:
+ type: boolean
+ procMount:
+ type: string
+ readOnlyRootFilesystem:
+ type: boolean
+ runAsGroup:
+ format: int64
+ type: integer
+ runAsNonRoot:
+ type: boolean
+ runAsUser:
+ format: int64
+ type: integer
+ seLinuxOptions:
+ properties:
+ level:
+ type: string
+ role:
+ type: string
+ type:
+ type: string
+ user:
+ type: string
+ type: object
+ seccompProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
+ windowsOptions:
+ properties:
+ gmsaCredentialSpec:
+ type: string
+ gmsaCredentialSpecName:
+ type: string
+ hostProcess:
+ type: boolean
+ runAsUserName:
+ type: string
+ type: object
+ type: object
+ startupProbe:
+ properties:
+ exec:
+ properties:
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ format: int32
+ type: integer
+ grpc:
+ properties:
+ port:
+ format: int32
+ type: integer
+ service:
+ default: ""
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ properties:
+ host:
+ type: string
+ httpHeaders:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ scheme:
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ format: int32
+ type: integer
+ periodSeconds:
+ format: int32
+ type: integer
+ successThreshold:
+ format: int32
+ type: integer
+ tcpSocket:
+ properties:
+ host:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ format: int64
+ type: integer
+ timeoutSeconds:
+ format: int32
+ type: integer
+ type: object
+ stdin:
+ type: boolean
+ stdinOnce:
+ type: boolean
+ terminationMessagePath:
+ type: string
+ terminationMessagePolicy:
+ type: string
+ tty:
+ type: boolean
+ volumeDevices:
+ items:
+ properties:
+ devicePath:
+ type: string
+ name:
+ type: string
+ required:
+ - devicePath
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
+ volumeMounts:
+ items:
+ properties:
+ mountPath:
+ type: string
+ mountPropagation:
+ type: string
+ name:
+ type: string
+ readOnly:
+ type: boolean
+ recursiveReadOnly:
+ type: string
+ subPath:
+ type: string
+ subPathExpr:
+ type: string
+ required:
+ - mountPath
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
+ workingDir:
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ dnsConfig:
+ properties:
+ nameservers:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ options:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ searches:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ dnsPolicy:
+ type: string
+ enableServiceLinks:
+ type: boolean
+ ephemeralContainers:
+ items:
+ properties:
+ args:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ env:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ valueFrom:
+ properties:
+ configMapKeyRef:
+ properties:
+ key:
+ type: string
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ fieldRef:
+ properties:
+ apiVersion:
+ type: string
+ fieldPath:
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ resourceFieldRef:
+ properties:
+ containerName:
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ secretKeyRef:
+ properties:
+ key:
+ type: string
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ envFrom:
+ items:
+ properties:
+ configMapRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ prefix:
+ type: string
+ secretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ image:
+ type: string
+ imagePullPolicy:
+ type: string
+ lifecycle:
+ properties:
+ postStart:
+ properties:
+ exec:
+ properties:
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ properties:
+ host:
+ type: string
+ httpHeaders:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ scheme:
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ properties:
+ host:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ preStop:
+ properties:
+ exec:
+ properties:
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ properties:
+ host:
+ type: string
+ httpHeaders:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ scheme:
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ properties:
+ host:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ type: object
+ livenessProbe:
+ properties:
+ exec:
+ properties:
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ format: int32
+ type: integer
+ grpc:
+ properties:
+ port:
+ format: int32
+ type: integer
+ service:
+ default: ""
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ properties:
+ host:
+ type: string
+ httpHeaders:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ scheme:
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ format: int32
+ type: integer
+ periodSeconds:
+ format: int32
+ type: integer
+ successThreshold:
+ format: int32
+ type: integer
+ tcpSocket:
+ properties:
+ host:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ format: int64
+ type: integer
+ timeoutSeconds:
+ format: int32
+ type: integer
+ type: object
+ name:
+ type: string
+ ports:
+ items:
+ properties:
+ containerPort:
+ format: int32
+ type: integer
+ hostIP:
+ type: string
+ hostPort:
+ format: int32
+ type: integer
+ name:
+ type: string
+ protocol:
+ default: TCP
+ type: string
+ required:
+ - containerPort
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - containerPort
+ - protocol
+ x-kubernetes-list-type: map
+ readinessProbe:
+ properties:
+ exec:
+ properties:
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ format: int32
+ type: integer
+ grpc:
+ properties:
+ port:
+ format: int32
+ type: integer
+ service:
+ default: ""
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ properties:
+ host:
+ type: string
+ httpHeaders:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ scheme:
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ format: int32
+ type: integer
+ periodSeconds:
+ format: int32
+ type: integer
+ successThreshold:
+ format: int32
+ type: integer
+ tcpSocket:
+ properties:
+ host:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ format: int64
+ type: integer
+ timeoutSeconds:
+ format: int32
+ type: integer
+ type: object
+ resizePolicy:
+ items:
+ properties:
+ resourceName:
+ type: string
+ restartPolicy:
+ type: string
+ required:
+ - resourceName
+ - restartPolicy
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ resources:
+ properties:
+ claims:
+ items:
+ properties:
+ name:
+ type: string
+ request:
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ limits:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ requests:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ type: object
+ restartPolicy:
+ type: string
+ securityContext:
+ properties:
+ allowPrivilegeEscalation:
+ type: boolean
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
+ capabilities:
+ properties:
+ add:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ drop:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ privileged:
+ type: boolean
+ procMount:
+ type: string
+ readOnlyRootFilesystem:
+ type: boolean
+ runAsGroup:
+ format: int64
+ type: integer
+ runAsNonRoot:
+ type: boolean
+ runAsUser:
+ format: int64
+ type: integer
+ seLinuxOptions:
+ properties:
+ level:
+ type: string
+ role:
+ type: string
+ type:
+ type: string
+ user:
+ type: string
+ type: object
+ seccompProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
+ windowsOptions:
+ properties:
+ gmsaCredentialSpec:
+ type: string
+ gmsaCredentialSpecName:
+ type: string
+ hostProcess:
+ type: boolean
+ runAsUserName:
+ type: string
+ type: object
+ type: object
+ startupProbe:
+ properties:
+ exec:
+ properties:
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ format: int32
+ type: integer
+ grpc:
+ properties:
+ port:
+ format: int32
+ type: integer
+ service:
+ default: ""
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ properties:
+ host:
+ type: string
+ httpHeaders:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ scheme:
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ format: int32
+ type: integer
+ periodSeconds:
+ format: int32
+ type: integer
+ successThreshold:
+ format: int32
+ type: integer
+ tcpSocket:
+ properties:
+ host:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ format: int64
+ type: integer
+ timeoutSeconds:
+ format: int32
+ type: integer
+ type: object
+ stdin:
+ type: boolean
+ stdinOnce:
+ type: boolean
+ targetContainerName:
+ type: string
+ terminationMessagePath:
+ type: string
+ terminationMessagePolicy:
+ type: string
+ tty:
+ type: boolean
+ volumeDevices:
+ items:
+ properties:
+ devicePath:
+ type: string
+ name:
+ type: string
+ required:
+ - devicePath
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
+ volumeMounts:
+ items:
+ properties:
+ mountPath:
+ type: string
+ mountPropagation:
+ type: string
+ name:
+ type: string
+ readOnly:
+ type: boolean
+ recursiveReadOnly:
+ type: string
+ subPath:
+ type: string
+ subPathExpr:
+ type: string
+ required:
+ - mountPath
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
+ workingDir:
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ hostAliases:
+ items:
+ properties:
+ hostnames:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ ip:
+ type: string
+ required:
+ - ip
+ type: object
+ type: array
+ hostIPC:
+ type: boolean
+ hostNetwork:
+ type: boolean
+ hostPID:
+ type: boolean
+ hostUsers:
+ type: boolean
+ hostname:
+ type: string
+ imagePullSecrets:
+ items:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ type: array
+ initContainers:
+ items:
+ properties:
+ args:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ env:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ valueFrom:
+ properties:
+ configMapKeyRef:
+ properties:
+ key:
+ type: string
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ fieldRef:
+ properties:
+ apiVersion:
+ type: string
+ fieldPath:
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ resourceFieldRef:
+ properties:
+ containerName:
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ secretKeyRef:
+ properties:
+ key:
+ type: string
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ envFrom:
+ items:
+ properties:
+ configMapRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ prefix:
+ type: string
+ secretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ image:
+ type: string
+ imagePullPolicy:
+ type: string
+ lifecycle:
+ properties:
+ postStart:
+ properties:
+ exec:
+ properties:
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ properties:
+ host:
+ type: string
+ httpHeaders:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ scheme:
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ properties:
+ host:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ preStop:
+ properties:
+ exec:
+ properties:
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ properties:
+ host:
+ type: string
+ httpHeaders:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ scheme:
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ properties:
+ host:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ type: object
+ livenessProbe:
+ properties:
+ exec:
+ properties:
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ format: int32
+ type: integer
+ grpc:
+ properties:
+ port:
+ format: int32
+ type: integer
+ service:
+ default: ""
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ properties:
+ host:
+ type: string
+ httpHeaders:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ scheme:
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ format: int32
+ type: integer
+ periodSeconds:
+ format: int32
+ type: integer
+ successThreshold:
+ format: int32
+ type: integer
+ tcpSocket:
+ properties:
+ host:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ format: int64
+ type: integer
+ timeoutSeconds:
+ format: int32
+ type: integer
+ type: object
+ name:
+ type: string
+ ports:
+ items:
+ properties:
+ containerPort:
+ format: int32
+ type: integer
+ hostIP:
+ type: string
+ hostPort:
+ format: int32
+ type: integer
+ name:
+ type: string
+ protocol:
+ default: TCP
+ type: string
+ required:
+ - containerPort
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - containerPort
+ - protocol
+ x-kubernetes-list-type: map
+ readinessProbe:
+ properties:
+ exec:
+ properties:
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ format: int32
+ type: integer
+ grpc:
+ properties:
+ port:
+ format: int32
+ type: integer
+ service:
+ default: ""
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ properties:
+ host:
+ type: string
+ httpHeaders:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ scheme:
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ format: int32
+ type: integer
+ periodSeconds:
+ format: int32
+ type: integer
+ successThreshold:
+ format: int32
+ type: integer
+ tcpSocket:
+ properties:
+ host:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ format: int64
+ type: integer
+ timeoutSeconds:
+ format: int32
+ type: integer
+ type: object
+ resizePolicy:
+ items:
+ properties:
+ resourceName:
+ type: string
+ restartPolicy:
+ type: string
+ required:
+ - resourceName
+ - restartPolicy
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ resources:
+ properties:
+ claims:
+ items:
+ properties:
+ name:
+ type: string
+ request:
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ limits:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ requests:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ type: object
+ restartPolicy:
+ type: string
+ securityContext:
+ properties:
+ allowPrivilegeEscalation:
+ type: boolean
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
+ capabilities:
+ properties:
+ add:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ drop:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ privileged:
+ type: boolean
+ procMount:
+ type: string
+ readOnlyRootFilesystem:
+ type: boolean
+ runAsGroup:
+ format: int64
+ type: integer
+ runAsNonRoot:
+ type: boolean
+ runAsUser:
+ format: int64
+ type: integer
+ seLinuxOptions:
+ properties:
+ level:
+ type: string
+ role:
+ type: string
+ type:
+ type: string
+ user:
+ type: string
+ type: object
+ seccompProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
+ windowsOptions:
+ properties:
+ gmsaCredentialSpec:
+ type: string
+ gmsaCredentialSpecName:
+ type: string
+ hostProcess:
+ type: boolean
+ runAsUserName:
+ type: string
+ type: object
+ type: object
+ startupProbe:
+ properties:
+ exec:
+ properties:
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ format: int32
+ type: integer
+ grpc:
+ properties:
+ port:
+ format: int32
+ type: integer
+ service:
+ default: ""
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ properties:
+ host:
+ type: string
+ httpHeaders:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ scheme:
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ format: int32
+ type: integer
+ periodSeconds:
+ format: int32
+ type: integer
+ successThreshold:
+ format: int32
+ type: integer
+ tcpSocket:
+ properties:
+ host:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ format: int64
+ type: integer
+ timeoutSeconds:
+ format: int32
+ type: integer
+ type: object
+ stdin:
+ type: boolean
+ stdinOnce:
+ type: boolean
+ terminationMessagePath:
+ type: string
+ terminationMessagePolicy:
+ type: string
+ tty:
+ type: boolean
+ volumeDevices:
+ items:
+ properties:
+ devicePath:
+ type: string
+ name:
+ type: string
+ required:
+ - devicePath
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
+ volumeMounts:
+ items:
+ properties:
+ mountPath:
+ type: string
+ mountPropagation:
+ type: string
+ name:
+ type: string
+ readOnly:
+ type: boolean
+ recursiveReadOnly:
+ type: string
+ subPath:
+ type: string
+ subPathExpr:
+ type: string
+ required:
+ - mountPath
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
+ workingDir:
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ nodeName:
+ type: string
+ nodeSelector:
+ additionalProperties:
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ os:
+ properties:
+ name:
+ type: string
+ required:
+ - name
+ type: object
+ overhead:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ pipelineParallelSize:
+ type: integer
+ preemptionPolicy:
+ type: string
+ priority:
+ format: int32
+ type: integer
+ priorityClassName:
+ type: string
+ readinessGates:
+ items:
+ properties:
+ conditionType:
+ type: string
+ required:
+ - conditionType
+ type: object
+ type: array
+ resourceClaims:
+ items:
+ properties:
+ name:
+ type: string
+ resourceClaimName:
+ type: string
+ resourceClaimTemplateName:
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ resources:
+ properties:
+ claims:
+ items:
+ properties:
+ name:
+ type: string
+ request:
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ limits:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ requests:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ type: object
+ restartPolicy:
+ type: string
+ runtimeClassName:
+ type: string
+ schedulerName:
+ type: string
+ schedulingGates:
+ items:
+ properties:
+ name:
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ securityContext:
+ properties:
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
+ fsGroup:
+ format: int64
+ type: integer
+ fsGroupChangePolicy:
+ type: string
+ runAsGroup:
+ format: int64
+ type: integer
+ runAsNonRoot:
+ type: boolean
+ runAsUser:
+ format: int64
+ type: integer
+ seLinuxChangePolicy:
+ type: string
+ seLinuxOptions:
+ properties:
+ level:
+ type: string
+ role:
+ type: string
+ type:
+ type: string
+ user:
+ type: string
+ type: object
+ seccompProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
+ supplementalGroups:
+ items:
+ format: int64
+ type: integer
+ type: array
+ x-kubernetes-list-type: atomic
+ supplementalGroupsPolicy:
+ type: string
+ sysctls:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ windowsOptions:
+ properties:
+ gmsaCredentialSpec:
+ type: string
+ gmsaCredentialSpecName:
+ type: string
+ hostProcess:
+ type: boolean
+ runAsUserName:
+ type: string
+ type: object
+ type: object
+ serviceAccount:
+ type: string
+ serviceAccountName:
+ type: string
+ setHostnameAsFQDN:
+ type: boolean
+ shareProcessNamespace:
+ type: boolean
+ subdomain:
+ type: string
+ tensorParallelSize:
+ type: integer
+ terminationGracePeriodSeconds:
+ format: int64
+ type: integer
+ tolerations:
+ items:
+ properties:
+ effect:
+ type: string
+ key:
+ type: string
+ operator:
+ type: string
+ tolerationSeconds:
+ format: int64
+ type: integer
+ value:
+ type: string
+ type: object
+ type: array
+ topologySpreadConstraints:
+ items:
+ properties:
+ labelSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ maxSkew:
+ format: int32
+ type: integer
+ minDomains:
+ format: int32
+ type: integer
+ nodeAffinityPolicy:
+ type: string
+ nodeTaintsPolicy:
+ type: string
+ topologyKey:
+ type: string
+ whenUnsatisfiable:
+ type: string
+ required:
+ - maxSkew
+ - topologyKey
+ - whenUnsatisfiable
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - topologyKey
+ - whenUnsatisfiable
+ x-kubernetes-list-type: map
+ volumes:
+ items:
+ properties:
+ awsElasticBlockStore:
+ properties:
+ fsType:
+ type: string
+ partition:
+ format: int32
+ type: integer
+ readOnly:
+ type: boolean
+ volumeID:
+ type: string
+ required:
+ - volumeID
+ type: object
+ azureDisk:
+ properties:
+ cachingMode:
+ type: string
+ diskName:
+ type: string
+ diskURI:
+ type: string
+ fsType:
+ default: ext4
+ type: string
+ kind:
+ type: string
+ readOnly:
+ default: false
+ type: boolean
+ required:
+ - diskName
+ - diskURI
+ type: object
+ azureFile:
+ properties:
+ readOnly:
+ type: boolean
+ secretName:
+ type: string
+ shareName:
+ type: string
+ required:
+ - secretName
+ - shareName
+ type: object
+ cephfs:
+ properties:
+ monitors:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ readOnly:
+ type: boolean
+ secretFile:
+ type: string
+ secretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ user:
+ type: string
+ required:
+ - monitors
+ type: object
+ cinder:
+ properties:
+ fsType:
+ type: string
+ readOnly:
+ type: boolean
+ secretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ volumeID:
+ type: string
+ required:
+ - volumeID
+ type: object
+ configMap:
+ properties:
+ defaultMode:
+ format: int32
+ type: integer
+ items:
+ items:
+ properties:
+ key:
+ type: string
+ mode:
+ format: int32
+ type: integer
+ path:
+ type: string
+ required:
+ - key
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ csi:
+ properties:
+ driver:
+ type: string
+ fsType:
+ type: string
+ nodePublishSecretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ readOnly:
+ type: boolean
+ volumeAttributes:
+ additionalProperties:
+ type: string
+ type: object
+ required:
+ - driver
+ type: object
+ downwardAPI:
+ properties:
+ defaultMode:
+ format: int32
+ type: integer
+ items:
+ items:
+ properties:
+ fieldRef:
+ properties:
+ apiVersion:
+ type: string
+ fieldPath:
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ mode:
+ format: int32
+ type: integer
+ path:
+ type: string
+ resourceFieldRef:
+ properties:
+ containerName:
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ required:
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ emptyDir:
+ properties:
+ medium:
+ type: string
+ sizeLimit:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ ephemeral:
+ properties:
+ volumeClaimTemplate:
+ properties:
+ metadata:
+ type: object
+ spec:
+ properties:
+ accessModes:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ dataSource:
+ properties:
+ apiGroup:
+ type: string
+ kind:
+ type: string
+ name:
+ type: string
+ required:
+ - kind
+ - name
+ type: object
+ x-kubernetes-map-type: atomic
+ dataSourceRef:
+ properties:
+ apiGroup:
+ type: string
+ kind:
+ type: string
+ name:
+ type: string
+ namespace:
+ type: string
+ required:
+ - kind
+ - name
+ type: object
+ resources:
+ properties:
+ limits:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ requests:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ type: object
+ selector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ storageClassName:
+ type: string
+ volumeAttributesClassName:
+ type: string
+ volumeMode:
+ type: string
+ volumeName:
+ type: string
+ type: object
+ required:
+ - spec
+ type: object
+ type: object
+ fc:
+ properties:
+ fsType:
+ type: string
+ lun:
+ format: int32
+ type: integer
+ readOnly:
+ type: boolean
+ targetWWNs:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ wwids:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ flexVolume:
+ properties:
+ driver:
+ type: string
+ fsType:
+ type: string
+ options:
+ additionalProperties:
+ type: string
+ type: object
+ readOnly:
+ type: boolean
+ secretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ required:
+ - driver
+ type: object
+ flocker:
+ properties:
+ datasetName:
+ type: string
+ datasetUUID:
+ type: string
+ type: object
+ gcePersistentDisk:
+ properties:
+ fsType:
+ type: string
+ partition:
+ format: int32
+ type: integer
+ pdName:
+ type: string
+ readOnly:
+ type: boolean
+ required:
+ - pdName
+ type: object
+ gitRepo:
+ properties:
+ directory:
+ type: string
+ repository:
+ type: string
+ revision:
+ type: string
+ required:
+ - repository
+ type: object
+ glusterfs:
+ properties:
+ endpoints:
+ type: string
+ path:
+ type: string
+ readOnly:
+ type: boolean
+ required:
+ - endpoints
+ - path
+ type: object
+ hostPath:
+ properties:
+ path:
+ type: string
+ type:
+ type: string
+ required:
+ - path
+ type: object
+ image:
+ properties:
+ pullPolicy:
+ type: string
+ reference:
+ type: string
+ type: object
+ iscsi:
+ properties:
+ chapAuthDiscovery:
+ type: boolean
+ chapAuthSession:
+ type: boolean
+ fsType:
+ type: string
+ initiatorName:
+ type: string
+ iqn:
+ type: string
+ iscsiInterface:
+ default: default
+ type: string
+ lun:
+ format: int32
+ type: integer
+ portals:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ readOnly:
+ type: boolean
+ secretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ targetPortal:
+ type: string
+ required:
+ - iqn
+ - lun
+ - targetPortal
+ type: object
+ name:
+ type: string
+ nfs:
+ properties:
+ path:
+ type: string
+ readOnly:
+ type: boolean
+ server:
+ type: string
+ required:
+ - path
+ - server
+ type: object
+ persistentVolumeClaim:
+ properties:
+ claimName:
+ type: string
+ readOnly:
+ type: boolean
+ required:
+ - claimName
+ type: object
+ photonPersistentDisk:
+ properties:
+ fsType:
+ type: string
+ pdID:
+ type: string
+ required:
+ - pdID
+ type: object
+ portworxVolume:
+ properties:
+ fsType:
+ type: string
+ readOnly:
+ type: boolean
+ volumeID:
+ type: string
+ required:
+ - volumeID
+ type: object
+ projected:
+ properties:
+ defaultMode:
+ format: int32
+ type: integer
+ sources:
+ items:
+ properties:
+ clusterTrustBundle:
+ properties:
+ labelSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ name:
+ type: string
+ optional:
+ type: boolean
+ path:
+ type: string
+ signerName:
+ type: string
+ required:
+ - path
+ type: object
+ configMap:
+ properties:
+ items:
+ items:
+ properties:
+ key:
+ type: string
+ mode:
+ format: int32
+ type: integer
+ path:
+ type: string
+ required:
+ - key
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ downwardAPI:
+ properties:
+ items:
+ items:
+ properties:
+ fieldRef:
+ properties:
+ apiVersion:
+ type: string
+ fieldPath:
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ mode:
+ format: int32
+ type: integer
+ path:
+ type: string
+ resourceFieldRef:
+ properties:
+ containerName:
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ required:
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ secret:
+ properties:
+ items:
+ items:
+ properties:
+ key:
+ type: string
+ mode:
+ format: int32
+ type: integer
+ path:
+ type: string
+ required:
+ - key
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ serviceAccountToken:
+ properties:
+ audience:
+ type: string
+ expirationSeconds:
+ format: int64
+ type: integer
+ path:
+ type: string
+ required:
+ - path
+ type: object
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ quobyte:
+ properties:
+ group:
+ type: string
+ readOnly:
+ type: boolean
+ registry:
+ type: string
+ tenant:
+ type: string
+ user:
+ type: string
+ volume:
+ type: string
+ required:
+ - registry
+ - volume
+ type: object
+ rbd:
+ properties:
+ fsType:
+ type: string
+ image:
+ type: string
+ keyring:
+ default: /etc/ceph/keyring
+ type: string
+ monitors:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ pool:
+ default: rbd
+ type: string
+ readOnly:
+ type: boolean
+ secretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ user:
+ default: admin
+ type: string
+ required:
+ - image
+ - monitors
+ type: object
+ scaleIO:
+ properties:
+ fsType:
+ default: xfs
+ type: string
+ gateway:
+ type: string
+ protectionDomain:
+ type: string
+ readOnly:
+ type: boolean
+ secretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ sslEnabled:
+ type: boolean
+ storageMode:
+ default: ThinProvisioned
+ type: string
+ storagePool:
+ type: string
+ system:
+ type: string
+ volumeName:
+ type: string
+ required:
+ - gateway
+ - secretRef
+ - system
+ type: object
+ secret:
+ properties:
+ defaultMode:
+ format: int32
+ type: integer
+ items:
+ items:
+ properties:
+ key:
+ type: string
+ mode:
+ format: int32
+ type: integer
+ path:
+ type: string
+ required:
+ - key
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ optional:
+ type: boolean
+ secretName:
+ type: string
+ type: object
+ storageos:
+ properties:
+ fsType:
+ type: string
+ readOnly:
+ type: boolean
+ secretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ volumeName:
+ type: string
+ volumeNamespace:
+ type: string
+ type: object
+ vsphereVolume:
+ properties:
+ fsType:
+ type: string
+ storagePolicyID:
+ type: string
+ storagePolicyName:
+ type: string
+ volumePath:
+ type: string
+ required:
+ - volumePath
+ type: object
+ required:
+ - name
+ type: object
+ type: array
+ type: object
xgboost:
properties:
args:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
items:
properties:
@@ -15413,6 +22949,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -15451,6 +22988,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -15463,12 +23001,16 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
items:
properties:
configMapRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -15479,6 +23021,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -15486,6 +23029,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
type: string
imagePullPolicy:
@@ -15500,6 +23044,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -15517,6 +23062,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -15529,6 +23075,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -15550,6 +23104,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -15567,6 +23122,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -15579,6 +23135,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -15601,6 +23165,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -15611,6 +23176,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -15631,6 +23197,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -15703,6 +23270,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -15713,6 +23281,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -15733,6 +23302,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -15789,6 +23359,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -15821,16 +23393,27 @@ spec:
properties:
allowPrivilegeEscalation:
type: boolean
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
capabilities:
properties:
add:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
type: boolean
@@ -15886,6 +23469,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -15896,6 +23480,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -15916,6 +23501,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -15993,6 +23579,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
items:
properties:
@@ -16004,6 +23593,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -16013,6 +23604,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
type: string
type: object
@@ -16042,11 +23636,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchFields:
items:
properties:
@@ -16058,11 +23654,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
x-kubernetes-map-type: atomic
weight:
@@ -16073,6 +23671,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
properties:
nodeSelectorTerms:
@@ -16089,11 +23688,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchFields:
items:
properties:
@@ -16105,14 +23706,17 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
x-kubernetes-map-type: atomic
type: array
+ x-kubernetes-list-type: atomic
required:
- nodeSelectorTerms
type: object
@@ -16138,17 +23742,29 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
properties:
matchExpressions:
@@ -16162,11 +23778,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -16177,6 +23795,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
type: string
required:
@@ -16190,6 +23809,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
items:
properties:
@@ -16206,17 +23826,29 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
properties:
matchExpressions:
@@ -16230,11 +23862,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -16245,12 +23879,14 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
type: string
required:
- topologyKey
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
podAntiAffinity:
properties:
@@ -16272,17 +23908,29 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
properties:
matchExpressions:
@@ -16296,11 +23944,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -16311,6 +23961,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
type: string
required:
@@ -16324,6 +23975,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
items:
properties:
@@ -16340,17 +23992,29 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
properties:
matchExpressions:
@@ -16364,11 +24028,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -16379,18 +24045,162 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
type: string
required:
- topologyKey
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
type: object
annotations:
additionalProperties:
type: string
type: object
+ autoScaling:
+ properties:
+ metrics:
+ items:
+ properties:
+ external:
+ properties:
+ metric:
+ properties:
+ backend:
+ enum:
+ - prometheus
+ - graphite
+ type: string
+ namespace:
+ type: string
+ query:
+ type: string
+ serverAddress:
+ type: string
+ type: object
+ target:
+ properties:
+ averageUtilization:
+ format: int32
+ type: integer
+ averageValue:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type:
+ enum:
+ - Utilization
+ - Value
+ - AverageValue
+ type: string
+ value:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ required:
+ - metric
+ - target
+ type: object
+ podmetric:
+ properties:
+ metric:
+ properties:
+ backend:
+ enum:
+ - opentelemetry
+ type: string
+ metricNames:
+ items:
+ type: string
+ type: array
+ operationOverTime:
+ type: string
+ query:
+ type: string
+ serverAddress:
+ type: string
+ type: object
+ target:
+ properties:
+ averageUtilization:
+ format: int32
+ type: integer
+ averageValue:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type:
+ enum:
+ - Utilization
+ - Value
+ - AverageValue
+ type: string
+ value:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ required:
+ - metric
+ - target
+ type: object
+ resource:
+ properties:
+ name:
+ enum:
+ - cpu
+ - memory
+ type: string
+ target:
+ properties:
+ averageUtilization:
+ format: int32
+ type: integer
+ averageValue:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type:
+ enum:
+ - Utilization
+ - Value
+ - AverageValue
+ type: string
+ value:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ required:
+ - name
+ - target
+ type: object
+ type:
+ enum:
+ - Resource
+ - External
+ - PodMetric
+ type: string
+ required:
+ - type
+ type: object
+ type: array
+ type: object
automountServiceAccountToken:
type: boolean
batcher:
@@ -16415,10 +24225,12 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
items:
properties:
@@ -16433,6 +24245,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -16471,6 +24284,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -16483,12 +24297,16 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
items:
properties:
configMapRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -16499,6 +24317,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -16506,6 +24325,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
type: string
imagePullPolicy:
@@ -16520,6 +24340,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -16537,6 +24358,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -16549,6 +24371,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -16570,6 +24400,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -16587,6 +24418,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -16599,6 +24431,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -16621,6 +24461,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -16631,6 +24472,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -16651,6 +24493,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -16723,6 +24566,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -16733,6 +24577,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -16753,6 +24598,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -16811,6 +24657,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -16841,16 +24689,27 @@ spec:
properties:
allowPrivilegeEscalation:
type: boolean
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
capabilities:
properties:
add:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
type: boolean
@@ -16906,6 +24765,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -16916,6 +24776,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -16936,6 +24797,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -16998,6 +24860,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
items:
properties:
@@ -17009,6 +24874,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -17018,6 +24885,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
type: string
required:
@@ -17048,6 +24918,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
options:
items:
properties:
@@ -17057,10 +24928,12 @@ spec:
type: string
type: object
type: array
+ x-kubernetes-list-type: atomic
searches:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
dnsPolicy:
type: string
@@ -17073,8 +24946,11 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
ip:
type: string
+ required:
+ - ip
type: object
type: array
hostIPC:
@@ -17091,6 +24967,7 @@ spec:
items:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -17102,10 +24979,12 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
items:
properties:
@@ -17120,6 +24999,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -17158,6 +25038,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -17170,12 +25051,16 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
items:
properties:
configMapRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -17186,6 +25071,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -17193,6 +25079,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
type: string
imagePullPolicy:
@@ -17207,6 +25094,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -17224,6 +25112,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -17236,6 +25125,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -17257,6 +25154,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -17274,6 +25172,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -17286,6 +25185,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -17308,6 +25215,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -17318,6 +25226,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -17338,6 +25247,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -17412,6 +25322,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -17422,6 +25333,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -17442,6 +25354,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -17502,6 +25415,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -17532,16 +25447,27 @@ spec:
properties:
allowPrivilegeEscalation:
type: boolean
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
capabilities:
properties:
add:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
type: boolean
@@ -17597,6 +25523,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -17607,6 +25534,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -17627,6 +25555,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -17689,6 +25618,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
items:
properties:
@@ -17700,6 +25632,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -17709,6 +25643,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
type: string
required:
@@ -17721,6 +25658,10 @@ spec:
type: object
logger:
properties:
+ metadataHeaders:
+ items:
+ type: string
+ type: array
mode:
enum:
- all
@@ -17731,8 +25672,10 @@ spec:
type: string
type: object
maxReplicas:
+ format: int32
type: integer
minReplicas:
+ format: int32
type: integer
nodeName:
type: string
@@ -17775,13 +25718,10 @@ spec:
properties:
name:
type: string
- source:
- properties:
- resourceClaimName:
- type: string
- resourceClaimTemplateName:
- type: string
- type: object
+ resourceClaimName:
+ type: string
+ resourceClaimTemplateName:
+ type: string
required:
- name
type: object
@@ -17789,6 +25729,39 @@ spec:
x-kubernetes-list-map-keys:
- name
x-kubernetes-list-type: map
+ resources:
+ properties:
+ claims:
+ items:
+ properties:
+ name:
+ type: string
+ request:
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ limits:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ requests:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ type: object
restartPolicy:
type: string
runtimeClassName:
@@ -17800,7 +25773,14 @@ spec:
- concurrency
- rps
type: string
+ scaleMetricType:
+ enum:
+ - Utilization
+ - Value
+ - AverageValue
+ type: string
scaleTarget:
+ format: int32
type: integer
schedulerName:
type: string
@@ -17818,6 +25798,15 @@ spec:
x-kubernetes-list-type: map
securityContext:
properties:
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
fsGroup:
format: int64
type: integer
@@ -17831,6 +25820,8 @@ spec:
runAsUser:
format: int64
type: integer
+ seLinuxChangePolicy:
+ type: string
seLinuxOptions:
properties:
level:
@@ -17856,6 +25847,9 @@ spec:
format: int64
type: integer
type: array
+ x-kubernetes-list-type: atomic
+ supplementalGroupsPolicy:
+ type: string
sysctls:
items:
properties:
@@ -17868,6 +25862,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
windowsOptions:
properties:
gmsaCredentialSpec:
@@ -17928,11 +25923,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -17994,10 +25991,12 @@ spec:
diskURI:
type: string
fsType:
+ default: ext4
type: string
kind:
type: string
readOnly:
+ default: false
type: boolean
required:
- diskName
@@ -18021,6 +26020,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
readOnly:
@@ -18030,6 +26030,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -18047,6 +26048,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -18075,7 +26077,9 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
name:
+ default: ""
type: string
optional:
type: boolean
@@ -18090,6 +26094,7 @@ spec:
nodePublishSecretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -18145,6 +26150,7 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
emptyDir:
properties:
@@ -18169,6 +26175,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
dataSource:
properties:
apiGroup:
@@ -18198,18 +26205,6 @@ spec:
type: object
resources:
properties:
- claims:
- items:
- properties:
- name:
- type: string
- required:
- - name
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - name
- x-kubernetes-list-type: map
limits:
additionalProperties:
anyOf:
@@ -18240,11 +26235,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -18253,6 +26250,8 @@ spec:
x-kubernetes-map-type: atomic
storageClassName:
type: string
+ volumeAttributesClassName:
+ type: string
volumeMode:
type: string
volumeName:
@@ -18275,10 +26274,12 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
wwids:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
flexVolume:
properties:
@@ -18295,6 +26296,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -18354,6 +26356,13 @@ spec:
required:
- path
type: object
+ image:
+ properties:
+ pullPolicy:
+ type: string
+ reference:
+ type: string
+ type: object
iscsi:
properties:
chapAuthDiscovery:
@@ -18367,6 +26376,7 @@ spec:
iqn:
type: string
iscsiInterface:
+ default: default
type: string
lun:
format: int32
@@ -18375,11 +26385,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
readOnly:
type: boolean
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -18441,6 +26453,45 @@ spec:
sources:
items:
properties:
+ clusterTrustBundle:
+ properties:
+ labelSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ name:
+ type: string
+ optional:
+ type: boolean
+ path:
+ type: string
+ signerName:
+ type: string
+ required:
+ - path
+ type: object
configMap:
properties:
items:
@@ -18458,7 +26509,9 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
name:
+ default: ""
type: string
optional:
type: boolean
@@ -18504,6 +26557,7 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
secret:
properties:
@@ -18522,7 +26576,9 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
name:
+ default: ""
type: string
optional:
type: boolean
@@ -18542,6 +26598,7 @@ spec:
type: object
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
quobyte:
properties:
@@ -18568,22 +26625,27 @@ spec:
image:
type: string
keyring:
+ default: /etc/ceph/keyring
type: string
monitors:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
pool:
+ default: rbd
type: string
readOnly:
type: boolean
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
user:
+ default: admin
type: string
required:
- image
@@ -18592,6 +26654,7 @@ spec:
scaleIO:
properties:
fsType:
+ default: xfs
type: string
gateway:
type: string
@@ -18602,12 +26665,14 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
sslEnabled:
type: boolean
storageMode:
+ default: ThinProvisioned
type: string
storagePool:
type: string
@@ -18640,6 +26705,7 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
optional:
type: boolean
secretName:
@@ -18654,6 +26720,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -18858,7 +26925,855 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
- controller-gen.kubebuilder.io/version: v0.12.0
+ controller-gen.kubebuilder.io/version: v0.16.2
+ labels:
+ app: kserve
+ app.kubernetes.io/name: kserve
+ name: localmodelcaches.serving.kserve.io
+spec:
+ group: serving.kserve.io
+ names:
+ kind: LocalModelCache
+ listKind: LocalModelCacheList
+ plural: localmodelcaches
+ singular: localmodelcache
+ scope: Cluster
+ versions:
+ - name: v1alpha1
+ schema:
+ openAPIV3Schema:
+ properties:
+ apiVersion:
+ type: string
+ kind:
+ type: string
+ metadata:
+ type: object
+ spec:
+ properties:
+ modelSize:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ nodeGroups:
+ items:
+ type: string
+ minItems: 1
+ type: array
+ sourceModelUri:
+ type: string
+ x-kubernetes-validations:
+ - message: StorageUri is immutable
+ rule: self == oldSelf
+ required:
+ - modelSize
+ - nodeGroups
+ - sourceModelUri
+ type: object
+ status:
+ properties:
+ copies:
+ properties:
+ available:
+ type: integer
+ failed:
+ type: integer
+ total:
+ type: integer
+ type: object
+ inferenceServices:
+ items:
+ properties:
+ name:
+ type: string
+ namespace:
+ type: string
+ type: object
+ type: array
+ nodeStatus:
+ additionalProperties:
+ enum:
+ - ""
+ - NodeNotReady
+ - NodeDownloadPending
+ - NodeDownloading
+ - NodeDownloaded
+ - NodeDownloadError
+ type: string
+ type: object
+ type: object
+ type: object
+ served: true
+ storage: true
+ subresources:
+ status: {}
+---
+apiVersion: apiextensions.k8s.io/v1
+kind: CustomResourceDefinition
+metadata:
+ annotations:
+ controller-gen.kubebuilder.io/version: v0.16.2
+ labels:
+ app: kserve
+ app.kubernetes.io/name: kserve
+ name: localmodelnodegroups.serving.kserve.io
+spec:
+ group: serving.kserve.io
+ names:
+ kind: LocalModelNodeGroup
+ listKind: LocalModelNodeGroupList
+ plural: localmodelnodegroups
+ singular: localmodelnodegroup
+ scope: Cluster
+ versions:
+ - name: v1alpha1
+ schema:
+ openAPIV3Schema:
+ properties:
+ apiVersion:
+ type: string
+ kind:
+ type: string
+ metadata:
+ type: object
+ spec:
+ properties:
+ persistentVolumeClaimSpec:
+ properties:
+ accessModes:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ dataSource:
+ properties:
+ apiGroup:
+ type: string
+ kind:
+ type: string
+ name:
+ type: string
+ required:
+ - kind
+ - name
+ type: object
+ x-kubernetes-map-type: atomic
+ dataSourceRef:
+ properties:
+ apiGroup:
+ type: string
+ kind:
+ type: string
+ name:
+ type: string
+ namespace:
+ type: string
+ required:
+ - kind
+ - name
+ type: object
+ resources:
+ properties:
+ limits:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ requests:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ type: object
+ selector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ storageClassName:
+ type: string
+ volumeAttributesClassName:
+ type: string
+ volumeMode:
+ type: string
+ volumeName:
+ type: string
+ type: object
+ persistentVolumeSpec:
+ properties:
+ accessModes:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ awsElasticBlockStore:
+ properties:
+ fsType:
+ type: string
+ partition:
+ format: int32
+ type: integer
+ readOnly:
+ type: boolean
+ volumeID:
+ type: string
+ required:
+ - volumeID
+ type: object
+ azureDisk:
+ properties:
+ cachingMode:
+ type: string
+ diskName:
+ type: string
+ diskURI:
+ type: string
+ fsType:
+ default: ext4
+ type: string
+ kind:
+ type: string
+ readOnly:
+ default: false
+ type: boolean
+ required:
+ - diskName
+ - diskURI
+ type: object
+ azureFile:
+ properties:
+ readOnly:
+ type: boolean
+ secretName:
+ type: string
+ secretNamespace:
+ type: string
+ shareName:
+ type: string
+ required:
+ - secretName
+ - shareName
+ type: object
+ capacity:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ cephfs:
+ properties:
+ monitors:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ readOnly:
+ type: boolean
+ secretFile:
+ type: string
+ secretRef:
+ properties:
+ name:
+ type: string
+ namespace:
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ user:
+ type: string
+ required:
+ - monitors
+ type: object
+ cinder:
+ properties:
+ fsType:
+ type: string
+ readOnly:
+ type: boolean
+ secretRef:
+ properties:
+ name:
+ type: string
+ namespace:
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ volumeID:
+ type: string
+ required:
+ - volumeID
+ type: object
+ claimRef:
+ properties:
+ apiVersion:
+ type: string
+ fieldPath:
+ type: string
+ kind:
+ type: string
+ name:
+ type: string
+ namespace:
+ type: string
+ resourceVersion:
+ type: string
+ uid:
+ type: string
+ type: object
+ x-kubernetes-map-type: granular
+ csi:
+ properties:
+ controllerExpandSecretRef:
+ properties:
+ name:
+ type: string
+ namespace:
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ controllerPublishSecretRef:
+ properties:
+ name:
+ type: string
+ namespace:
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ driver:
+ type: string
+ fsType:
+ type: string
+ nodeExpandSecretRef:
+ properties:
+ name:
+ type: string
+ namespace:
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ nodePublishSecretRef:
+ properties:
+ name:
+ type: string
+ namespace:
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ nodeStageSecretRef:
+ properties:
+ name:
+ type: string
+ namespace:
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ readOnly:
+ type: boolean
+ volumeAttributes:
+ additionalProperties:
+ type: string
+ type: object
+ volumeHandle:
+ type: string
+ required:
+ - driver
+ - volumeHandle
+ type: object
+ fc:
+ properties:
+ fsType:
+ type: string
+ lun:
+ format: int32
+ type: integer
+ readOnly:
+ type: boolean
+ targetWWNs:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ wwids:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ flexVolume:
+ properties:
+ driver:
+ type: string
+ fsType:
+ type: string
+ options:
+ additionalProperties:
+ type: string
+ type: object
+ readOnly:
+ type: boolean
+ secretRef:
+ properties:
+ name:
+ type: string
+ namespace:
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ required:
+ - driver
+ type: object
+ flocker:
+ properties:
+ datasetName:
+ type: string
+ datasetUUID:
+ type: string
+ type: object
+ gcePersistentDisk:
+ properties:
+ fsType:
+ type: string
+ partition:
+ format: int32
+ type: integer
+ pdName:
+ type: string
+ readOnly:
+ type: boolean
+ required:
+ - pdName
+ type: object
+ glusterfs:
+ properties:
+ endpoints:
+ type: string
+ endpointsNamespace:
+ type: string
+ path:
+ type: string
+ readOnly:
+ type: boolean
+ required:
+ - endpoints
+ - path
+ type: object
+ hostPath:
+ properties:
+ path:
+ type: string
+ type:
+ type: string
+ required:
+ - path
+ type: object
+ iscsi:
+ properties:
+ chapAuthDiscovery:
+ type: boolean
+ chapAuthSession:
+ type: boolean
+ fsType:
+ type: string
+ initiatorName:
+ type: string
+ iqn:
+ type: string
+ iscsiInterface:
+ default: default
+ type: string
+ lun:
+ format: int32
+ type: integer
+ portals:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ readOnly:
+ type: boolean
+ secretRef:
+ properties:
+ name:
+ type: string
+ namespace:
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ targetPortal:
+ type: string
+ required:
+ - iqn
+ - lun
+ - targetPortal
+ type: object
+ local:
+ properties:
+ fsType:
+ type: string
+ path:
+ type: string
+ required:
+ - path
+ type: object
+ mountOptions:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ nfs:
+ properties:
+ path:
+ type: string
+ readOnly:
+ type: boolean
+ server:
+ type: string
+ required:
+ - path
+ - server
+ type: object
+ nodeAffinity:
+ properties:
+ required:
+ properties:
+ nodeSelectorTerms:
+ items:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchFields:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ x-kubernetes-map-type: atomic
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - nodeSelectorTerms
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ persistentVolumeReclaimPolicy:
+ type: string
+ photonPersistentDisk:
+ properties:
+ fsType:
+ type: string
+ pdID:
+ type: string
+ required:
+ - pdID
+ type: object
+ portworxVolume:
+ properties:
+ fsType:
+ type: string
+ readOnly:
+ type: boolean
+ volumeID:
+ type: string
+ required:
+ - volumeID
+ type: object
+ quobyte:
+ properties:
+ group:
+ type: string
+ readOnly:
+ type: boolean
+ registry:
+ type: string
+ tenant:
+ type: string
+ user:
+ type: string
+ volume:
+ type: string
+ required:
+ - registry
+ - volume
+ type: object
+ rbd:
+ properties:
+ fsType:
+ type: string
+ image:
+ type: string
+ keyring:
+ default: /etc/ceph/keyring
+ type: string
+ monitors:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ pool:
+ default: rbd
+ type: string
+ readOnly:
+ type: boolean
+ secretRef:
+ properties:
+ name:
+ type: string
+ namespace:
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ user:
+ default: admin
+ type: string
+ required:
+ - image
+ - monitors
+ type: object
+ scaleIO:
+ properties:
+ fsType:
+ default: xfs
+ type: string
+ gateway:
+ type: string
+ protectionDomain:
+ type: string
+ readOnly:
+ type: boolean
+ secretRef:
+ properties:
+ name:
+ type: string
+ namespace:
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ sslEnabled:
+ type: boolean
+ storageMode:
+ default: ThinProvisioned
+ type: string
+ storagePool:
+ type: string
+ system:
+ type: string
+ volumeName:
+ type: string
+ required:
+ - gateway
+ - secretRef
+ - system
+ type: object
+ storageClassName:
+ type: string
+ storageos:
+ properties:
+ fsType:
+ type: string
+ readOnly:
+ type: boolean
+ secretRef:
+ properties:
+ apiVersion:
+ type: string
+ fieldPath:
+ type: string
+ kind:
+ type: string
+ name:
+ type: string
+ namespace:
+ type: string
+ resourceVersion:
+ type: string
+ uid:
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ volumeName:
+ type: string
+ volumeNamespace:
+ type: string
+ type: object
+ volumeAttributesClassName:
+ type: string
+ volumeMode:
+ type: string
+ vsphereVolume:
+ properties:
+ fsType:
+ type: string
+ storagePolicyID:
+ type: string
+ storagePolicyName:
+ type: string
+ volumePath:
+ type: string
+ required:
+ - volumePath
+ type: object
+ type: object
+ storageLimit:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ required:
+ - persistentVolumeClaimSpec
+ - persistentVolumeSpec
+ - storageLimit
+ type: object
+ status:
+ properties:
+ available:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ used:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ type: object
+ served: true
+ storage: true
+---
+apiVersion: apiextensions.k8s.io/v1
+kind: CustomResourceDefinition
+metadata:
+ annotations:
+ controller-gen.kubebuilder.io/version: v0.16.2
+ labels:
+ app: kserve
+ app.kubernetes.io/name: kserve
+ name: localmodelnodes.serving.kserve.io
+spec:
+ group: serving.kserve.io
+ names:
+ kind: LocalModelNode
+ listKind: LocalModelNodeList
+ plural: localmodelnodes
+ singular: localmodelnode
+ scope: Cluster
+ versions:
+ - name: v1alpha1
+ schema:
+ openAPIV3Schema:
+ properties:
+ apiVersion:
+ type: string
+ kind:
+ type: string
+ metadata:
+ type: object
+ spec:
+ properties:
+ localModels:
+ items:
+ properties:
+ modelName:
+ type: string
+ sourceModelUri:
+ type: string
+ required:
+ - modelName
+ - sourceModelUri
+ type: object
+ type: array
+ required:
+ - localModels
+ type: object
+ status:
+ properties:
+ modelStatus:
+ additionalProperties:
+ enum:
+ - ""
+ - ModelDownloadPending
+ - ModelDownloading
+ - ModelDownloaded
+ - ModelDownloadError
+ type: string
+ type: object
+ type: object
+ type: object
+ served: true
+ storage: true
+ subresources:
+ status: {}
+---
+apiVersion: apiextensions.k8s.io/v1
+kind: CustomResourceDefinition
+metadata:
+ annotations:
+ controller-gen.kubebuilder.io/version: v0.16.2
labels:
app: kserve
app.kubernetes.io/name: kserve
@@ -18917,11 +27832,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchFields:
items:
properties:
@@ -18933,11 +27850,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
x-kubernetes-map-type: atomic
weight:
@@ -18948,6 +27867,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
properties:
nodeSelectorTerms:
@@ -18964,11 +27884,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchFields:
items:
properties:
@@ -18980,14 +27902,17 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
x-kubernetes-map-type: atomic
type: array
+ x-kubernetes-list-type: atomic
required:
- nodeSelectorTerms
type: object
@@ -19013,17 +27938,29 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
properties:
matchExpressions:
@@ -19037,11 +27974,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -19052,6 +27991,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
type: string
required:
@@ -19065,6 +28005,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
items:
properties:
@@ -19081,17 +28022,29 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
properties:
matchExpressions:
@@ -19105,11 +28058,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -19120,12 +28075,14 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
type: string
required:
- topologyKey
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
podAntiAffinity:
properties:
@@ -19147,17 +28104,29 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
properties:
matchExpressions:
@@ -19171,11 +28140,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -19186,6 +28157,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
type: string
required:
@@ -19199,6 +28171,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
items:
properties:
@@ -19215,17 +28188,29 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
type: object
type: object
x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
namespaceSelector:
properties:
matchExpressions:
@@ -19239,11 +28224,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -19254,12 +28241,14 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
type: string
required:
- topologyKey
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
type: object
annotations:
@@ -19282,6 +28271,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -19320,6 +28310,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -19348,10 +28339,12 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
items:
properties:
@@ -19366,6 +28359,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -19404,6 +28398,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -19416,12 +28411,16 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
items:
properties:
configMapRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -19432,6 +28431,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
optional:
type: boolean
@@ -19439,6 +28439,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
type: string
imagePullPolicy:
@@ -19453,6 +28454,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -19470,6 +28472,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -19482,6 +28485,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -19503,6 +28514,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -19520,6 +28532,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -19532,6 +28545,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -19554,6 +28575,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -19564,6 +28586,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -19584,6 +28607,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -19658,6 +28682,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -19668,6 +28693,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -19688,6 +28714,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -19748,6 +28775,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -19778,16 +28807,27 @@ spec:
properties:
allowPrivilegeEscalation:
type: boolean
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
capabilities:
properties:
add:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
type: boolean
@@ -19843,6 +28883,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
format: int32
@@ -19853,6 +28894,7 @@ spec:
format: int32
type: integer
service:
+ default: ""
type: string
required:
- port
@@ -19873,6 +28915,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -19935,6 +28978,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
items:
properties:
@@ -19946,6 +28992,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -19955,6 +29003,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
type: string
required:
@@ -19967,12 +29018,15 @@ spec:
type: string
grpcEndpoint:
type: string
+ hostIPC:
+ type: boolean
httpDataEndpoint:
type: string
imagePullSecrets:
items:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -20057,10 +29111,12 @@ spec:
diskURI:
type: string
fsType:
+ default: ext4
type: string
kind:
type: string
readOnly:
+ default: false
type: boolean
required:
- diskName
@@ -20084,6 +29140,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
readOnly:
@@ -20093,6 +29150,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -20110,6 +29168,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -20138,7 +29197,9 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
name:
+ default: ""
type: string
optional:
type: boolean
@@ -20153,6 +29214,7 @@ spec:
nodePublishSecretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -20208,6 +29270,7 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
emptyDir:
properties:
@@ -20232,6 +29295,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
dataSource:
properties:
apiGroup:
@@ -20261,18 +29325,6 @@ spec:
type: object
resources:
properties:
- claims:
- items:
- properties:
- name:
- type: string
- required:
- - name
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - name
- x-kubernetes-list-type: map
limits:
additionalProperties:
anyOf:
@@ -20303,11 +29355,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -20316,6 +29370,8 @@ spec:
x-kubernetes-map-type: atomic
storageClassName:
type: string
+ volumeAttributesClassName:
+ type: string
volumeMode:
type: string
volumeName:
@@ -20338,10 +29394,12 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
wwids:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
flexVolume:
properties:
@@ -20358,6 +29416,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -20417,6 +29476,13 @@ spec:
required:
- path
type: object
+ image:
+ properties:
+ pullPolicy:
+ type: string
+ reference:
+ type: string
+ type: object
iscsi:
properties:
chapAuthDiscovery:
@@ -20430,6 +29496,7 @@ spec:
iqn:
type: string
iscsiInterface:
+ default: default
type: string
lun:
format: int32
@@ -20438,11 +29505,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
readOnly:
type: boolean
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -20504,6 +29573,45 @@ spec:
sources:
items:
properties:
+ clusterTrustBundle:
+ properties:
+ labelSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ name:
+ type: string
+ optional:
+ type: boolean
+ path:
+ type: string
+ signerName:
+ type: string
+ required:
+ - path
+ type: object
configMap:
properties:
items:
@@ -20521,7 +29629,9 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
name:
+ default: ""
type: string
optional:
type: boolean
@@ -20567,6 +29677,7 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
secret:
properties:
@@ -20585,7 +29696,9 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
name:
+ default: ""
type: string
optional:
type: boolean
@@ -20605,6 +29718,7 @@ spec:
type: object
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
quobyte:
properties:
@@ -20631,22 +29745,27 @@ spec:
image:
type: string
keyring:
+ default: /etc/ceph/keyring
type: string
monitors:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
pool:
+ default: rbd
type: string
readOnly:
type: boolean
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
user:
+ default: admin
type: string
required:
- image
@@ -20655,6 +29774,7 @@ spec:
scaleIO:
properties:
fsType:
+ default: xfs
type: string
gateway:
type: string
@@ -20665,12 +29785,14 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
sslEnabled:
type: boolean
storageMode:
+ default: ThinProvisioned
type: string
storagePool:
type: string
@@ -20703,6 +29825,7 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
optional:
type: boolean
secretName:
@@ -20717,6 +29840,7 @@ spec:
secretRef:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -20742,6 +29866,1954 @@ spec:
- name
type: object
type: array
+ workerSpec:
+ properties:
+ affinity:
+ properties:
+ nodeAffinity:
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ items:
+ properties:
+ preference:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchFields:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ x-kubernetes-map-type: atomic
+ weight:
+ format: int32
+ type: integer
+ required:
+ - preference
+ - weight
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ properties:
+ nodeSelectorTerms:
+ items:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchFields:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ x-kubernetes-map-type: atomic
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - nodeSelectorTerms
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ podAffinity:
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ items:
+ properties:
+ podAffinityTerm:
+ properties:
+ labelSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ namespaces:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ type: string
+ required:
+ - topologyKey
+ type: object
+ weight:
+ format: int32
+ type: integer
+ required:
+ - podAffinityTerm
+ - weight
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ items:
+ properties:
+ labelSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ namespaces:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ type: string
+ required:
+ - topologyKey
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ podAntiAffinity:
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ items:
+ properties:
+ podAffinityTerm:
+ properties:
+ labelSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ namespaces:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ type: string
+ required:
+ - topologyKey
+ type: object
+ weight:
+ format: int32
+ type: integer
+ required:
+ - podAffinityTerm
+ - weight
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ items:
+ properties:
+ labelSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ namespaces:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ type: string
+ required:
+ - topologyKey
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ type: object
+ annotations:
+ additionalProperties:
+ type: string
+ type: object
+ containers:
+ items:
+ properties:
+ args:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ env:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ valueFrom:
+ properties:
+ configMapKeyRef:
+ properties:
+ key:
+ type: string
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ fieldRef:
+ properties:
+ apiVersion:
+ type: string
+ fieldPath:
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ resourceFieldRef:
+ properties:
+ containerName:
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ secretKeyRef:
+ properties:
+ key:
+ type: string
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ envFrom:
+ items:
+ properties:
+ configMapRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ prefix:
+ type: string
+ secretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ image:
+ type: string
+ imagePullPolicy:
+ type: string
+ lifecycle:
+ properties:
+ postStart:
+ properties:
+ exec:
+ properties:
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ properties:
+ host:
+ type: string
+ httpHeaders:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ scheme:
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ properties:
+ host:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ preStop:
+ properties:
+ exec:
+ properties:
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ properties:
+ host:
+ type: string
+ httpHeaders:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ scheme:
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ properties:
+ host:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ type: object
+ livenessProbe:
+ properties:
+ exec:
+ properties:
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ format: int32
+ type: integer
+ grpc:
+ properties:
+ port:
+ format: int32
+ type: integer
+ service:
+ default: ""
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ properties:
+ host:
+ type: string
+ httpHeaders:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ scheme:
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ format: int32
+ type: integer
+ periodSeconds:
+ format: int32
+ type: integer
+ successThreshold:
+ format: int32
+ type: integer
+ tcpSocket:
+ properties:
+ host:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ format: int64
+ type: integer
+ timeoutSeconds:
+ format: int32
+ type: integer
+ type: object
+ name:
+ type: string
+ ports:
+ items:
+ properties:
+ containerPort:
+ format: int32
+ type: integer
+ hostIP:
+ type: string
+ hostPort:
+ format: int32
+ type: integer
+ name:
+ type: string
+ protocol:
+ default: TCP
+ type: string
+ required:
+ - containerPort
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - containerPort
+ - protocol
+ x-kubernetes-list-type: map
+ readinessProbe:
+ properties:
+ exec:
+ properties:
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ format: int32
+ type: integer
+ grpc:
+ properties:
+ port:
+ format: int32
+ type: integer
+ service:
+ default: ""
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ properties:
+ host:
+ type: string
+ httpHeaders:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ scheme:
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ format: int32
+ type: integer
+ periodSeconds:
+ format: int32
+ type: integer
+ successThreshold:
+ format: int32
+ type: integer
+ tcpSocket:
+ properties:
+ host:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ format: int64
+ type: integer
+ timeoutSeconds:
+ format: int32
+ type: integer
+ type: object
+ resizePolicy:
+ items:
+ properties:
+ resourceName:
+ type: string
+ restartPolicy:
+ type: string
+ required:
+ - resourceName
+ - restartPolicy
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ resources:
+ properties:
+ claims:
+ items:
+ properties:
+ name:
+ type: string
+ request:
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ limits:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ requests:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ type: object
+ restartPolicy:
+ type: string
+ securityContext:
+ properties:
+ allowPrivilegeEscalation:
+ type: boolean
+ appArmorProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
+ capabilities:
+ properties:
+ add:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ drop:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ privileged:
+ type: boolean
+ procMount:
+ type: string
+ readOnlyRootFilesystem:
+ type: boolean
+ runAsGroup:
+ format: int64
+ type: integer
+ runAsNonRoot:
+ type: boolean
+ runAsUser:
+ format: int64
+ type: integer
+ seLinuxOptions:
+ properties:
+ level:
+ type: string
+ role:
+ type: string
+ type:
+ type: string
+ user:
+ type: string
+ type: object
+ seccompProfile:
+ properties:
+ localhostProfile:
+ type: string
+ type:
+ type: string
+ required:
+ - type
+ type: object
+ windowsOptions:
+ properties:
+ gmsaCredentialSpec:
+ type: string
+ gmsaCredentialSpecName:
+ type: string
+ hostProcess:
+ type: boolean
+ runAsUserName:
+ type: string
+ type: object
+ type: object
+ startupProbe:
+ properties:
+ exec:
+ properties:
+ command:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ format: int32
+ type: integer
+ grpc:
+ properties:
+ port:
+ format: int32
+ type: integer
+ service:
+ default: ""
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ properties:
+ host:
+ type: string
+ httpHeaders:
+ items:
+ properties:
+ name:
+ type: string
+ value:
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ scheme:
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ format: int32
+ type: integer
+ periodSeconds:
+ format: int32
+ type: integer
+ successThreshold:
+ format: int32
+ type: integer
+ tcpSocket:
+ properties:
+ host:
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ format: int64
+ type: integer
+ timeoutSeconds:
+ format: int32
+ type: integer
+ type: object
+ stdin:
+ type: boolean
+ stdinOnce:
+ type: boolean
+ terminationMessagePath:
+ type: string
+ terminationMessagePolicy:
+ type: string
+ tty:
+ type: boolean
+ volumeDevices:
+ items:
+ properties:
+ devicePath:
+ type: string
+ name:
+ type: string
+ required:
+ - devicePath
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
+ volumeMounts:
+ items:
+ properties:
+ mountPath:
+ type: string
+ mountPropagation:
+ type: string
+ name:
+ type: string
+ readOnly:
+ type: boolean
+ recursiveReadOnly:
+ type: string
+ subPath:
+ type: string
+ subPathExpr:
+ type: string
+ required:
+ - mountPath
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
+ workingDir:
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ hostIPC:
+ type: boolean
+ imagePullSecrets:
+ items:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ type: array
+ labels:
+ additionalProperties:
+ type: string
+ type: object
+ nodeSelector:
+ additionalProperties:
+ type: string
+ type: object
+ pipelineParallelSize:
+ type: integer
+ tensorParallelSize:
+ type: integer
+ tolerations:
+ items:
+ properties:
+ effect:
+ type: string
+ key:
+ type: string
+ operator:
+ type: string
+ tolerationSeconds:
+ format: int64
+ type: integer
+ value:
+ type: string
+ type: object
+ type: array
+ volumes:
+ items:
+ properties:
+ awsElasticBlockStore:
+ properties:
+ fsType:
+ type: string
+ partition:
+ format: int32
+ type: integer
+ readOnly:
+ type: boolean
+ volumeID:
+ type: string
+ required:
+ - volumeID
+ type: object
+ azureDisk:
+ properties:
+ cachingMode:
+ type: string
+ diskName:
+ type: string
+ diskURI:
+ type: string
+ fsType:
+ default: ext4
+ type: string
+ kind:
+ type: string
+ readOnly:
+ default: false
+ type: boolean
+ required:
+ - diskName
+ - diskURI
+ type: object
+ azureFile:
+ properties:
+ readOnly:
+ type: boolean
+ secretName:
+ type: string
+ shareName:
+ type: string
+ required:
+ - secretName
+ - shareName
+ type: object
+ cephfs:
+ properties:
+ monitors:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ type: string
+ readOnly:
+ type: boolean
+ secretFile:
+ type: string
+ secretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ user:
+ type: string
+ required:
+ - monitors
+ type: object
+ cinder:
+ properties:
+ fsType:
+ type: string
+ readOnly:
+ type: boolean
+ secretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ volumeID:
+ type: string
+ required:
+ - volumeID
+ type: object
+ configMap:
+ properties:
+ defaultMode:
+ format: int32
+ type: integer
+ items:
+ items:
+ properties:
+ key:
+ type: string
+ mode:
+ format: int32
+ type: integer
+ path:
+ type: string
+ required:
+ - key
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ csi:
+ properties:
+ driver:
+ type: string
+ fsType:
+ type: string
+ nodePublishSecretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ readOnly:
+ type: boolean
+ volumeAttributes:
+ additionalProperties:
+ type: string
+ type: object
+ required:
+ - driver
+ type: object
+ downwardAPI:
+ properties:
+ defaultMode:
+ format: int32
+ type: integer
+ items:
+ items:
+ properties:
+ fieldRef:
+ properties:
+ apiVersion:
+ type: string
+ fieldPath:
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ mode:
+ format: int32
+ type: integer
+ path:
+ type: string
+ resourceFieldRef:
+ properties:
+ containerName:
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ required:
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ emptyDir:
+ properties:
+ medium:
+ type: string
+ sizeLimit:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ ephemeral:
+ properties:
+ volumeClaimTemplate:
+ properties:
+ metadata:
+ type: object
+ spec:
+ properties:
+ accessModes:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ dataSource:
+ properties:
+ apiGroup:
+ type: string
+ kind:
+ type: string
+ name:
+ type: string
+ required:
+ - kind
+ - name
+ type: object
+ x-kubernetes-map-type: atomic
+ dataSourceRef:
+ properties:
+ apiGroup:
+ type: string
+ kind:
+ type: string
+ name:
+ type: string
+ namespace:
+ type: string
+ required:
+ - kind
+ - name
+ type: object
+ resources:
+ properties:
+ limits:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ requests:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ type: object
+ selector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ storageClassName:
+ type: string
+ volumeAttributesClassName:
+ type: string
+ volumeMode:
+ type: string
+ volumeName:
+ type: string
+ type: object
+ required:
+ - spec
+ type: object
+ type: object
+ fc:
+ properties:
+ fsType:
+ type: string
+ lun:
+ format: int32
+ type: integer
+ readOnly:
+ type: boolean
+ targetWWNs:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ wwids:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ flexVolume:
+ properties:
+ driver:
+ type: string
+ fsType:
+ type: string
+ options:
+ additionalProperties:
+ type: string
+ type: object
+ readOnly:
+ type: boolean
+ secretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ required:
+ - driver
+ type: object
+ flocker:
+ properties:
+ datasetName:
+ type: string
+ datasetUUID:
+ type: string
+ type: object
+ gcePersistentDisk:
+ properties:
+ fsType:
+ type: string
+ partition:
+ format: int32
+ type: integer
+ pdName:
+ type: string
+ readOnly:
+ type: boolean
+ required:
+ - pdName
+ type: object
+ gitRepo:
+ properties:
+ directory:
+ type: string
+ repository:
+ type: string
+ revision:
+ type: string
+ required:
+ - repository
+ type: object
+ glusterfs:
+ properties:
+ endpoints:
+ type: string
+ path:
+ type: string
+ readOnly:
+ type: boolean
+ required:
+ - endpoints
+ - path
+ type: object
+ hostPath:
+ properties:
+ path:
+ type: string
+ type:
+ type: string
+ required:
+ - path
+ type: object
+ image:
+ properties:
+ pullPolicy:
+ type: string
+ reference:
+ type: string
+ type: object
+ iscsi:
+ properties:
+ chapAuthDiscovery:
+ type: boolean
+ chapAuthSession:
+ type: boolean
+ fsType:
+ type: string
+ initiatorName:
+ type: string
+ iqn:
+ type: string
+ iscsiInterface:
+ default: default
+ type: string
+ lun:
+ format: int32
+ type: integer
+ portals:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ readOnly:
+ type: boolean
+ secretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ targetPortal:
+ type: string
+ required:
+ - iqn
+ - lun
+ - targetPortal
+ type: object
+ name:
+ type: string
+ nfs:
+ properties:
+ path:
+ type: string
+ readOnly:
+ type: boolean
+ server:
+ type: string
+ required:
+ - path
+ - server
+ type: object
+ persistentVolumeClaim:
+ properties:
+ claimName:
+ type: string
+ readOnly:
+ type: boolean
+ required:
+ - claimName
+ type: object
+ photonPersistentDisk:
+ properties:
+ fsType:
+ type: string
+ pdID:
+ type: string
+ required:
+ - pdID
+ type: object
+ portworxVolume:
+ properties:
+ fsType:
+ type: string
+ readOnly:
+ type: boolean
+ volumeID:
+ type: string
+ required:
+ - volumeID
+ type: object
+ projected:
+ properties:
+ defaultMode:
+ format: int32
+ type: integer
+ sources:
+ items:
+ properties:
+ clusterTrustBundle:
+ properties:
+ labelSelector:
+ properties:
+ matchExpressions:
+ items:
+ properties:
+ key:
+ type: string
+ operator:
+ type: string
+ values:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ name:
+ type: string
+ optional:
+ type: boolean
+ path:
+ type: string
+ signerName:
+ type: string
+ required:
+ - path
+ type: object
+ configMap:
+ properties:
+ items:
+ items:
+ properties:
+ key:
+ type: string
+ mode:
+ format: int32
+ type: integer
+ path:
+ type: string
+ required:
+ - key
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ downwardAPI:
+ properties:
+ items:
+ items:
+ properties:
+ fieldRef:
+ properties:
+ apiVersion:
+ type: string
+ fieldPath:
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ mode:
+ format: int32
+ type: integer
+ path:
+ type: string
+ resourceFieldRef:
+ properties:
+ containerName:
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ required:
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ secret:
+ properties:
+ items:
+ items:
+ properties:
+ key:
+ type: string
+ mode:
+ format: int32
+ type: integer
+ path:
+ type: string
+ required:
+ - key
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ name:
+ default: ""
+ type: string
+ optional:
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ serviceAccountToken:
+ properties:
+ audience:
+ type: string
+ expirationSeconds:
+ format: int64
+ type: integer
+ path:
+ type: string
+ required:
+ - path
+ type: object
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ quobyte:
+ properties:
+ group:
+ type: string
+ readOnly:
+ type: boolean
+ registry:
+ type: string
+ tenant:
+ type: string
+ user:
+ type: string
+ volume:
+ type: string
+ required:
+ - registry
+ - volume
+ type: object
+ rbd:
+ properties:
+ fsType:
+ type: string
+ image:
+ type: string
+ keyring:
+ default: /etc/ceph/keyring
+ type: string
+ monitors:
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ pool:
+ default: rbd
+ type: string
+ readOnly:
+ type: boolean
+ secretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ user:
+ default: admin
+ type: string
+ required:
+ - image
+ - monitors
+ type: object
+ scaleIO:
+ properties:
+ fsType:
+ default: xfs
+ type: string
+ gateway:
+ type: string
+ protectionDomain:
+ type: string
+ readOnly:
+ type: boolean
+ secretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ sslEnabled:
+ type: boolean
+ storageMode:
+ default: ThinProvisioned
+ type: string
+ storagePool:
+ type: string
+ system:
+ type: string
+ volumeName:
+ type: string
+ required:
+ - gateway
+ - secretRef
+ - system
+ type: object
+ secret:
+ properties:
+ defaultMode:
+ format: int32
+ type: integer
+ items:
+ items:
+ properties:
+ key:
+ type: string
+ mode:
+ format: int32
+ type: integer
+ path:
+ type: string
+ required:
+ - key
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ optional:
+ type: boolean
+ secretName:
+ type: string
+ type: object
+ storageos:
+ properties:
+ fsType:
+ type: string
+ readOnly:
+ type: boolean
+ secretRef:
+ properties:
+ name:
+ default: ""
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ volumeName:
+ type: string
+ volumeNamespace:
+ type: string
+ type: object
+ vsphereVolume:
+ properties:
+ fsType:
+ type: string
+ storagePolicyID:
+ type: string
+ storagePolicyName:
+ type: string
+ volumePath:
+ type: string
+ required:
+ - volumePath
+ type: object
+ required:
+ - name
+ type: object
+ type: array
+ required:
+ - containers
+ type: object
required:
- containers
type: object
@@ -20756,7 +31828,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
- controller-gen.kubebuilder.io/version: v0.12.0
+ controller-gen.kubebuilder.io/version: v0.16.2
labels:
app: kserve
app.kubernetes.io/name: kserve
@@ -20877,6 +31949,28 @@ metadata:
name: kserve-controller-manager
namespace: kubeflow
---
+apiVersion: v1
+kind: ServiceAccount
+metadata:
+ labels:
+ app: kserve
+ app.kubernetes.io/instance: kserve-localmodel-controller-manager
+ app.kubernetes.io/managed-by: kserve-localmodel-controller-manager
+ app.kubernetes.io/name: kserve
+ name: kserve-localmodel-controller-manager
+ namespace: kubeflow
+---
+apiVersion: v1
+kind: ServiceAccount
+metadata:
+ labels:
+ app: kserve
+ app.kubernetes.io/instance: kserve-localmodelnode-agent
+ app.kubernetes.io/managed-by: kserve-localmodelnode-agent
+ app.kubernetes.io/name: kserve
+ name: kserve-localmodelnode-agent
+ namespace: kubeflow
+---
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
@@ -20924,12 +32018,212 @@ rules:
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
+metadata:
+ labels:
+ app: kserve
+ app.kubernetes.io/name: kserve
+ name: kserve-localmodel-manager-role
+rules:
+ - apiGroups:
+ - ""
+ resources:
+ - configmaps
+ verbs:
+ - get
+ - apiGroups:
+ - ""
+ resources:
+ - nodes
+ verbs:
+ - get
+ - list
+ - watch
+ - apiGroups:
+ - ""
+ resources:
+ - nodes/status
+ verbs:
+ - get
+ - watch
+ - apiGroups:
+ - ""
+ resources:
+ - persistentvolumeclaims
+ - persistentvolumes
+ verbs:
+ - create
+ - delete
+ - get
+ - list
+ - patch
+ - update
+ - watch
+ - apiGroups:
+ - serving.kserve.io
+ resources:
+ - inferenceservices
+ - localmodelnodegroups
+ verbs:
+ - get
+ - list
+ - watch
+ - apiGroups:
+ - serving.kserve.io
+ resources:
+ - localmodelcaches
+ - localmodelnodes
+ verbs:
+ - create
+ - delete
+ - get
+ - list
+ - patch
+ - update
+ - watch
+ - apiGroups:
+ - serving.kserve.io
+ resources:
+ - localmodelcaches/status
+ verbs:
+ - get
+ - patch
+ - update
+ - apiGroups:
+ - serving.kserve.io
+ resources:
+ - localmodelnodes/status
+ verbs:
+ - get
+ - watch
+---
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
+metadata:
+ labels:
+ app: kserve
+ app.kubernetes.io/name: kserve
+ name: kserve-localmodelnode-agent-role
+rules:
+ - apiGroups:
+ - ""
+ resources:
+ - configmaps
+ verbs:
+ - get
+ - apiGroups:
+ - ""
+ resources:
+ - nodes
+ verbs:
+ - get
+ - list
+ - watch
+ - apiGroups:
+ - ""
+ resources:
+ - nodes/status
+ verbs:
+ - get
+ - watch
+ - apiGroups:
+ - batch
+ resources:
+ - jobs
+ verbs:
+ - create
+ - delete
+ - get
+ - list
+ - patch
+ - update
+ - watch
+ - apiGroups:
+ - batch
+ resources:
+ - jobs/status
+ verbs:
+ - get
+ - apiGroups:
+ - serving.kserve.io
+ resources:
+ - clusterstoragecontainers
+ verbs:
+ - get
+ - list
+ - watch
+ - apiGroups:
+ - serving.kserve.io
+ resources:
+ - localmodelnodegroups
+ verbs:
+ - get
+ - list
+ - apiGroups:
+ - serving.kserve.io
+ resources:
+ - localmodelnodes
+ verbs:
+ - create
+ - delete
+ - get
+ - list
+ - patch
+ - update
+ - watch
+ - apiGroups:
+ - serving.kserve.io
+ resources:
+ - localmodelnodes/status
+ verbs:
+ - get
+ - patch
+ - update
+---
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
metadata:
labels:
app: kserve
app.kubernetes.io/name: kserve
name: kserve-manager-role
rules:
+ - apiGroups:
+ - ""
+ resources:
+ - configmaps
+ verbs:
+ - create
+ - get
+ - update
+ - apiGroups:
+ - ""
+ resources:
+ - events
+ - services
+ verbs:
+ - create
+ - delete
+ - get
+ - list
+ - patch
+ - update
+ - watch
+ - apiGroups:
+ - ""
+ resources:
+ - namespaces
+ - pods
+ verbs:
+ - get
+ - list
+ - watch
+ - apiGroups:
+ - ""
+ resources:
+ - secrets
+ - serviceaccounts
+ verbs:
+ - get
- apiGroups:
- admissionregistration.k8s.io
resources:
@@ -20968,17 +32262,9 @@ rules:
- update
- watch
- apiGroups:
- - ""
+ - gateway.networking.k8s.io
resources:
- - configmaps
- verbs:
- - create
- - get
- - update
- - apiGroups:
- - ""
- resources:
- - events
+ - httproutes
verbs:
- create
- delete
@@ -20988,41 +32274,10 @@ rules:
- update
- watch
- apiGroups:
- - ""
+ - keda.sh
resources:
- - namespaces
- verbs:
- - get
- - list
- - watch
- - apiGroups:
- - ""
- resources:
- - pods
- verbs:
- - get
- - list
- - watch
- - apiGroups:
- - ""
- resources:
- - secrets
- verbs:
- - create
- - delete
- - get
- - patch
- - update
- - apiGroups:
- - ""
- resources:
- - serviceaccounts
- verbs:
- - get
- - apiGroups:
- - ""
- resources:
- - services
+ - scaledobjects
+ - scaledobjects/finalizers
verbs:
- create
- delete
@@ -21031,21 +32286,18 @@ rules:
- patch
- update
- watch
+ - apiGroups:
+ - keda.sh
+ resources:
+ - scaledobjects/status
+ verbs:
+ - get
+ - patch
+ - update
- apiGroups:
- networking.istio.io
resources:
- virtualservices
- verbs:
- - create
- - delete
- - get
- - list
- - patch
- - update
- - watch
- - apiGroups:
- - networking.istio.io
- resources:
- virtualservices/finalizers
verbs:
- create
@@ -21076,9 +32328,10 @@ rules:
- update
- watch
- apiGroups:
- - serving.knative.dev
+ - opentelemetry.io
resources:
- - services
+ - opentelemetrycollectors
+ - opentelemetrycollectors/finalizers
verbs:
- create
- delete
@@ -21087,9 +32340,18 @@ rules:
- patch
- update
- watch
+ - apiGroups:
+ - opentelemetry.io
+ resources:
+ - opentelemetrycollectors/status
+ verbs:
+ - get
+ - patch
+ - update
- apiGroups:
- serving.knative.dev
resources:
+ - services
- services/finalizers
verbs:
- create
@@ -21112,100 +32374,13 @@ rules:
resources:
- clusterservingruntimes
- clusterservingruntimes/finalizers
- verbs:
- - create
- - delete
- - get
- - list
- - patch
- - update
- - watch
- - apiGroups:
- - serving.kserve.io
- resources:
- - clusterservingruntimes/status
- verbs:
- - get
- - patch
- - update
- - apiGroups:
- - serving.kserve.io
- resources:
- clusterstoragecontainers
- verbs:
- - create
- - delete
- - get
- - list
- - patch
- - update
- - watch
- - apiGroups:
- - serving.kserve.io
- resources:
- inferencegraphs
- inferencegraphs/finalizers
- verbs:
- - create
- - delete
- - get
- - list
- - patch
- - update
- - watch
- - apiGroups:
- - serving.kserve.io
- resources:
- - inferencegraphs/status
- verbs:
- - get
- - patch
- - update
- - apiGroups:
- - serving.kserve.io
- resources:
- inferenceservices
- inferenceservices/finalizers
- verbs:
- - create
- - delete
- - get
- - list
- - patch
- - update
- - watch
- - apiGroups:
- - serving.kserve.io
- resources:
- - inferenceservices/status
- verbs:
- - get
- - patch
- - update
- - apiGroups:
- - serving.kserve.io
- resources:
- servingruntimes
- servingruntimes/finalizers
- verbs:
- - create
- - delete
- - get
- - list
- - patch
- - update
- - watch
- - apiGroups:
- - serving.kserve.io
- resources:
- - servingruntimes/status
- verbs:
- - get
- - patch
- - update
- - apiGroups:
- - serving.kserve.io
- resources:
- trainedmodels
verbs:
- create
@@ -21218,11 +32393,23 @@ rules:
- apiGroups:
- serving.kserve.io
resources:
+ - clusterservingruntimes/status
+ - inferencegraphs/status
+ - inferenceservices/status
+ - servingruntimes/status
- trainedmodels/status
verbs:
- get
- patch
- update
+ - apiGroups:
+ - serving.kserve.io
+ resources:
+ - localmodelcaches
+ verbs:
+ - get
+ - list
+ - watch
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
@@ -21272,8 +32459,10 @@ rules:
- apiGroups:
- serving.kserve.io
resources:
+ - inferencegraphs
- inferenceservices
- servingruntimes
+ - trainedmodels
verbs:
- get
- list
@@ -21316,8 +32505,10 @@ rules:
- apiGroups:
- serving.kserve.io
resources:
+ - inferencegraphs
- inferenceservices
- servingruntimes
+ - trainedmodels
verbs:
- get
- list
@@ -21356,6 +32547,38 @@ subjects:
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
+metadata:
+ labels:
+ app: kserve
+ app.kubernetes.io/name: kserve
+ name: kserve-localmodel-manager-rolebinding
+roleRef:
+ apiGroup: rbac.authorization.k8s.io
+ kind: ClusterRole
+ name: kserve-localmodel-manager-role
+subjects:
+ - kind: ServiceAccount
+ name: kserve-localmodel-controller-manager
+ namespace: kubeflow
+---
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRoleBinding
+metadata:
+ labels:
+ app: kserve
+ app.kubernetes.io/name: kserve
+ name: kserve-localmodelnode-agent-rolebinding
+roleRef:
+ apiGroup: rbac.authorization.k8s.io
+ kind: ClusterRole
+ name: kserve-localmodelnode-agent-role
+subjects:
+ - kind: ServiceAccount
+ name: kserve-localmodelnode-agent
+ namespace: kubeflow
+---
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRoleBinding
metadata:
labels:
app: kserve
@@ -21388,10 +32611,10 @@ subjects:
---
apiVersion: v1
data:
- _example: "################################\n# #\n# EXAMPLE CONFIGURATION #\n# #\n################################\n\n# This block is not actually functional configuration,\n# but serves to illustrate the available configuration\n# options and document them in a way that is accessible\n# to users that `kubectl edit` this config map.\n#\n# These sample configuration options may be copied out of\n# this example block and unindented to be in the data block\n# to actually change the configuration.\n\n# ====================================== EXPLAINERS CONFIGURATION ======================================\n# Example\nexplainers: |-\n {\n \"art\": {\n \"image\" : \"kserve/art-explainer\",\n \"defaultImageVersion\": \"latest\"\n }\n }\n# Art Explainer runtime configuration\n explainers: |-\n {\n # Art explainer runtime configuration\n \"art\": {\n # image contains the default Art explainer serving runtime image uri.\n \"image\" : \"kserve/art-explainer\",\n \n # defautltImageVersion contains the Art explainer serving runtime default image version.\n \"defaultImageVersion\": \"latest\"\n }\n }\n \n # ====================================== STORAGE INITIALIZER CONFIGURATION ======================================\n # Example\n storageInitializer: |-\n {\n \"image\" : \"kserve/storage-initializer:v0.13.0\",\n \"memoryRequest\": \"100Mi\",\n \"memoryLimit\": \"1Gi\",\n \"cpuRequest\": \"100m\",\n \"cpuLimit\": \"1\",\n \"caBundleConfigMapName\": \"\",\n \"caBundleVolumeMountPath\": \"/etc/ssl/custom-certs\",\n \"enableDirectPvcVolumeMount\": false,\n \"enableModelcar\": false,\n \"cpuModelcar\": \"10m\",\n \"memoryModelcar\": \"15Mi\"\n }\n storageInitializer: |-\n {\n # image contains the default storage initializer image uri.\n \"image\" : \"kserve/storage-initializer:v0.13.0\",\n \n # memoryRequest is the requests.memory to set for the storage initializer init container.\n \"memoryRequest\": \"100Mi\",\n \n # memoryLimit is the limits.memory to set for the storage initializer init container.\n \"memoryLimit\": \"1Gi\",\n \n # cpuRequest is the requests.cpu to set for the storage initializer init container.\n \"cpuRequest\": \"100m\",\n \n # cpuLimit is the limits.cpu to set for the storage initializer init container.\n \"cpuLimit\": \"1\",\n \n # caBundleConfigMapName is the ConfigMap will be copied to a user namespace for the storage initializer init container.\n \"caBundleConfigMapName\": \"\",\n\n # caBundleVolumeMountPath is the mount point for the configmap set by caBundleConfigMapName for the storage initializer init container.\n \"caBundleVolumeMountPath\": \"/etc/ssl/custom-certs\",\n\n # enableDirectPvcVolumeMount controls whether users can mount pvc volumes directly.\n # if pvc volume is provided in storageuri then the pvc volume is directly mounted to /mnt/models in the user container.\n # rather than symlink it to a shared volume. For more info see https://github.com/kserve/kserve/issues/2737\n \"enableDirectPvcVolumeMount\": true,\n\n # enableModelcar enabled allows you to directly access an OCI container image by\n # using a source URL with an \"oci://\" schema.\n \"enableModelcar\": false,\n\n # cpuModelcar is the cpu request and limit that is used for the passive modelcar container. It can be\n # set very low, but should be allowed by any Kubernetes LimitRange that might apply.\n \"cpuModelcar\": \"10m\",\n\n # cpuModelcar is the memory request and limit that is used for the passive modelcar container. It can be\n # set very low, but should be allowed by any Kubernetes LimitRange that might apply.\n \"memoryModelcar\": \"15Mi\",\n\n # uidModelcar is the UID under with which the modelcar process and the main container is running.\n # Some Kubernetes clusters might require this to be root (0). If not set the user id is left untouched (default)\n \"uidModelcar\": 10\n }\n \n # ====================================== CREDENTIALS ======================================\n # Example\n credentials: |-\n {\n \"storageSpecSecretName\": \"storage-config\",\n \"storageSecretNameAnnotation\": \"serving.kserve.io/storageSecretName\",\n \"gcs\": {\n \"gcsCredentialFileName\": \"gcloud-application-credentials.json\"\n },\n \"s3\": {\n \"s3AccessKeyIDName\": \"AWS_ACCESS_KEY_ID\",\n \"s3SecretAccessKeyName\": \"AWS_SECRET_ACCESS_KEY\",\n \"s3Endpoint\": \"\",\n \"s3UseHttps\": \"\",\n \"s3Region\": \"\",\n \"s3VerifySSL\": \"\",\n \"s3UseVirtualBucket\": \"\",\n \"s3UseAccelerate\": \"\",\n \"s3UseAnonymousCredential\": \"\",\n \"s3CABundle\": \"\"\n }\n }\n # This is a global configuration used for downloading models from the cloud storage.\n # You can override this configuration by specifying the annotations on service account or static secret.\n # https://kserve.github.io/website/master/modelserving/storage/s3/s3/\n # For a quick reference about AWS ENV variables:\n # AWS Cli: https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-envvars.html\n # Boto: https://boto3.amazonaws.com/v1/documentation/api/latest/guide/configuration.html#using-environment-variables\n #\n # The `s3AccessKeyIDName` and `s3SecretAccessKeyName` fields are only used from this configmap when static credentials (IAM User Access Key Secret)\n # are used as the authentication method for AWS S3.\n # The rest of the fields are used in both authentication methods (IAM Role for Service Account & IAM User Access Key Secret) if a non-empty value is provided.\n credentials: |-\n {\n # storageSpecSecretName contains the secret name which has the credentials for downloading the model.\n # This option is used when specifying the storage spec on isvc yaml.\n \"storageSpecSecretName\": \"storage-config\",\n\n # The annotation can be specified on isvc yaml to allow overriding with the secret name reference from the annotation value.\n # When using storageUri the order of the precedence is: secret name reference annotation > secret name references from service account\n # When using storageSpec the order of the precedence is: secret name reference annotation > storageSpecSecretName in configmap\n\n # Configuration for google cloud storage\n \"gcs\": {\n # gcsCredentialFileName specifies the filename of the gcs credential\n \"gcsCredentialFileName\": \"gcloud-application-credentials.json\"\n },\n \n # Configuration for aws s3 storage. This add the corresponding environmental variables to the storage initializer init container.\n # For more info on s3 storage see https://kserve.github.io/website/master/modelserving/storage/s3/s3/\n \"s3\": {\n # s3AccessKeyIDName specifies the s3 access key id name\n \"s3AccessKeyIDName\": \"AWS_ACCESS_KEY_ID\",\n \n # s3SecretAccessKeyName specifies the s3 secret access key name\n \"s3SecretAccessKeyName\": \"AWS_SECRET_ACCESS_KEY\",\n \n # s3Endpoint specifies the s3 endpoint\n \"s3Endpoint\": \"\",\n \n # s3UseHttps controls whether to use secure https or unsecure http to download models.\n # Allowed values are 0 and 1.\n \"s3UseHttps\": \"\",\n \n # s3Region specifies the region of the bucket.\n \"s3Region\": \"\",\n \n # s3VerifySSL controls whether to verify the tls/ssl certificate.\n \"s3VerifySSL\": \"\",\n \n # s3UseVirtualBucket configures whether it is a virtual bucket or not.\n \"s3UseVirtualBucket\": \"\",\n\n # s3UseAccelerate configures whether to use transfer acceleration.\n \"s3UseAccelerate\": \"\",\n \n # s3UseAnonymousCredential configures whether to use anonymous credentials to download the model or not.\n \"s3UseAnonymousCredential\": \"\",\n \n # s3CABundle specifies the path to a certificate bundle to use for HTTPS certificate validation.\n \"s3CABundle\": \"\"\n }\n }\n \n # ====================================== INGRESS CONFIGURATION ======================================\n # Example\n ingress: |-\n {\n \"ingressGateway\" : \"knative-serving/knative-ingress-gateway\",\n \"ingressService\" : \"istio-ingressgateway.istio-system.svc.cluster.local\",\n \"localGateway\" : \"knative-serving/knative-local-gateway\",\n \"localGatewayService\" : \"knative-local-gateway.istio-system.svc.cluster.local\",\n \"ingressDomain\" : \"example.com\",\n \"additionalIngressDomains\": [\"additional-example.com\", \"additional-example-1.com\"],\n \"ingressClassName\" : \"istio\",\n \"domainTemplate\": \"{{ .Name }}-{{ .Namespace }}.{{ .IngressDomain }}\",\n \"urlScheme\": \"http\",\n \"disableIstioVirtualHost\": false,\n \"disableIngressCreation\": false\n }\n ingress: |-\n {\n # ingressGateway specifies the ingress gateway to serve external traffic.\n # The gateway should be specified in format /\n # NOTE: This configuration only applicable for serverless deployment with Istio configured as network layer.\n \"ingressGateway\" : \"knative-serving/knative-ingress-gateway\",\n \n # ingressService specifies the hostname of the ingress service.\n # NOTE: This configuration only applicable for serverless deployment with Istio configured as network layer.\n \"ingressService\" : \"istio-ingressgateway.istio-system.svc.cluster.local\",\n \n # localGateway specifies the gateway which handles the network traffic within the cluster.\n # NOTE: This configuration only applicable for serverless deployment with Istio configured as network layer.\n \"localGateway\" : \"knative-serving/knative-local-gateway\",\n \n # localGatewayService specifies the hostname of the local gateway service.\n # NOTE: This configuration only applicable for serverless deployment with Istio configured as network layer.\n \"localGatewayService\" : \"knative-local-gateway.istio-system.svc.cluster.local\",\n \n # ingressDomain specifies the domain name which is used for creating the url.\n # If ingressDomain is empty then example.com is used as default domain.\n # NOTE: This configuration only applicable for raw deployment.\n \"ingressDomain\" : \"example.com\",\n\n # additionalIngressDomains specifies the additional domain names which are used for creating the url.\n \"additionalIngressDomains\": [\"additional-example.com\", \"additional-example-1.com\"]\n\n # ingressClassName specifies the ingress controller to use for ingress traffic.\n # This is optional and if omitted the default ingress in the cluster is used.\n # https://kubernetes.io/docs/concepts/services-networking/ingress/#default-ingress-class\n # NOTE: This configuration only applicable for raw deployment.\n \"ingressClassName\" : \"istio\",\n \n # domainTemplate specifies the template for generating domain/url for each inference service by combining variable from:\n # Name of the inference service ( {{ .Name}} )\n # Namespace of the inference service ( {{ .Namespace }} )\n # Annotation of the inference service ( {{ .Annotations.key }} )\n # Label of the inference service ( {{ .Labels.key }} )\n # IngressDomain ( {{ .IngressDomain }} )\n # If domain template is empty the default template {{ .Name }}-{{ .Namespace }}.{{ .IngressDomain }} is used.\n # NOTE: This configuration only applicable for raw deployment.\n \"domainTemplate\": \"{{ .Name }}-{{ .Namespace }}.{{ .IngressDomain }}\",\n \n # urlScheme specifies the url scheme to use for inference service and inference graph.\n # If urlScheme is empty then by default http is used.\n \"urlScheme\": \"http\",\n \n # disableIstioVirtualHost controls whether to use istio as network layer.\n # By default istio is used as the network layer. When DisableIstioVirtualHost is true, KServe does not\n # create the top level virtual service thus Istio is no longer required for serverless mode.\n # By setting this field to true, user can use other networking layers supported by knative.\n # For more info https://github.com/kserve/kserve/pull/2380, https://kserve.github.io/website/master/admin/serverless/kourier_networking/.\n # NOTE: This configuration is only applicable to serverless deployment.\n \"disableIstioVirtualHost\": false,\n\n # disableIngressCreation controls whether to disable ingress creation for raw deployment mode.\n \"disableIngressCreation\": false,\n \n # pathTemplate specifies the template for generating path based url for each inference service.\n # The following variables can be used in the template for generating url.\n # Name of the inference service ( {{ .Name}} )\n # Namespace of the inference service ( {{ .Namespace }} )\n # For more info https://github.com/kserve/kserve/issues/2257.\n # NOTE: This configuration only applicable to serverless deployment.\n \"pathTemplate\": \"/serving/{{ .Namespace }}/{{ .Name }}\"\n }\n \n # ====================================== LOGGER CONFIGURATION ======================================\n # Example\n logger: |-\n {\n \"image\" : \"kserve/agent:v0.13.0\",\n \"memoryRequest\": \"100Mi\",\n \"memoryLimit\": \"1Gi\",\n \"cpuRequest\": \"100m\",\n \"cpuLimit\": \"1\",\n \"defaultUrl\": \"http://default-broker\"\n }\n logger: |-\n {\n # image contains the default logger image uri.\n \"image\" : \"kserve/agent:v0.13.0\",\n \n # memoryRequest is the requests.memory to set for the logger container.\n \"memoryRequest\": \"100Mi\",\n \n # memoryLimit is the limits.memory to set for the logger container.\n \"memoryLimit\": \"1Gi\",\n \n # cpuRequest is the requests.cpu to set for the logger container.\n \"cpuRequest\": \"100m\",\n \n # cpuLimit is the limits.cpu to set for the logger container.\n \"cpuLimit\": \"1\",\n \n # defaultUrl specifies the default logger url. If logger is not specified in the resource this url is used.\n \"defaultUrl\": \"http://default-broker\"\n }\n \n # ====================================== BATCHER CONFIGURATION ======================================\n # Example\n batcher: |-\n {\n \"image\" : \"kserve/agent:v0.13.0\",\n \"memoryRequest\": \"1Gi\",\n \"memoryLimit\": \"1Gi\",\n \"cpuRequest\": \"1\",\n \"cpuLimit\": \"1\",\n \"maxBatchSize\": \"32\",\n \"maxLatency\": \"5000\"\n }\n batcher: |-\n {\n # image contains the default batcher image uri.\n \"image\" : \"kserve/agent:v0.13.0\",\n \n # memoryRequest is the requests.memory to set for the batcher container.\n \"memoryRequest\": \"1Gi\",\n \n # memoryLimit is the limits.memory to set for the batcher container.\n \"memoryLimit\": \"1Gi\",\n \n # cpuRequest is the requests.cpu to set for the batcher container.\n \"cpuRequest\": \"1\",\n \n # cpuLimit is the limits.cpu to set for the batcher container.\n \"cpuLimit\": \"1\"\n\n # maxBatchSize is the default maximum batch size for batcher.\n \"maxBatchSize\": \"32\",\n\n # maxLatency is the default maximum latency in milliseconds for batcher to wait and collect the batch.\n \"maxLatency\": \"5000\"\n }\n \n # ====================================== AGENT CONFIGURATION ======================================\n # Example\n agent: |-\n {\n \"image\" : \"kserve/agent:v0.13.0\",\n \"memoryRequest\": \"100Mi\",\n \"memoryLimit\": \"1Gi\",\n \"cpuRequest\": \"100m\",\n \"cpuLimit\": \"1\"\n }\n agent: |-\n {\n # image contains the default agent image uri.\n \"image\" : \"kserve/agent:v0.13.0\",\n \n # memoryRequest is the requests.memory to set for the agent container.\n \"memoryRequest\": \"100Mi\",\n \n # memoryLimit is the limits.memory to set for the agent container.\n \"memoryLimit\": \"1Gi\",\n \n # cpuRequest is the requests.cpu to set for the agent container.\n \"cpuRequest\": \"100m\",\n \n # cpuLimit is the limits.cpu to set for the agent container.\n \"cpuLimit\": \"1\"\n }\n \n # ====================================== ROUTER CONFIGURATION ======================================\n # Example\n router: |-\n {\n \"image\" : \"kserve/router:v0.13.0\",\n \"memoryRequest\": \"100Mi\",\n \"memoryLimit\": \"1Gi\",\n \"cpuRequest\": \"100m\",\n \"cpuLimit\": \"1\",\n \"headers\": {\n \"propagate\": []\n }\n }\n # router is the implementation of inference graph.\n router: |-\n {\n # image contains the default router image uri.\n \"image\" : \"kserve/router:v0.13.0\",\n \n # memoryRequest is the requests.memory to set for the router container.\n \"memoryRequest\": \"100Mi\",\n \n # memoryLimit is the limits.memory to set for the router container.\n \"memoryLimit\": \"1Gi\",\n \n # cpuRequest is the requests.cpu to set for the router container.\n \"cpuRequest\": \"100m\",\n \n # cpuLimit is the limits.cpu to set for the router container.\n \"cpuLimit\": \"1\",\n \n # Propagate the specified headers to all the steps specified in an InferenceGraph. \n # You can either specify the exact header names or use [Golang supported regex patterns]\n # (https://pkg.go.dev/regexp/syntax@go1.21.3#hdr-Syntax) to propagate multiple headers.\n \"headers\": {\n \"propagate\": [\n \"Authorization\",\n \"Test-Header-*\",\n \"*Trace-Id*\"\n ]\n }\n }\n \n # ====================================== DEPLOYMENT CONFIGURATION ======================================\n # Example\n deploy: |-\n {\n \"defaultDeploymentMode\": \"Serverless\"\n }\n deploy: |-\n {\n # defaultDeploymentMode specifies the default deployment mode of the kserve. The supported values are\n # Serverless, RawDeployment and ModelMesh. Users can override the deployment mode at service level\n # by adding the annotation serving.kserve.io/deploymentMode.For more info on deployment mode visit\n # Serverless https://kserve.github.io/website/master/admin/serverless/serverless/\n # RawDeployment https://kserve.github.io/website/master/admin/kubernetes_deployment/\n # ModelMesh https://kserve.github.io/website/master/admin/modelmesh/\n \"defaultDeploymentMode\": \"Serverless\"\n }\n \n # ====================================== METRICS CONFIGURATION ======================================\n # Example\n metricsAggregator: |-\n {\n \"enableMetricAggregation\": \"false\",\n \"enablePrometheusScraping\" : \"false\"\n }\n # For more info see https://github.com/kserve/kserve/blob/master/qpext/README.md\n metricsAggregator: |-\n {\n # enableMetricAggregation configures metric aggregation annotation. This adds the annotation serving.kserve.io/enable-metric-aggregation to every\n # service with the specified boolean value. If true enables metric aggregation in queue-proxy by setting env vars in the queue proxy container\n # to configure scraping ports.\n \"enableMetricAggregation\": \"false\",\n \n # enablePrometheusScraping configures metric aggregation annotation. This adds the annotation serving.kserve.io/enable-metric-aggregation to every\n # service with the specified boolean value. If true, prometheus annotations are added to the pod. If serving.kserve.io/enable-metric-aggregation is false,\n # the prometheus port is set with the default prometheus scraping port 9090, otherwise the prometheus port annotation is set with the metric aggregation port.\n \"enablePrometheusScraping\" : \"false\"\n }"
+ _example: "################################\n# #\n# EXAMPLE CONFIGURATION #\n# #\n################################\n\n# This block is not actually functional configuration,\n# but serves to illustrate the available configuration\n# options and document them in a way that is accessible\n# to users that `kubectl edit` this config map.\n#\n# These sample configuration options may be copied out of\n# this example block and unindented to be in the data block\n# to actually change the configuration.\n\n# ====================================== EXPLAINERS CONFIGURATION ======================================\n# Example\nexplainers: |-\n {\n \"art\": {\n \"image\" : \"kserve/art-explainer\",\n \"defaultImageVersion\": \"latest\"\n }\n }\n# Art Explainer runtime configuration\n explainers: |-\n {\n # Art explainer runtime configuration\n \"art\": {\n # image contains the default Art explainer serving runtime image uri.\n \"image\" : \"kserve/art-explainer\",\n \n # defautltImageVersion contains the Art explainer serving runtime default image version.\n \"defaultImageVersion\": \"latest\"\n }\n }\n# ====================================== ISVC CONFIGURATION ======================================\n# Example \n inferenceService: |-\n {\n \"serviceAnnotationDisallowedList\": [\n \"my.custom.annotation/1\" \n ],\n \"serviceLabelDisallowedList\": [\n \"my.custom.label.1\" \n ]\n }\n# Example of isvc configuration\ninferenceService: |-\n {\n # ServiceAnnotationDisallowedList is a list of annotations that are not allowed to be propagated to Knative \n # revisions, which prevents the reconciliation loop to be triggered if the annotations is \n # configured here are used.\n # Default values are:\n # \"autoscaling.knative.dev/min-scale\",\n # \"autoscaling.knative.dev/max-scale\",\n # \"internal.serving.kserve.io/storage-initializer-sourceuri\",\n # \"kubectl.kubernetes.io/last-applied-configuration\"\n # Any new value will be appended to the list.\n \"serviceAnnotationDisallowedList\": [\n \"my.custom.annotation/1\" \n ],\n # ServiceLabelDisallowedList is a list of labels that are not allowed to be propagated to Knative revisions\n # which prevents the reconciliation loop to be triggered if the labels is configured here are used.\n \"serviceLabelDisallowedList\": [\n \"my.custom.label.1\" \n ]\n } \n# ====================================== MultiNode CONFIGURATION ======================================\n# Example \nmultiNode: |-\n {\n \"customGPUResourceTypeList\": [\n \"custom.com/gpu\"\n ]\n }\n# Example of multinode configuration\nmultiNode: |-\n { \n # CustomGPUResourceTypeList is a list of custom GPU resource types intended to identify the GPU type of a resource,\n # not to restrict the user from using a specific GPU type.\n # The MultiNode runtime pod will dynamically add GPU resources based on the registered GPU types.\n \"customGPUResourceTypeList\": [\n \"custom.com/gpu\"\n ]\n } \n # ====================================== OTelCollector CONFIGURATION ======================================\n # Example\n opentelemetryCollector: |-\n {\n # scrapeInterval is the interval at which the OpenTelemetry Collector will scrape the metrics.\n \"scrapeInterval\": \"5s\",\n # metricScalerEndpoint is the endpoint from which the KEDA's ScaledObject will scrape the metrics.\n \"metricScalerEndpoint\": \"keda-otel-scaler.keda.svc:4318\",\n # metricReceiverEndpoint is the endpoint from which the OpenTelemetry Collector will scrape the metrics.\n \"metricReceiverEndpoint\": \"keda-otel-scaler.keda.svc:4317\"\n }\n \n # ====================================== STORAGE INITIALIZER CONFIGURATION ======================================\n # Example\n storageInitializer: |-\n {\n \"image\" : \"kserve/storage-initializer:v0.15.0\",\n \"memoryRequest\": \"100Mi\",\n \"memoryLimit\": \"1Gi\",\n \"cpuRequest\": \"100m\",\n \"cpuLimit\": \"1\",\n \"caBundleConfigMapName\": \"\",\n \"caBundleVolumeMountPath\": \"/etc/ssl/custom-certs\",\n \"enableDirectPvcVolumeMount\": false,\n \"enableModelcar\": false,\n \"cpuModelcar\": \"10m\",\n \"memoryModelcar\": \"15Mi\"\n }\n storageInitializer: |-\n {\n # image contains the default storage initializer image uri.\n \"image\" : \"kserve/storage-initializer:v0.15.0\",\n \n # memoryRequest is the requests.memory to set for the storage initializer init container.\n \"memoryRequest\": \"100Mi\",\n \n # memoryLimit is the limits.memory to set for the storage initializer init container.\n \"memoryLimit\": \"1Gi\",\n \n # cpuRequest is the requests.cpu to set for the storage initializer init container.\n \"cpuRequest\": \"100m\",\n \n # cpuLimit is the limits.cpu to set for the storage initializer init container.\n \"cpuLimit\": \"1\",\n \n # caBundleConfigMapName is the ConfigMap will be copied to a user namespace for the storage initializer init container.\n \"caBundleConfigMapName\": \"\",\n\n # caBundleVolumeMountPath is the mount point for the configmap set by caBundleConfigMapName for the storage initializer init container.\n \"caBundleVolumeMountPath\": \"/etc/ssl/custom-certs\",\n\n # enableDirectPvcVolumeMount controls whether users can mount pvc volumes directly.\n # if pvc volume is provided in storageuri then the pvc volume is directly mounted to /mnt/models in the user container.\n # rather than symlink it to a shared volume. For more info see https://github.com/kserve/kserve/issues/2737\n \"enableDirectPvcVolumeMount\": true,\n\n # enableModelcar enabled allows you to directly access an OCI container image by\n # using a source URL with an \"oci://\" schema.\n \"enableModelcar\": false,\n\n # cpuModelcar is the cpu request and limit that is used for the passive modelcar container. It can be\n # set very low, but should be allowed by any Kubernetes LimitRange that might apply.\n \"cpuModelcar\": \"10m\",\n\n # cpuModelcar is the memory request and limit that is used for the passive modelcar container. It can be\n # set very low, but should be allowed by any Kubernetes LimitRange that might apply.\n \"memoryModelcar\": \"15Mi\",\n\n # uidModelcar is the UID under with which the modelcar process and the main container is running.\n # Some Kubernetes clusters might require this to be root (0). If not set the user id is left untouched (default)\n \"uidModelcar\": 10\n }\n \n # ====================================== CREDENTIALS ======================================\n # Example\n credentials: |-\n {\n \"storageSpecSecretName\": \"storage-config\",\n \"storageSecretNameAnnotation\": \"serving.kserve.io/storageSecretName\",\n \"gcs\": {\n \"gcsCredentialFileName\": \"gcloud-application-credentials.json\"\n },\n \"s3\": {\n \"s3AccessKeyIDName\": \"AWS_ACCESS_KEY_ID\",\n \"s3SecretAccessKeyName\": \"AWS_SECRET_ACCESS_KEY\",\n \"s3Endpoint\": \"\",\n \"s3UseHttps\": \"\",\n \"s3Region\": \"\",\n \"s3VerifySSL\": \"\",\n \"s3UseVirtualBucket\": \"\",\n \"s3UseAccelerate\": \"\",\n \"s3UseAnonymousCredential\": \"\",\n \"s3CABundle\": \"\"\n }\n }\n # This is a global configuration used for downloading models from the cloud storage.\n # You can override this configuration by specifying the annotations on service account or static secret.\n # https://kserve.github.io/website/master/modelserving/storage/s3/s3/\n # For a quick reference about AWS ENV variables:\n # AWS Cli: https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-envvars.html\n # Boto: https://boto3.amazonaws.com/v1/documentation/api/latest/guide/configuration.html#using-environment-variables\n #\n # The `s3AccessKeyIDName` and `s3SecretAccessKeyName` fields are only used from this configmap when static credentials (IAM User Access Key Secret)\n # are used as the authentication method for AWS S3.\n # The rest of the fields are used in both authentication methods (IAM Role for Service Account & IAM User Access Key Secret) if a non-empty value is provided.\n credentials: |-\n {\n # storageSpecSecretName contains the secret name which has the credentials for downloading the model.\n # This option is used when specifying the storage spec on isvc yaml.\n \"storageSpecSecretName\": \"storage-config\",\n\n # The annotation can be specified on isvc yaml to allow overriding with the secret name reference from the annotation value.\n # When using storageUri the order of the precedence is: secret name reference annotation > secret name references from service account\n # When using storageSpec the order of the precedence is: secret name reference annotation > storageSpecSecretName in configmap\n\n # Configuration for google cloud storage\n \"gcs\": {\n # gcsCredentialFileName specifies the filename of the gcs credential\n \"gcsCredentialFileName\": \"gcloud-application-credentials.json\"\n },\n \n # Configuration for aws s3 storage. This add the corresponding environmental variables to the storage initializer init container.\n # For more info on s3 storage see https://kserve.github.io/website/master/modelserving/storage/s3/s3/\n \"s3\": {\n # s3AccessKeyIDName specifies the s3 access key id name\n \"s3AccessKeyIDName\": \"AWS_ACCESS_KEY_ID\",\n \n # s3SecretAccessKeyName specifies the s3 secret access key name\n \"s3SecretAccessKeyName\": \"AWS_SECRET_ACCESS_KEY\",\n \n # s3Endpoint specifies the s3 endpoint\n \"s3Endpoint\": \"\",\n \n # s3UseHttps controls whether to use secure https or unsecure http to download models.\n # Allowed values are 0 and 1.\n \"s3UseHttps\": \"\",\n \n # s3Region specifies the region of the bucket.\n \"s3Region\": \"\",\n \n # s3VerifySSL controls whether to verify the tls/ssl certificate.\n \"s3VerifySSL\": \"\",\n \n # s3UseVirtualBucket configures whether it is a virtual bucket or not.\n \"s3UseVirtualBucket\": \"\",\n\n # s3UseAccelerate configures whether to use transfer acceleration.\n \"s3UseAccelerate\": \"\",\n \n # s3UseAnonymousCredential configures whether to use anonymous credentials to download the model or not.\n \"s3UseAnonymousCredential\": \"\",\n \n # s3CABundle specifies the path to a certificate bundle to use for HTTPS certificate validation.\n \"s3CABundle\": \"\"\n }\n }\n \n # ====================================== INGRESS CONFIGURATION ======================================\n # Example\n ingress: |-\n { \n \"enableGatewayApi\": false,\n \"kserveIngressGateway\": \"kserve/kserve-ingress-gateway\",\n \"ingressGateway\" : \"knative-serving/knative-ingress-gateway\",\n \"localGateway\" : \"knative-serving/knative-local-gateway\",\n \"localGatewayService\" : \"knative-local-gateway.istio-system.svc.cluster.local\",\n \"ingressDomain\" : \"example.com\",\n \"additionalIngressDomains\": [\"additional-example.com\", \"additional-example-1.com\"],\n \"ingressClassName\" : \"istio\",\n \"domainTemplate\": \"{{ .Name }}-{{ .Namespace }}.{{ .IngressDomain }}\",\n \"urlScheme\": \"http\",\n \"disableIstioVirtualHost\": false,\n \"disableIngressCreation\": false\n }\n ingress: |-\n { \n # enableGatewayApi specifies whether to use Gateway API instead of Ingress to serve external traffic.\n \"enableGatewayApi\": false,\n\n # KServe implements [Gateway API](https://gateway-api.sigs.k8s.io/) to serve external traffic. \n # By default, KServe configures a default gateway to serve external traffic.\n # But, KServe can be configured to use a custom gateway by modifying this configuration.\n # The gateway should be specified in format /\n # NOTE: This configuration only applicable for raw deployment.\n \"kserveIngressGateway\": \"kserve/kserve-ingress-gateway\",\n \n # ingressGateway specifies the ingress gateway to serve external traffic.\n # The gateway should be specified in format /\n # NOTE: This configuration only applicable for serverless deployment with Istio configured as network layer.\n \"ingressGateway\" : \"knative-serving/knative-ingress-gateway\",\n \n # knativeLocalGatewayService specifies the hostname of the Knative's local gateway service.\n # The default KServe configurations are re-using the Istio local gateways for Knative. In this case, this\n # knativeLocalGatewayService field can be left unset. When unset, the value of \"localGatewayService\" will be used.\n # However, sometimes it may be better to have local gateways specifically for KServe (e.g. when enabling strict mTLS in Istio).\n # Under such setups where KServe is needed to have its own local gateways, the values of the \"localGateway\" and\n # \"localGatewayService\" should point to the KServe local gateways. Then, this knativeLocalGatewayService field\n # should point to the Knative's local gateway service.\n # NOTE: This configuration only applicable for serverless deployment with Istio configured as network layer.\n \"knativeLocalGatewayService\": \"\",\n \n # localGateway specifies the gateway which handles the network traffic within the cluster.\n # NOTE: This configuration only applicable for serverless deployment with Istio configured as network layer.\n \"localGateway\" : \"knative-serving/knative-local-gateway\",\n \n # localGatewayService specifies the hostname of the local gateway service.\n # NOTE: This configuration only applicable for serverless deployment with Istio configured as network layer.\n \"localGatewayService\" : \"knative-local-gateway.istio-system.svc.cluster.local\",\n \n # ingressDomain specifies the domain name which is used for creating the url.\n # If ingressDomain is empty then example.com is used as default domain.\n # NOTE: This configuration only applicable for raw deployment.\n \"ingressDomain\" : \"example.com\",\n\n # additionalIngressDomains specifies the additional domain names which are used for creating the url.\n \"additionalIngressDomains\": [\"additional-example.com\", \"additional-example-1.com\"]\n\n # ingressClassName specifies the ingress controller to use for ingress traffic.\n # This is optional and if omitted the default ingress in the cluster is used.\n # https://kubernetes.io/docs/concepts/services-networking/ingress/#default-ingress-class\n # NOTE: This configuration only applicable for raw deployment.\n \"ingressClassName\" : \"istio\",\n \n # domainTemplate specifies the template for generating domain/url for each inference service by combining variable from:\n # Name of the inference service ( {{ .Name}} )\n # Namespace of the inference service ( {{ .Namespace }} )\n # Annotation of the inference service ( {{ .Annotations.key }} )\n # Label of the inference service ( {{ .Labels.key }} )\n # IngressDomain ( {{ .IngressDomain }} )\n # If domain template is empty the default template {{ .Name }}-{{ .Namespace }}.{{ .IngressDomain }} is used.\n # NOTE: This configuration only applicable for raw deployment.\n \"domainTemplate\": \"{{ .Name }}-{{ .Namespace }}.{{ .IngressDomain }}\",\n \n # urlScheme specifies the url scheme to use for inference service and inference graph.\n # If urlScheme is empty then by default http is used.\n \"urlScheme\": \"http\",\n \n # disableIstioVirtualHost controls whether to use istio as network layer.\n # By default istio is used as the network layer. When DisableIstioVirtualHost is true, KServe does not\n # create the top level virtual service thus Istio is no longer required for serverless mode.\n # By setting this field to true, user can use other networking layers supported by knative.\n # For more info https://github.com/kserve/kserve/pull/2380, https://kserve.github.io/website/master/admin/serverless/kourier_networking/.\n # NOTE: This configuration is only applicable to serverless deployment.\n \"disableIstioVirtualHost\": false,\n\n # disableIngressCreation controls whether to disable ingress creation for raw deployment mode.\n \"disableIngressCreation\": false,\n \n # pathTemplate specifies the template for generating path based url for each inference service.\n # The following variables can be used in the template for generating url.\n # Name of the inference service ( {{ .Name}} )\n # Namespace of the inference service ( {{ .Namespace }} )\n # For more info https://github.com/kserve/kserve/issues/2257.\n # NOTE: This configuration only applicable to serverless deployment.\n \"pathTemplate\": \"/serving/{{ .Namespace }}/{{ .Name }}\"\n }\n \n # ====================================== LOGGER CONFIGURATION ======================================\n # Example\n logger: |-\n {\n \"image\" : \"kserve/agent:v0.15.0\",\n \"memoryRequest\": \"100Mi\",\n \"memoryLimit\": \"1Gi\",\n \"cpuRequest\": \"100m\",\n \"cpuLimit\": \"1\",\n \"defaultUrl\": \"http://default-broker\"\n }\n logger: |-\n {\n # image contains the default logger image uri.\n \"image\" : \"kserve/agent:v0.15.0\",\n \n # memoryRequest is the requests.memory to set for the logger container.\n \"memoryRequest\": \"100Mi\",\n \n # memoryLimit is the limits.memory to set for the logger container.\n \"memoryLimit\": \"1Gi\",\n \n # cpuRequest is the requests.cpu to set for the logger container.\n \"cpuRequest\": \"100m\",\n \n # cpuLimit is the limits.cpu to set for the logger container.\n \"cpuLimit\": \"1\",\n \n # defaultUrl specifies the default logger url. If logger is not specified in the resource this url is used.\n \"defaultUrl\": \"http://default-broker\"\n }\n \n # ====================================== BATCHER CONFIGURATION ======================================\n # Example\n batcher: |-\n {\n \"image\" : \"kserve/agent:v0.15.0\",\n \"memoryRequest\": \"1Gi\",\n \"memoryLimit\": \"1Gi\",\n \"cpuRequest\": \"1\",\n \"cpuLimit\": \"1\",\n \"maxBatchSize\": \"32\",\n \"maxLatency\": \"5000\"\n }\n batcher: |-\n {\n # image contains the default batcher image uri.\n \"image\" : \"kserve/agent:v0.15.0\",\n \n # memoryRequest is the requests.memory to set for the batcher container.\n \"memoryRequest\": \"1Gi\",\n \n # memoryLimit is the limits.memory to set for the batcher container.\n \"memoryLimit\": \"1Gi\",\n \n # cpuRequest is the requests.cpu to set for the batcher container.\n \"cpuRequest\": \"1\",\n \n # cpuLimit is the limits.cpu to set for the batcher container.\n \"cpuLimit\": \"1\"\n\n # maxBatchSize is the default maximum batch size for batcher.\n \"maxBatchSize\": \"32\",\n\n # maxLatency is the default maximum latency in milliseconds for batcher to wait and collect the batch.\n \"maxLatency\": \"5000\"\n }\n \n # ====================================== AGENT CONFIGURATION ======================================\n # Example\n agent: |-\n {\n \"image\" : \"kserve/agent:v0.15.0\",\n \"memoryRequest\": \"100Mi\",\n \"memoryLimit\": \"1Gi\",\n \"cpuRequest\": \"100m\",\n \"cpuLimit\": \"1\"\n }\n agent: |-\n {\n # image contains the default agent image uri.\n \"image\" : \"kserve/agent:v0.15.0\",\n \n # memoryRequest is the requests.memory to set for the agent container.\n \"memoryRequest\": \"100Mi\",\n \n # memoryLimit is the limits.memory to set for the agent container.\n \"memoryLimit\": \"1Gi\",\n \n # cpuRequest is the requests.cpu to set for the agent container.\n \"cpuRequest\": \"100m\",\n \n # cpuLimit is the limits.cpu to set for the agent container.\n \"cpuLimit\": \"1\"\n }\n \n # ====================================== ROUTER CONFIGURATION ======================================\n # Example\n router: |-\n {\n \"image\" : \"kserve/router:v0.15.0\",\n \"memoryRequest\": \"100Mi\",\n \"memoryLimit\": \"1Gi\",\n \"cpuRequest\": \"100m\",\n \"cpuLimit\": \"1\",\n \"headers\": {\n \"propagate\": []\n },\n \"imagePullPolicy\": \"IfNotPresent\",\n \"imagePullSecrets\": [\"docker-secret\"]\n }\n # router is the implementation of inference graph.\n router: |-\n {\n # image contains the default router image uri.\n \"image\" : \"kserve/router:v0.15.0\",\n \n # memoryRequest is the requests.memory to set for the router container.\n \"memoryRequest\": \"100Mi\",\n \n # memoryLimit is the limits.memory to set for the router container.\n \"memoryLimit\": \"1Gi\",\n \n # cpuRequest is the requests.cpu to set for the router container.\n \"cpuRequest\": \"100m\",\n \n # cpuLimit is the limits.cpu to set for the router container.\n \"cpuLimit\": \"1\",\n \n # Propagate the specified headers to all the steps specified in an InferenceGraph. \n # You can either specify the exact header names or use [Golang supported regex patterns]\n # (https://pkg.go.dev/regexp/syntax@go1.21.3#hdr-Syntax) to propagate multiple headers.\n \"headers\": {\n \"propagate\": [\n \"Authorization\",\n \"Test-Header-*\",\n \"*Trace-Id*\"\n ]\n }\n\n # imagePullPolicy specifies when the router image should be pulled from registry.\n \"imagePullPolicy\": \"IfNotPresent\",\n \n # # imagePullSecrets specifies the list of secrets to be used for pulling the router image from registry.\n # https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/\n \"imagePullSecrets\": [\"docker-secret\"]\n }\n \n # ====================================== DEPLOYMENT CONFIGURATION ======================================\n # Example\n deploy: |-\n {\n \"defaultDeploymentMode\": \"Serverless\"\n }\n deploy: |-\n {\n # defaultDeploymentMode specifies the default deployment mode of the kserve. The supported values are\n # Serverless, RawDeployment and ModelMesh. Users can override the deployment mode at service level\n # by adding the annotation serving.kserve.io/deploymentMode.For more info on deployment mode visit\n # Serverless https://kserve.github.io/website/master/admin/serverless/serverless/\n # RawDeployment https://kserve.github.io/website/master/admin/kubernetes_deployment/\n # ModelMesh https://kserve.github.io/website/master/admin/modelmesh/\n \"defaultDeploymentMode\": \"Serverless\"\n }\n\n # ====================================== SERVICE CONFIGURATION ======================================\n # Example\n service: |-\n {\n \"serviceClusterIPNone\": false\n }\n service: |-\n {\n # ServiceClusterIPNone is a boolean flag to indicate if the service should have a clusterIP set to None.\n # If the DeploymentMode is Raw, the default value for ServiceClusterIPNone if not set is false\n # \"serviceClusterIPNone\": false\n }\n\n # ====================================== METRICS CONFIGURATION ======================================\n # Example\n metricsAggregator: |-\n {\n \"enableMetricAggregation\": \"false\",\n \"enablePrometheusScraping\" : \"false\"\n }\n # For more info see https://github.com/kserve/kserve/blob/master/qpext/README.md\n metricsAggregator: |-\n {\n # enableMetricAggregation configures metric aggregation annotation. This adds the annotation serving.kserve.io/enable-metric-aggregation to every\n # service with the specified boolean value. If true enables metric aggregation in queue-proxy by setting env vars in the queue proxy container\n # to configure scraping ports.\n \"enableMetricAggregation\": \"false\",\n \n # enablePrometheusScraping configures metric aggregation annotation. This adds the annotation serving.kserve.io/enable-metric-aggregation to every\n # service with the specified boolean value. If true, prometheus annotations are added to the pod. If serving.kserve.io/enable-metric-aggregation is false,\n # the prometheus port is set with the default prometheus scraping port 9090, otherwise the prometheus port annotation is set with the metric aggregation port.\n \"enablePrometheusScraping\" : \"false\"\n }\n \n # ====================================== LOCALMODEL CONFIGURATION ======================================\n # Example\n localModel: |-\n {\n \"enabled\": false,\n # jobNamespace specifies the namespace where the download job will be created.\n \"jobNamespace\": \"kserve-localmodel-jobs\",\n # defaultJobImage specifies the default image used for the download job.\n \"defaultJobImage\" : \"kserve/storage-initializer:v0.15.0\",\n # Kubernetes modifies the filesystem group ID on the attached volume.\n \"fsGroup\": 1000,\n # TTL for the download job after it is finished.\n \"jobTTLSecondsAfterFinished\": 3600,\n # The frequency at which the local model agent reconciles the local models\n # This is to detect if models are missing from local disk\n \"reconcilationFrequencyInSecs\": 60,\n # This is to disable localmodel pv and pvc management for namespaces without isvcs\n \"disableVolumeManagement\": false\n }\n \n # ====================================== LOCALMODEL CONFIGURATION ======================================\n # Example\n inferenceservice: |-\n {\n \"resource\": {\n \"cpuLimit\": \"1\",\n \"memoryLimit\": \"2Gi\",\n \"cpuRequest\": \"1\",\n \"memoryRequest\": \"2Gi\"\n }\n }\n inferenceservice: |-\n {\n # resource contains the default resource configuration for the inference service.\n # you can override this configuration by specifying the resources in the inference service yaml.\n # If you want to unbound the resource (limits and requests), you can set the value to null or \"\" \n # or just remove the specific field from the config.\n \"resource\": {\n # cpuLimit is the limits.cpu to set for the inference service.\n \"cpuLimit\": \"1\",\n \n # memoryLimit is the limits.memory to set for the inference service.\n \"memoryLimit\": \"2Gi\",\n \n # cpuRequest is the requests.cpu to set for the inference service.\n \"cpuRequest\": \"1\",\n \n # memoryRequest is the requests.memory to set for the inference service.\n \"memoryRequest\": \"2Gi\"\n }\n }"
agent: |-
{
- "image" : "kserve/agent:v0.13.0",
+ "image" : "kserve/agent:v0.15.0",
"memoryRequest": "100Mi",
"memoryLimit": "1Gi",
"cpuRequest": "100m",
@@ -21399,7 +32622,7 @@ data:
}
batcher: |-
{
- "image" : "kserve/agent:v0.13.0",
+ "image" : "kserve/agent:v0.15.0",
"memoryRequest": "1Gi",
"memoryLimit": "1Gi",
"cpuRequest": "1",
@@ -21438,22 +32661,26 @@ data:
"defaultImageVersion": "latest"
}
}
- ingress: |-
+ inferenceService: |-
{
- "ingressGateway": "kubeflow/kubeflow-gateway",
- "ingressService": "istio-ingressgateway.istio-system.svc.cluster.local",
- "localGateway": "knative-serving/knative-local-gateway",
- "localGatewayService": "knative-local-gateway.istio-system.svc.cluster.local",
- "ingressDomain": "example.com",
- "ingressClassName": "istio",
- "domainTemplate": "{{ .Name }}-{{ .Namespace }}.{{ .IngressDomain }}",
- "urlScheme": "http",
- "disableIstioVirtualHost": false,
- "disableIngressCreation": false
+ "resource": {
+ "cpuLimit": "1",
+ "memoryLimit": "2Gi",
+ "cpuRequest": "1",
+ "memoryRequest": "2Gi"
+ }
+ }
+ ingress: "{\n \"enableGatewayApi\": false,\n \"kserveIngressGateway\": \"kserve/kserve-ingress-gateway\",\n \"ingressGateway\": \"kubeflow/kubeflow-gateway\",\n \"localGateway\": \"knative-serving/knative-local-gateway\",\n \"localGatewayService\": \"knative-local-gateway.istio-system.svc.cluster.local\",\n \"ingressDomain\": \"example.com\",\n \"ingressClassName\": \"istio\",\n \"domainTemplate\": \"{{ .Name }}-{{ .Namespace }}.{{ .IngressDomain }}\",\n \"urlScheme\": \"http\",\n \"disableIstioVirtualHost\": false,\n \"disableIngressCreation\": false\n}"
+ localModel: |-
+ {
+ "enabled": false,
+ "jobNamespace": "kserve-localmodel-jobs",
+ "defaultJobImage" : "kserve/storage-initializer:v0.15.0",
+ "fsGroup": 1000
}
logger: |-
{
- "image" : "kserve/agent:v0.13.0",
+ "image" : "kserve/agent:v0.15.0",
"memoryRequest": "100Mi",
"memoryLimit": "1Gi",
"cpuRequest": "100m",
@@ -21465,17 +32692,28 @@ data:
"enableMetricAggregation": "false",
"enablePrometheusScraping" : "false"
}
+ opentelemetryCollector: |-
+ {
+ "scrapeInterval": "5s",
+ "metricReceiverEndpoint": "keda-otel-scaler.keda.svc:4317",
+ "metricScalerEndpoint": "keda-otel-scaler.keda.svc:4318"
+ }
router: |-
{
- "image" : "kserve/router:v0.13.0",
+ "image" : "kserve/router:v0.15.0",
"memoryRequest": "100Mi",
"memoryLimit": "1Gi",
"cpuRequest": "100m",
- "cpuLimit": "1"
+ "cpuLimit": "1",
+ "imagePullPolicy": "IfNotPresent"
+ }
+ security: |-
+ {
+ "autoMountServiceAccountToken": true
}
storageInitializer: |-
{
- "image" : "kserve/storage-initializer:v0.13.0",
+ "image" : "kserve/storage-initializer:v0.15.0",
"memoryRequest": "100Mi",
"memoryLimit": "1Gi",
"cpuRequest": "100m",
@@ -21588,12 +32826,12 @@ spec:
metadata:
annotations:
kubectl.kubernetes.io/default-container: manager
- sidecar.istio.io/inject: "false"
labels:
app: kserve
app.kubernetes.io/name: kserve
control-plane: kserve-controller-manager
controller-tools.k8s.io: "1.0"
+ sidecar.istio.io/inject: "false"
spec:
containers:
- args:
@@ -21608,14 +32846,14 @@ spec:
fieldPath: metadata.namespace
- name: SECRET_NAME
value: kserve-webhook-server-cert
- image: kserve/kserve-controller:v0.13.0
+ image: kserve/kserve-controller:v0.15.0
imagePullPolicy: Always
livenessProbe:
failureThreshold: 5
httpGet:
path: /healthz
port: 8081
- initialDelaySeconds: 10
+ initialDelaySeconds: 30
timeoutSeconds: 5
name: manager
ports:
@@ -21623,11 +32861,11 @@ spec:
name: webhook-server
protocol: TCP
readinessProbe:
- failureThreshold: 10
+ failureThreshold: 5
httpGet:
path: /readyz
port: 8081
- initialDelaySeconds: 10
+ initialDelaySeconds: 30
periodSeconds: 5
timeoutSeconds: 5
resources:
@@ -21639,6 +32877,12 @@ spec:
memory: 200Mi
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ privileged: false
+ readOnlyRootFilesystem: true
+ runAsNonRoot: true
volumeMounts:
- mountPath: /tmp/k8s-webhook-server/serving-certs
name: cert
@@ -21648,12 +32892,20 @@ spec:
- --upstream=http://127.0.0.1:8080/
- --logtostderr=true
- --v=10
- image: gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
+ image: quay.io/brancz/kube-rbac-proxy:v0.18.0
name: kube-rbac-proxy
ports:
- containerPort: 8443
name: https
protocol: TCP
+ securityContext:
+ allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ privileged: false
+ readOnlyRootFilesystem: true
+ runAsNonRoot: true
securityContext:
runAsNonRoot: true
serviceAccountName: kserve-controller-manager
@@ -21664,6 +32916,137 @@ spec:
defaultMode: 420
secretName: kserve-webhook-server-cert
---
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+ labels:
+ app: kserve
+ app.kubernetes.io/name: kserve
+ control-plane: kserve-localmodel-controller-manager
+ controller-tools.k8s.io: "1.0"
+ name: kserve-localmodel-controller-manager
+ namespace: kubeflow
+spec:
+ selector:
+ matchLabels:
+ app: kserve
+ app.kubernetes.io/name: kserve
+ control-plane: kserve-localmodel-controller-manager
+ controller-tools.k8s.io: "1.0"
+ template:
+ metadata:
+ annotations:
+ kubectl.kubernetes.io/default-container: manager
+ labels:
+ app: kserve
+ app.kubernetes.io/name: kserve
+ control-plane: kserve-localmodel-controller-manager
+ controller-tools.k8s.io: "1.0"
+ spec:
+ containers:
+ - command:
+ - /manager
+ env:
+ - name: POD_NAMESPACE
+ valueFrom:
+ fieldRef:
+ fieldPath: metadata.namespace
+ image: kserve/kserve-localmodel-controller:v0.15.0
+ imagePullPolicy: Always
+ name: manager
+ resources:
+ limits:
+ cpu: 100m
+ memory: 300Mi
+ requests:
+ cpu: 100m
+ memory: 200Mi
+ securityContext:
+ allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ privileged: false
+ readOnlyRootFilesystem: true
+ runAsNonRoot: true
+ securityContext:
+ runAsNonRoot: true
+ serviceAccountName: kserve-localmodel-controller-manager
+ terminationGracePeriodSeconds: 10
+---
+apiVersion: apps/v1
+kind: DaemonSet
+metadata:
+ labels:
+ app: kserve
+ app.kubernetes.io/name: kserve
+ control-plane: kserve-localmodelnode-agent
+ controller-tools.k8s.io: "1.0"
+ name: kserve-localmodelnode-agent
+ namespace: kubeflow
+spec:
+ selector:
+ matchLabels:
+ app: kserve
+ app.kubernetes.io/name: kserve
+ control-plane: kserve-localmodelnode-agent
+ controller-tools.k8s.io: "1.0"
+ template:
+ metadata:
+ annotations:
+ kubectl.kubernetes.io/default-container: manager
+ labels:
+ app: kserve
+ app.kubernetes.io/name: kserve
+ control-plane: kserve-localmodelnode-agent
+ controller-tools.k8s.io: "1.0"
+ spec:
+ containers:
+ - command:
+ - /manager
+ env:
+ - name: POD_NAMESPACE
+ valueFrom:
+ fieldRef:
+ fieldPath: metadata.namespace
+ - name: NODE_NAME
+ valueFrom:
+ fieldRef:
+ fieldPath: spec.nodeName
+ image: kserve/kserve-localmodelnode-agent:v0.15.0
+ imagePullPolicy: Always
+ name: manager
+ resources:
+ limits:
+ cpu: 100m
+ memory: 300Mi
+ requests:
+ cpu: 100m
+ memory: 200Mi
+ securityContext:
+ allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ privileged: false
+ readOnlyRootFilesystem: true
+ runAsNonRoot: true
+ volumeMounts:
+ - mountPath: /mnt/models
+ name: models
+ readOnly: false
+ nodeSelector:
+ kserve/localmodel: worker
+ securityContext:
+ runAsNonRoot: true
+ serviceAccountName: kserve-localmodelnode-agent
+ terminationGracePeriodSeconds: 10
+ volumes:
+ - hostPath:
+ path: /models
+ type: DirectoryOrCreate
+ name: models
+---
apiVersion: cert-manager.io/v1
kind: Certificate
metadata:
@@ -21706,7 +33089,6 @@ webhooks:
- admissionReviewVersions:
- v1beta1
clientConfig:
- caBundle: Cg==
service:
name: kserve-webhook-server-service
namespace: kubeflow
@@ -21727,7 +33109,6 @@ webhooks:
- admissionReviewVersions:
- v1beta1
clientConfig:
- caBundle: Cg==
service:
name: kserve-webhook-server-service
namespace: kubeflow
@@ -21768,7 +33149,6 @@ webhooks:
- admissionReviewVersions:
- v1beta1
clientConfig:
- caBundle: Cg==
service:
name: kserve-webhook-server-service
namespace: kubeflow
@@ -21801,7 +33181,6 @@ webhooks:
- admissionReviewVersions:
- v1beta1
clientConfig:
- caBundle: Cg==
service:
name: kserve-webhook-server-service
namespace: kubeflow
@@ -21834,7 +33213,6 @@ webhooks:
- admissionReviewVersions:
- v1beta1
clientConfig:
- caBundle: Cg==
service:
name: kserve-webhook-server-service
namespace: kubeflow
@@ -21855,6 +33233,39 @@ webhooks:
---
apiVersion: admissionregistration.k8s.io/v1
kind: ValidatingWebhookConfiguration
+metadata:
+ annotations:
+ cert-manager.io/inject-ca-from: kubeflow/serving-cert
+ creationTimestamp: null
+ labels:
+ app: kserve
+ app.kubernetes.io/name: kserve
+ name: localmodelcache.serving.kserve.io
+webhooks:
+ - admissionReviewVersions:
+ - v1beta1
+ clientConfig:
+ service:
+ name: kserve-webhook-server-service
+ namespace: kubeflow
+ path: /validate-serving-kserve-io-v1alpha1-localmodelcache
+ failurePolicy: Fail
+ name: localmodelcache.kserve-webhook-server.validator
+ rules:
+ - apiGroups:
+ - serving.kserve.io
+ apiVersions:
+ - v1alpha1
+ operations:
+ - CREATE
+ - UPDATE
+ - DELETE
+ resources:
+ - localmodelcaches
+ sideEffects: None
+---
+apiVersion: admissionregistration.k8s.io/v1
+kind: ValidatingWebhookConfiguration
metadata:
annotations:
cert-manager.io/inject-ca-from: kubeflow/serving-cert
@@ -21867,7 +33278,6 @@ webhooks:
- admissionReviewVersions:
- v1beta1
clientConfig:
- caBundle: Cg==
service:
name: kserve-webhook-server-service
namespace: kubeflow
@@ -21900,7 +33310,6 @@ webhooks:
- admissionReviewVersions:
- v1beta1
clientConfig:
- caBundle: Cg==
service:
name: kserve-webhook-server-service
namespace: kubeflow
diff --git a/charts/kubeflow/apps/kserve/kserve/kustomization.yaml b/charts/kubeflow/apps/kserve/kserve/kustomization.yaml
new file mode 100644
index 0000000..c403589
--- /dev/null
+++ b/charts/kubeflow/apps/kserve/kserve/kustomization.yaml
@@ -0,0 +1,42 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+kind: Kustomization
+resources:
+# Install Kserve in kubeflow namespace
+- kserve_kubeflow.yaml
+- kserve-cluster-resources.yaml
+
+# Patch to delete the kserve-localmodelnode-agent DaemonSet
+patches:
+- patch: |
+ apiVersion: apps/v1
+ kind: DaemonSet
+ metadata:
+ name: kserve-localmodelnode-agent
+ namespace: kubeflow
+ $patch: delete
+
+- patch: |
+ apiVersion: apps/v1
+ kind: Deployment
+ metadata:
+ name: kserve-controller-manager
+ namespace: kubeflow
+ spec:
+ template:
+ spec:
+ securityContext:
+ seccompProfile:
+ type: RuntimeDefault
+
+- patch: |
+ apiVersion: apps/v1
+ kind: Deployment
+ metadata:
+ name: kserve-localmodel-controller-manager
+ namespace: kubeflow
+ spec:
+ template:
+ spec:
+ securityContext:
+ seccompProfile:
+ type: RuntimeDefault
diff --git a/charts/kubeflow/contrib/kserve/kserve/params.env b/charts/kubeflow/apps/kserve/kserve/params.env
similarity index 100%
rename from charts/kubeflow/contrib/kserve/kserve/params.env
rename to charts/kubeflow/apps/kserve/kserve/params.env
diff --git a/charts/kubeflow/contrib/kserve/models-web-app/base/deployment.yaml b/charts/kubeflow/apps/kserve/models-web-app/base/deployment.yaml
similarity index 81%
rename from charts/kubeflow/contrib/kserve/models-web-app/base/deployment.yaml
rename to charts/kubeflow/apps/kserve/models-web-app/base/deployment.yaml
index af39b86..d028894 100644
--- a/charts/kubeflow/contrib/kserve/models-web-app/base/deployment.yaml
+++ b/charts/kubeflow/apps/kserve/models-web-app/base/deployment.yaml
@@ -13,6 +13,10 @@ spec:
labels:
app.kubernetes.io/component: kserve-models-web-app
spec:
+ securityContext:
+ runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- image: kserve/models-web-app:latest
imagePullPolicy: Always
@@ -41,4 +45,10 @@ spec:
timeoutSeconds: 1
failureThreshold: 3
successThreshold: 1
+ securityContext:
+ allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ runAsUser: 1000
serviceAccountName: kserve-models-web-app
diff --git a/charts/kubeflow/contrib/kserve/models-web-app/base/istio.yaml b/charts/kubeflow/apps/kserve/models-web-app/base/istio.yaml
similarity index 100%
rename from charts/kubeflow/contrib/kserve/models-web-app/base/istio.yaml
rename to charts/kubeflow/apps/kserve/models-web-app/base/istio.yaml
diff --git a/charts/kubeflow/apps/kserve/models-web-app/base/kustomization.yaml b/charts/kubeflow/apps/kserve/models-web-app/base/kustomization.yaml
new file mode 100644
index 0000000..5d5fc99
--- /dev/null
+++ b/charts/kubeflow/apps/kserve/models-web-app/base/kustomization.yaml
@@ -0,0 +1,24 @@
+resources:
+- rbac.yaml
+- service.yaml
+- deployment.yaml
+- istio.yaml
+
+namespace: kserve
+
+
+images:
+- name: kserve/models-web-app
+ newName: ghcr.io/kserve/models-web-app
+ newTag: v0.14.0
+configMapGenerator:
+- literals:
+ - APP_DISABLE_AUTH="True"
+ name: kserve-models-web-app-config
+apiVersion: kustomize.config.k8s.io/v1beta1
+kind: Kustomization
+labels:
+- includeSelectors: true
+ pairs:
+ app.kubernetes.io/component: kserve-models-web-app
+ kustomize.component: kserve-models-web-app
diff --git a/charts/kubeflow/contrib/kserve/models-web-app/base/rbac.yaml b/charts/kubeflow/apps/kserve/models-web-app/base/rbac.yaml
similarity index 100%
rename from charts/kubeflow/contrib/kserve/models-web-app/base/rbac.yaml
rename to charts/kubeflow/apps/kserve/models-web-app/base/rbac.yaml
diff --git a/charts/kubeflow/contrib/kserve/models-web-app/base/service.yaml b/charts/kubeflow/apps/kserve/models-web-app/base/service.yaml
similarity index 100%
rename from charts/kubeflow/contrib/kserve/models-web-app/base/service.yaml
rename to charts/kubeflow/apps/kserve/models-web-app/base/service.yaml
diff --git a/charts/kubeflow/contrib/kserve/models-web-app/overlays/kubeflow/kustomization.yaml b/charts/kubeflow/apps/kserve/models-web-app/overlays/kubeflow/kustomization.yaml
similarity index 65%
rename from charts/kubeflow/contrib/kserve/models-web-app/overlays/kubeflow/kustomization.yaml
rename to charts/kubeflow/apps/kserve/models-web-app/overlays/kubeflow/kustomization.yaml
index 18f0724..b2e828f 100644
--- a/charts/kubeflow/contrib/kserve/models-web-app/overlays/kubeflow/kustomization.yaml
+++ b/charts/kubeflow/apps/kserve/models-web-app/overlays/kubeflow/kustomization.yaml
@@ -5,25 +5,9 @@ kind: Kustomization
namespace: kubeflow
# Labels to add to all resources and selectors.
-commonLabels:
- app: kserve
- app.kubernetes.io/name: kserve
-bases:
-- ../../base
-- web-app-authorization-policy.yaml
-patchesStrategicMerge:
-- patches/web-app-sidecar.yaml
-patchesJson6902:
-- target:
- group: networking.istio.io
- version: v1beta1
- kind: VirtualService
- name: kserve-models-web-app
- namespace: kserve
- path: patches/web-app-vsvc.yaml
generatorOptions:
disableNameSuffixHash: true
@@ -32,11 +16,28 @@ generatorOptions:
# variabalize ingress gateway, webhook service name and
# kserve namespace in webhook configurations
configMapGenerator:
- - name: kserve-models-web-app-config
- behavior: replace
- literals:
- - USERID_HEADER=kubeflow-userid
- - APP_PREFIX=/kserve-endpoints
+- behavior: replace
+ literals:
+ - USERID_HEADER=kubeflow-userid
+ - APP_PREFIX=/kserve-endpoints
+ name: kserve-models-web-app-config
configurations:
- params.yaml
+resources:
+- ../../base
+- web-app-authorization-policy.yaml
+labels:
+- includeSelectors: true
+ pairs:
+ app: kserve
+ app.kubernetes.io/name: kserve
+patches:
+- path: patches/web-app-vsvc.yaml
+ target:
+ group: networking.istio.io
+ kind: VirtualService
+ name: kserve-models-web-app
+ namespace: kserve
+ version: v1beta1
+- path: patches/web-app-sidecar.yaml
diff --git a/charts/kubeflow/contrib/kserve/models-web-app/overlays/kubeflow/params.yaml b/charts/kubeflow/apps/kserve/models-web-app/overlays/kubeflow/params.yaml
similarity index 100%
rename from charts/kubeflow/contrib/kserve/models-web-app/overlays/kubeflow/params.yaml
rename to charts/kubeflow/apps/kserve/models-web-app/overlays/kubeflow/params.yaml
diff --git a/charts/kubeflow/contrib/kserve/models-web-app/overlays/kubeflow/patches/web-app-sidecar.yaml b/charts/kubeflow/apps/kserve/models-web-app/overlays/kubeflow/patches/web-app-sidecar.yaml
similarity index 89%
rename from charts/kubeflow/contrib/kserve/models-web-app/overlays/kubeflow/patches/web-app-sidecar.yaml
rename to charts/kubeflow/apps/kserve/models-web-app/overlays/kubeflow/patches/web-app-sidecar.yaml
index 825618d..6332843 100644
--- a/charts/kubeflow/contrib/kserve/models-web-app/overlays/kubeflow/patches/web-app-sidecar.yaml
+++ b/charts/kubeflow/apps/kserve/models-web-app/overlays/kubeflow/patches/web-app-sidecar.yaml
@@ -6,5 +6,5 @@ metadata:
spec:
template:
metadata:
- annotations:
+ labels:
sidecar.istio.io/inject: "true"
diff --git a/charts/kubeflow/contrib/kserve/models-web-app/overlays/kubeflow/patches/web-app-vsvc.yaml b/charts/kubeflow/apps/kserve/models-web-app/overlays/kubeflow/patches/web-app-vsvc.yaml
similarity index 100%
rename from charts/kubeflow/contrib/kserve/models-web-app/overlays/kubeflow/patches/web-app-vsvc.yaml
rename to charts/kubeflow/apps/kserve/models-web-app/overlays/kubeflow/patches/web-app-vsvc.yaml
diff --git a/charts/kubeflow/contrib/kserve/models-web-app/overlays/kubeflow/web-app-authorization-policy.yaml b/charts/kubeflow/apps/kserve/models-web-app/overlays/kubeflow/web-app-authorization-policy.yaml
similarity index 100%
rename from charts/kubeflow/contrib/kserve/models-web-app/overlays/kubeflow/web-app-authorization-policy.yaml
rename to charts/kubeflow/apps/kserve/models-web-app/overlays/kubeflow/web-app-authorization-policy.yaml
diff --git a/charts/kubeflow/apps/model-registry/upstream/README.md b/charts/kubeflow/apps/model-registry/upstream/README.md
index 2c6ec9d..6aab1c2 100644
--- a/charts/kubeflow/apps/model-registry/upstream/README.md
+++ b/charts/kubeflow/apps/model-registry/upstream/README.md
@@ -2,11 +2,83 @@
This folder contains [Kubeflow Model Registry](https://www.kubeflow.org/docs/components/model-registry/installation/) Kustomize manifests
-## Installation
+## Overview
-To install Kubeflow Model Registry, follow [Kubeflow Model Registry deployment documentation](https://www.kubeflow.org/docs/components/model-registry/installation/)
+This is the full installation guide, for a quick install in an existing Kubeflow installation, follow [these instructions](https://www.kubeflow.org/docs/components/model-registry/installation/).
+**Ensure you are running all these commands from the directory containing this README.md file (e.g.: you could check with `pwd`).**
-The following instructions will summarize how to deploy Model Registry as separate component in the context of a default Kubeflow >=1.8 installation.
+## Kubeflow Central Dashboard Installation
+
+These instructions assume that you've installed Kubeflow from the [manifests](https://github.com/kubeflow/manifests/), if you're using a distribution consult its documentation instead.
+
+Kubeflow Central Dashboard uses [Profiles](https://www.kubeflow.org/docs/components/central-dash/profiles/) to handle user namespaces and permissions. By default, the manifests deploy the Model Registry instance in the `kubeflow` namespace, to install a compatible version of Model Registry for Kubeflow, you should deploy a separate instance of Model Registry in the profile's namespace. For that just run:
+
+```sh
+PROFILE_NAME=
+for DIR in options/istio overlays/db ; do (cd $DIR; kustomize edit set namespace $PROFILE_NAME; kubectl apply -k .); done
+```
+
+> **⚠️ Warning:** If you're not sure of the profile name, you can find it in the name space drop-down on the Kubeflow Dashboard.
+
+Check everything is up and running:
+
+```bash
+kubectl wait --for=condition=available-n ${PROFILE_NAME} deployment/model-registry-deployment --timeout=2m
+kubectl logs -n ${PROFILE_NAME} deployment/model-registry-deployment
+```
+
+Now, to install the Model Registry UI as a Kubeflow component, you need first to deploy the Model Registry UI:
+
+```bash
+kubectl apply -k options/ui/overlays/istio -n kubeflow
+```
+
+And then to make it accessible through Kubeflow Central Dashboard, you need to edit the `centraldashboard-config` ConfigMap to add the Model Registry UI link to the Central Dashboard by running the following command:
+
+```bash
+kubectl get configmap centraldashboard-config -n kubeflow -o json | jq '.data.links |= (fromjson | .menuLinks += [{"icon": "assignment", "link": "/model-registry/", "text": "Model Registry", "type": "item"}] | tojson)' | kubectl apply -f - -n kubeflow
+```
+
+Alternatively, you can edit the ConfigMap manually by running:
+
+```bash
+kubectl edit configmap -n kubeflow centraldashboard-config
+```
+
+```yaml
+apiVersion: v1
+data:
+ links: |-
+ {
+ "menuLinks": [
+ {
+ "icon": "assignment",
+ "link": "/model-registry/",
+ "text": "Model Registry",
+ "type": "item"
+ },
+ ...
+```
+
+Now you should be able to see the Model Registry UI in the Kubeflow Central Dashboard, and access to the Model Registry deployment in the profile namespace.
+
+### Uninstall
+
+To uninstall the Kubeflow Model Registry run:
+
+```bash
+# Uninstall Model Registry Instance
+PROFILE_NAME=
+for DIR in options/istio overlays/db ; do (cd $DIR; kustomize edit set namespace $PROFILE_NAME; kubectl delete -k .); done
+
+# Uninstall Model Registry UI
+kubectl delete -k options/ui/overlays/istio -n kubeflow
+```
+
+
+## Model Registry as a separate component Installation
+
+The following instructions will summarize how to deploy Model Registry as separate component in the context of a default Kubeflow >=1.9 installation.
```bash
kubectl apply -k overlays/db
@@ -39,11 +111,11 @@ curl -sX 'GET' \
-H 'accept: application/json' | jq
```
-## Usage
+### Usage
For a basic usage of the Kubeflow Model Registry, follow the [Kubeflow Model Registry getting started documentation](https://www.kubeflow.org/docs/components/model-registry/getting-started/)
-## Uninstall
+### Uninstall
To uninstall the Kubeflow Model Registry run:
@@ -53,4 +125,4 @@ kubectl delete -k options/istio
# Delete model registry db and deployment
kubectl delete -k overlays/db
-```
\ No newline at end of file
+```
diff --git a/charts/kubeflow/apps/model-registry/upstream/base/kustomization.yaml b/charts/kubeflow/apps/model-registry/upstream/base/kustomization.yaml
index bf9c072..afd7093 100644
--- a/charts/kubeflow/apps/model-registry/upstream/base/kustomization.yaml
+++ b/charts/kubeflow/apps/model-registry/upstream/base/kustomization.yaml
@@ -1,7 +1,11 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- - model-registry-configmap.yaml
- - model-registry-deployment.yaml
- - model-registry-service.yaml
- - model-registry-sa.yaml
+- model-registry-configmap.yaml
+- model-registry-deployment.yaml
+- model-registry-service.yaml
+- model-registry-sa.yaml
+images:
+- name: ghcr.io/kubeflow/model-registry/server
+ newName: ghcr.io/kubeflow/model-registry/server
+ newTag: v0.2.17
diff --git a/charts/kubeflow/apps/model-registry/upstream/base/model-registry-configmap.yaml b/charts/kubeflow/apps/model-registry/upstream/base/model-registry-configmap.yaml
index 8d88453..b8ff8ce 100644
--- a/charts/kubeflow/apps/model-registry/upstream/base/model-registry-configmap.yaml
+++ b/charts/kubeflow/apps/model-registry/upstream/base/model-registry-configmap.yaml
@@ -9,3 +9,4 @@ data:
MODEL_REGISTRY_REST_SERVICE_PORT: "8080"
MODEL_REGISTRY_GRPC_SERVICE_HOST: "model-registry-service"
MODEL_REGISTRY_GRPC_SERVICE_PORT: "9090"
+ MODEL_REGISTRY_DATA_STORE_TYPE: "mlmd"
diff --git a/charts/kubeflow/apps/model-registry/upstream/base/model-registry-deployment.yaml b/charts/kubeflow/apps/model-registry/upstream/base/model-registry-deployment.yaml
index 8a5bbfb..81382e2 100644
--- a/charts/kubeflow/apps/model-registry/upstream/base/model-registry-deployment.yaml
+++ b/charts/kubeflow/apps/model-registry/upstream/base/model-registry-deployment.yaml
@@ -11,11 +11,14 @@ spec:
component: model-registry-server
template:
metadata:
- annotations:
- sidecar.istio.io/inject: "true"
labels:
+ sidecar.istio.io/inject: "true"
component: model-registry-server
spec:
+ securityContext:
+ seccompProfile:
+ type: RuntimeDefault
+ runAsNonRoot: true
containers:
- name: rest-container
args:
@@ -23,10 +26,11 @@ spec:
- --port=8080
- --mlmd-hostname=localhost
- --mlmd-port=9090
+ - --datastore-type=mlmd
command:
- /model-registry
- proxy
- image: kubeflow/model-registry:latest
+ image: ghcr.io/kubeflow/model-registry/server:latest
# empty placeholder environment for patching
env: []
ports:
@@ -44,6 +48,11 @@ spec:
tcpSocket:
port: http-api
timeoutSeconds: 2
+ securityContext:
+ allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
- name: grpc-container
# ! Sync to the same MLMD version:
# * backend/metadata_writer/requirements.in and requirements.txt
@@ -102,4 +111,11 @@ spec:
initialDelaySeconds: 3
periodSeconds: 5
timeoutSeconds: 2
+ securityContext:
+ runAsUser: 65534
+ runAsGroup: 65534
+ allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
serviceAccountName: model-registry-server
diff --git a/charts/kubeflow/apps/model-registry/upstream/base/model-registry-service.yaml b/charts/kubeflow/apps/model-registry/upstream/base/model-registry-service.yaml
index 33a4215..c4251cf 100644
--- a/charts/kubeflow/apps/model-registry/upstream/base/model-registry-service.yaml
+++ b/charts/kubeflow/apps/model-registry/upstream/base/model-registry-service.yaml
@@ -2,7 +2,15 @@ kind: Service
apiVersion: v1
metadata:
labels:
- app: metadata
+ app: model-registry-service
+ app.kubernetes.io/component: model-registry
+ app.kubernetes.io/instance: model-registry-service
+ app.kubernetes.io/name: model-registry-service
+ app.kubernetes.io/part-of: model-registry
+ component: model-registry
+ annotations:
+ displayName: Kubeflow Model Registry
+ description: An example model registry
name: model-registry-service
spec:
selector:
diff --git a/charts/kubeflow/apps/model-registry/upstream/options/controller/default/kustomization.yaml b/charts/kubeflow/apps/model-registry/upstream/options/controller/default/kustomization.yaml
new file mode 100644
index 0000000..f7e627d
--- /dev/null
+++ b/charts/kubeflow/apps/model-registry/upstream/options/controller/default/kustomization.yaml
@@ -0,0 +1,177 @@
+# Adds namespace to all resources.
+namespace: kubeflow
+
+# Value of this field is prepended to the
+# names of all resources, e.g. a deployment named
+# "wordpress" becomes "alices-wordpress".
+# Note that it should also match with the prefix (text before '-') of the namespace
+# field above.
+namePrefix: controller-
+
+# Labels to add to all resources and selectors.
+#labels:
+#- includeSelectors: true
+# pairs:
+# someName: someValue
+
+resources:
+#- ../crd
+- ../rbac
+- ../manager
+# [WEBHOOK] To enable webhook, uncomment all the sections with [WEBHOOK] prefix including the one in
+# crd/kustomization.yaml
+#- ../webhook
+# [CERTMANAGER] To enable cert-manager, uncomment all sections with 'CERTMANAGER'. 'WEBHOOK' components are required.
+#- ../certmanager
+# [PROMETHEUS] To enable prometheus monitor, uncomment all sections with 'PROMETHEUS'.
+#- ../prometheus
+# [METRICS] Expose the controller manager metrics service.
+- metrics_service.yaml
+# [NETWORK POLICY] Protect the /metrics endpoint and Webhook Server with NetworkPolicy.
+# Only Pod(s) running a namespace labeled with 'metrics: enabled' will be able to gather the metrics.
+# Only CR(s) which requires webhooks and are applied on namespaces labeled with 'webhooks: enabled' will
+# be able to communicate with the Webhook Server.
+#- ../network-policy
+
+# Uncomment the patches line if you enable Metrics, and/or are using webhooks and cert-manager
+patches:
+# [METRICS] The following patch will enable the metrics endpoint using HTTPS and the port :8443.
+# More info: https://book.kubebuilder.io/reference/metrics
+- path: manager_metrics_patch.yaml
+ target:
+ kind: Deployment
+
+# [WEBHOOK] To enable webhook, uncomment all the sections with [WEBHOOK] prefix including the one in
+# crd/kustomization.yaml
+#- path: manager_webhook_patch.yaml
+
+# [CERTMANAGER] To enable cert-manager, uncomment all sections with 'CERTMANAGER' prefix.
+# Uncomment the following replacements to add the cert-manager CA injection annotations
+#replacements:
+# - source: # Uncomment the following block if you have any webhook
+# kind: Service
+# version: v1
+# name: webhook-service
+# fieldPath: .metadata.name # Name of the service
+# targets:
+# - select:
+# kind: Certificate
+# group: cert-manager.io
+# version: v1
+# fieldPaths:
+# - .spec.dnsNames.0
+# - .spec.dnsNames.1
+# options:
+# delimiter: '.'
+# index: 0
+# create: true
+# - source:
+# kind: Service
+# version: v1
+# name: webhook-service
+# fieldPath: .metadata.namespace # Namespace of the service
+# targets:
+# - select:
+# kind: Certificate
+# group: cert-manager.io
+# version: v1
+# fieldPaths:
+# - .spec.dnsNames.0
+# - .spec.dnsNames.1
+# options:
+# delimiter: '.'
+# index: 1
+# create: true
+#
+# - source: # Uncomment the following block if you have a ValidatingWebhook (--programmatic-validation)
+# kind: Certificate
+# group: cert-manager.io
+# version: v1
+# name: serving-cert # This name should match the one in certificate.yaml
+# fieldPath: .metadata.namespace # Namespace of the certificate CR
+# targets:
+# - select:
+# kind: ValidatingWebhookConfiguration
+# fieldPaths:
+# - .metadata.annotations.[cert-manager.io/inject-ca-from]
+# options:
+# delimiter: '/'
+# index: 0
+# create: true
+# - source:
+# kind: Certificate
+# group: cert-manager.io
+# version: v1
+# name: serving-cert # This name should match the one in certificate.yaml
+# fieldPath: .metadata.name
+# targets:
+# - select:
+# kind: ValidatingWebhookConfiguration
+# fieldPaths:
+# - .metadata.annotations.[cert-manager.io/inject-ca-from]
+# options:
+# delimiter: '/'
+# index: 1
+# create: true
+#
+# - source: # Uncomment the following block if you have a DefaultingWebhook (--defaulting )
+# kind: Certificate
+# group: cert-manager.io
+# version: v1
+# name: serving-cert # This name should match the one in certificate.yaml
+# fieldPath: .metadata.namespace # Namespace of the certificate CR
+# targets:
+# - select:
+# kind: MutatingWebhookConfiguration
+# fieldPaths:
+# - .metadata.annotations.[cert-manager.io/inject-ca-from]
+# options:
+# delimiter: '/'
+# index: 0
+# create: true
+# - source:
+# kind: Certificate
+# group: cert-manager.io
+# version: v1
+# name: serving-cert # This name should match the one in certificate.yaml
+# fieldPath: .metadata.name
+# targets:
+# - select:
+# kind: MutatingWebhookConfiguration
+# fieldPaths:
+# - .metadata.annotations.[cert-manager.io/inject-ca-from]
+# options:
+# delimiter: '/'
+# index: 1
+# create: true
+#
+# - source: # Uncomment the following block if you have a ConversionWebhook (--conversion)
+# kind: Certificate
+# group: cert-manager.io
+# version: v1
+# name: serving-cert # This name should match the one in certificate.yaml
+# fieldPath: .metadata.namespace # Namespace of the certificate CR
+# targets:
+# - select:
+# kind: CustomResourceDefinition
+# fieldPaths:
+# - .metadata.annotations.[cert-manager.io/inject-ca-from]
+# options:
+# delimiter: '/'
+# index: 0
+# create: true
+# - source:
+# kind: Certificate
+# group: cert-manager.io
+# version: v1
+# name: serving-cert # This name should match the one in certificate.yaml
+# fieldPath: .metadata.name
+# targets:
+# - select:
+# kind: CustomResourceDefinition
+# fieldPaths:
+# - .metadata.annotations.[cert-manager.io/inject-ca-from]
+# options:
+# delimiter: '/'
+# index: 1
+# create: true
diff --git a/charts/kubeflow/apps/model-registry/upstream/options/controller/default/manager_metrics_patch.yaml b/charts/kubeflow/apps/model-registry/upstream/options/controller/default/manager_metrics_patch.yaml
new file mode 100644
index 0000000..2aaef65
--- /dev/null
+++ b/charts/kubeflow/apps/model-registry/upstream/options/controller/default/manager_metrics_patch.yaml
@@ -0,0 +1,4 @@
+# This patch adds the args to allow exposing the metrics endpoint using HTTPS
+- op: add
+ path: /spec/template/spec/containers/0/args/0
+ value: --metrics-bind-address=:8443
diff --git a/charts/kubeflow/apps/model-registry/upstream/options/controller/default/metrics_service.yaml b/charts/kubeflow/apps/model-registry/upstream/options/controller/default/metrics_service.yaml
new file mode 100644
index 0000000..ae73482
--- /dev/null
+++ b/charts/kubeflow/apps/model-registry/upstream/options/controller/default/metrics_service.yaml
@@ -0,0 +1,17 @@
+apiVersion: v1
+kind: Service
+metadata:
+ labels:
+ control-plane: controller-manager
+ app.kubernetes.io/name: controller
+ app.kubernetes.io/managed-by: kustomize
+ name: controller-manager-metrics-service
+ namespace: system
+spec:
+ ports:
+ - name: https
+ port: 8443
+ protocol: TCP
+ targetPort: 8443
+ selector:
+ control-plane: controller-manager
diff --git a/charts/kubeflow/apps/model-registry/upstream/options/controller/manager/kustomization.yaml b/charts/kubeflow/apps/model-registry/upstream/options/controller/manager/kustomization.yaml
new file mode 100644
index 0000000..5c5f0b8
--- /dev/null
+++ b/charts/kubeflow/apps/model-registry/upstream/options/controller/manager/kustomization.yaml
@@ -0,0 +1,2 @@
+resources:
+- manager.yaml
diff --git a/charts/kubeflow/apps/model-registry/upstream/options/controller/manager/manager.yaml b/charts/kubeflow/apps/model-registry/upstream/options/controller/manager/manager.yaml
new file mode 100644
index 0000000..a630346
--- /dev/null
+++ b/charts/kubeflow/apps/model-registry/upstream/options/controller/manager/manager.yaml
@@ -0,0 +1,103 @@
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+ name: controller-manager
+ namespace: system
+ labels:
+ control-plane: controller-manager
+ app.kubernetes.io/name: controller
+ app.kubernetes.io/managed-by: kustomize
+spec:
+ selector:
+ matchLabels:
+ control-plane: controller-manager
+ replicas: 1
+ template:
+ metadata:
+ annotations:
+ kubectl.kubernetes.io/default-container: manager
+ labels:
+ control-plane: controller-manager
+ spec:
+ # TODO(user): Uncomment the following code to configure the nodeAffinity expression
+ # according to the platforms which are supported by your solution.
+ # It is considered best practice to support multiple architectures. You can
+ # build your manager image using the makefile target docker-buildx.
+ # affinity:
+ # nodeAffinity:
+ # requiredDuringSchedulingIgnoredDuringExecution:
+ # nodeSelectorTerms:
+ # - matchExpressions:
+ # - key: kubernetes.io/arch
+ # operator: In
+ # values:
+ # - amd64
+ # - arm64
+ # - ppc64le
+ # - s390x
+ # - key: kubernetes.io/os
+ # operator: In
+ # values:
+ # - linux
+ securityContext:
+ runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
+ containers:
+ - command:
+ - /manager
+ args:
+ - --leader-elect
+ - --health-probe-bind-address=:8081
+ image: ghcr.io/kubeflow/model-registry/controller:latest
+ name: manager
+ env:
+ - name: NAMESPACE_LABEL
+ value: ""
+ - name: NAME_LABEL
+ value: ""
+ - name: URL_ANNOTATION
+ value: ""
+ - name: INFERENCE_SERVICE_ID_LABEL
+ value: ""
+ - name: MODEL_VERSION_ID_LABEL
+ value: ""
+ - name: REGISTERED_MODEL_ID_LABEL
+ value: ""
+ - name: FINALIZER
+ value: ""
+ - name: SERVICE_ANNOTATION
+ value: ""
+ - name: REGISTRIES_NAMESPACE
+ value: ""
+ - name: SKIP_TLS_VERIFY
+ value: "false"
+ - name: INFERENCE_SERVICE_CONTROLLER
+ value: ""
+ securityContext:
+ allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - "ALL"
+ livenessProbe:
+ httpGet:
+ path: /healthz
+ port: 8081
+ initialDelaySeconds: 15
+ periodSeconds: 20
+ readinessProbe:
+ httpGet:
+ path: /readyz
+ port: 8081
+ initialDelaySeconds: 5
+ periodSeconds: 10
+ # TODO(user): Configure the resources accordingly based on the project requirements.
+ # More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ resources:
+ limits:
+ memory: 128Mi
+ requests:
+ cpu: 10m
+ memory: 64Mi
+ serviceAccountName: controller-manager
+ terminationGracePeriodSeconds: 10
diff --git a/charts/kubeflow/apps/model-registry/upstream/options/controller/network-policy/allow-metrics-traffic.yaml b/charts/kubeflow/apps/model-registry/upstream/options/controller/network-policy/allow-metrics-traffic.yaml
new file mode 100644
index 0000000..f6ddf95
--- /dev/null
+++ b/charts/kubeflow/apps/model-registry/upstream/options/controller/network-policy/allow-metrics-traffic.yaml
@@ -0,0 +1,26 @@
+# This NetworkPolicy allows ingress traffic
+# with Pods running on namespaces labeled with 'metrics: enabled'. Only Pods on those
+# namespaces are able to gathering data from the metrics endpoint.
+apiVersion: networking.k8s.io/v1
+kind: NetworkPolicy
+metadata:
+ labels:
+ app.kubernetes.io/name: controller
+ app.kubernetes.io/managed-by: kustomize
+ name: allow-metrics-traffic
+ namespace: system
+spec:
+ podSelector:
+ matchLabels:
+ control-plane: controller-manager
+ policyTypes:
+ - Ingress
+ ingress:
+ # This allows ingress traffic from any namespace with the label metrics: enabled
+ - from:
+ - namespaceSelector:
+ matchLabels:
+ metrics: enabled # Only from namespaces with this label
+ ports:
+ - port: 8443
+ protocol: TCP
diff --git a/charts/kubeflow/apps/model-registry/upstream/options/controller/network-policy/kustomization.yaml b/charts/kubeflow/apps/model-registry/upstream/options/controller/network-policy/kustomization.yaml
new file mode 100644
index 0000000..ec0fb5e
--- /dev/null
+++ b/charts/kubeflow/apps/model-registry/upstream/options/controller/network-policy/kustomization.yaml
@@ -0,0 +1,2 @@
+resources:
+- allow-metrics-traffic.yaml
diff --git a/charts/kubeflow/apps/model-registry/upstream/options/controller/overlays/base/kustomization.yaml b/charts/kubeflow/apps/model-registry/upstream/options/controller/overlays/base/kustomization.yaml
new file mode 100644
index 0000000..70569dd
--- /dev/null
+++ b/charts/kubeflow/apps/model-registry/upstream/options/controller/overlays/base/kustomization.yaml
@@ -0,0 +1,14 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+kind: Kustomization
+
+resources:
+- ../../default
+
+configMapGenerator:
+- envs:
+ - params.env
+ name: model-registry-controller-parameters
+generatorOptions:
+ disableNameSuffixHash: true
+replacements:
+- path: replacements.yaml
diff --git a/charts/kubeflow/apps/model-registry/upstream/options/controller/overlays/base/params.env b/charts/kubeflow/apps/model-registry/upstream/options/controller/overlays/base/params.env
new file mode 100644
index 0000000..eada06d
--- /dev/null
+++ b/charts/kubeflow/apps/model-registry/upstream/options/controller/overlays/base/params.env
@@ -0,0 +1,11 @@
+NAMESPACE_LABEL=modelregistry.kubeflow.org/namespace
+NAME_LABEL=modelregistry.kubeflow.org/name
+URL_ANNOTATION=modelregistry.kubeflow.org/url
+INFERENCE_SERVICE_ID_LABEL=modelregistry.kubeflow.org/inference-service-id
+MODEL_VERSION_ID_LABEL=modelregistry.kubeflow.org/model-version-id
+REGISTERED_MODEL_ID_LABEL=modelregistry.kubeflow.org/registered-model-id
+FINALIZER=modelregistry.kubeflow.org/finalizer
+SERVICE_ANNOTATION=routing.kubeflow.org/external-address-rest
+REGISTRIES_NAMESPACE=kubeflow
+SKIP_TLS_VERIFY=false
+INFERENCE_SERVICE_CONTROLLER=managed
diff --git a/charts/kubeflow/apps/model-registry/upstream/options/controller/overlays/base/replacements.yaml b/charts/kubeflow/apps/model-registry/upstream/options/controller/overlays/base/replacements.yaml
new file mode 100644
index 0000000..1f632ca
--- /dev/null
+++ b/charts/kubeflow/apps/model-registry/upstream/options/controller/overlays/base/replacements.yaml
@@ -0,0 +1,110 @@
+- source:
+ kind: ConfigMap
+ name: model-registry-controller-parameters
+ fieldPath: data.NAMESPACE_LABEL
+ targets:
+ - select:
+ kind: Deployment
+ name: controller-manager
+ fieldPaths:
+ - spec.template.spec.containers.[name=manager].env.[name=NAMESPACE_LABEL].value
+- source:
+ kind: ConfigMap
+ name: model-registry-controller-parameters
+ fieldPath: data.NAME_LABEL
+ targets:
+ - select:
+ kind: Deployment
+ name: controller-manager
+ fieldPaths:
+ - spec.template.spec.containers.[name=manager].env.[name=NAME_LABEL].value
+- source:
+ kind: ConfigMap
+ name: model-registry-controller-parameters
+ fieldPath: data.URL_ANNOTATION
+ targets:
+ - select:
+ kind: Deployment
+ name: controller-manager
+ fieldPaths:
+ - spec.template.spec.containers.[name=manager].env.[name=URL_ANNOTATION].value
+- source:
+ kind: ConfigMap
+ name: model-registry-controller-parameters
+ fieldPath: data.INFERENCE_SERVICE_ID_LABEL
+ targets:
+ - select:
+ kind: Deployment
+ name: controller-manager
+ fieldPaths:
+ - spec.template.spec.containers.[name=manager].env.[name=INFERENCE_SERVICE_ID_LABEL].value
+- source:
+ kind: ConfigMap
+ name: model-registry-controller-parameters
+ fieldPath: data.MODEL_VERSION_ID_LABEL
+ targets:
+ - select:
+ kind: Deployment
+ name: controller-manager
+ fieldPaths:
+ - spec.template.spec.containers.[name=manager].env.[name=MODEL_VERSION_ID_LABEL].value
+- source:
+ kind: ConfigMap
+ name: model-registry-controller-parameters
+ fieldPath: data.REGISTERED_MODEL_ID_LABEL
+ targets:
+ - select:
+ kind: Deployment
+ name: controller-manager
+ fieldPaths:
+ - spec.template.spec.containers.[name=manager].env.[name=REGISTERED_MODEL_ID_LABEL].value
+- source:
+ kind: ConfigMap
+ name: model-registry-controller-parameters
+ fieldPath: data.FINALIZER
+ targets:
+ - select:
+ kind: Deployment
+ name: controller-manager
+ fieldPaths:
+ - spec.template.spec.containers.[name=manager].env.[name=FINALIZER].value
+- source:
+ kind: ConfigMap
+ name: model-registry-controller-parameters
+ fieldPath: data.SERVICE_ANNOTATION
+ targets:
+ - select:
+ kind: Deployment
+ name: controller-manager
+ fieldPaths:
+ - spec.template.spec.containers.[name=manager].env.[name=SERVICE_ANNOTATION].value
+- source:
+ kind: ConfigMap
+ name: model-registry-controller-parameters
+ fieldPath: data.REGISTRIES_NAMESPACE
+ targets:
+ - select:
+ kind: Deployment
+ name: controller-manager
+ fieldPaths:
+ - spec.template.spec.containers.[name=manager].env.[name=REGISTRIES_NAMESPACE].value
+- source:
+ kind: ConfigMap
+ name: model-registry-controller-parameters
+ fieldPath: data.SKIP_TLS_VERIFY
+ targets:
+ - select:
+ kind: Deployment
+ name: controller-manager
+ fieldPaths:
+ - spec.template.spec.containers.[name=manager].env.[name=SKIP_TLS_VERIFY].value
+- source:
+ kind: ConfigMap
+ name: model-registry-controller-parameters
+ fieldPath: data.INFERENCE_SERVICE_CONTROLLER
+ targets:
+ - select:
+ kind: Deployment
+ name: controller-manager
+ fieldPaths:
+ - spec.template.spec.containers.[name=manager].env.[name=INFERENCE_SERVICE_CONTROLLER].value
diff --git a/charts/kubeflow/apps/model-registry/upstream/options/controller/prometheus/kustomization.yaml b/charts/kubeflow/apps/model-registry/upstream/options/controller/prometheus/kustomization.yaml
new file mode 100644
index 0000000..ed13716
--- /dev/null
+++ b/charts/kubeflow/apps/model-registry/upstream/options/controller/prometheus/kustomization.yaml
@@ -0,0 +1,2 @@
+resources:
+- monitor.yaml
diff --git a/charts/kubeflow/apps/model-registry/upstream/options/controller/prometheus/monitor.yaml b/charts/kubeflow/apps/model-registry/upstream/options/controller/prometheus/monitor.yaml
new file mode 100644
index 0000000..a9731e4
--- /dev/null
+++ b/charts/kubeflow/apps/model-registry/upstream/options/controller/prometheus/monitor.yaml
@@ -0,0 +1,30 @@
+# Prometheus Monitor Service (Metrics)
+apiVersion: monitoring.coreos.com/v1
+kind: ServiceMonitor
+metadata:
+ labels:
+ control-plane: controller-manager
+ app.kubernetes.io/name: controller
+ app.kubernetes.io/managed-by: kustomize
+ name: controller-manager-metrics-monitor
+ namespace: system
+spec:
+ endpoints:
+ - path: /metrics
+ port: https # Ensure this is the name of the port that exposes HTTPS metrics
+ scheme: https
+ bearerTokenFile: /var/run/secrets/kubernetes.io/serviceaccount/token
+ tlsConfig:
+ # TODO(user): The option insecureSkipVerify: true is not recommended for production since it disables
+ # certificate verification. This poses a significant security risk by making the system vulnerable to
+ # man-in-the-middle attacks, where an attacker could intercept and manipulate the communication between
+ # Prometheus and the monitored services. This could lead to unauthorized access to sensitive metrics data,
+ # compromising the integrity and confidentiality of the information.
+ # Please use the following options for secure configurations:
+ # caFile: /etc/metrics-certs/ca.crt
+ # certFile: /etc/metrics-certs/tls.crt
+ # keyFile: /etc/metrics-certs/tls.key
+ insecureSkipVerify: true
+ selector:
+ matchLabels:
+ control-plane: controller-manager
diff --git a/charts/kubeflow/apps/model-registry/upstream/options/controller/rbac/kustomization.yaml b/charts/kubeflow/apps/model-registry/upstream/options/controller/rbac/kustomization.yaml
new file mode 100644
index 0000000..5619aa0
--- /dev/null
+++ b/charts/kubeflow/apps/model-registry/upstream/options/controller/rbac/kustomization.yaml
@@ -0,0 +1,20 @@
+resources:
+# All RBAC will be applied under this service account in
+# the deployment namespace. You may comment out this resource
+# if your manager will use a service account that exists at
+# runtime. Be sure to update RoleBinding and ClusterRoleBinding
+# subjects if changing service account names.
+- service_account.yaml
+- role.yaml
+- role_binding.yaml
+- leader_election_role.yaml
+- leader_election_role_binding.yaml
+# The following RBAC configurations are used to protect
+# the metrics endpoint with authn/authz. These configurations
+# ensure that only authorized users and service accounts
+# can access the metrics endpoint. Comment the following
+# permissions if you want to disable this protection.
+# More info: https://book.kubebuilder.io/reference/metrics.html
+- metrics_auth_role.yaml
+- metrics_auth_role_binding.yaml
+- metrics_reader_role.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/metadata-writer/cluster-role.yaml b/charts/kubeflow/apps/model-registry/upstream/options/controller/rbac/leader_election_role.yaml
similarity index 56%
rename from charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/metadata-writer/cluster-role.yaml
rename to charts/kubeflow/apps/model-registry/upstream/options/controller/rbac/leader_election_role.yaml
index ca23056..445f027 100644
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/metadata-writer/cluster-role.yaml
+++ b/charts/kubeflow/apps/model-registry/upstream/options/controller/rbac/leader_election_role.yaml
@@ -1,45 +1,40 @@
+# permissions to do leader election.
apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
+kind: Role
metadata:
- name: kubeflow-pipelines-metadata-writer-role
+ labels:
+ app.kubernetes.io/name: controller
+ app.kubernetes.io/managed-by: kustomize
+ name: leader-election-role
rules:
-- apiGroups:
- - ""
- resources:
- - pods
- verbs:
- - get
- - list
- - watch
- - update
- - patch
- apiGroups:
- ""
resources:
- configmaps
verbs:
- get
-- apiGroups:
- - argoproj.io
- resources:
- - workflows
- verbs:
- - get
- list
- watch
- - update
- - patch
-- apiGroups:
- - tekton.dev
- resources:
- - pipelineruns
- - taskruns
- - conditions
- verbs:
- create
- - get
- - list
- - watch
- update
- patch
- delete
+- apiGroups:
+ - coordination.k8s.io
+ resources:
+ - leases
+ verbs:
+ - get
+ - list
+ - watch
+ - create
+ - update
+ - patch
+ - delete
+- apiGroups:
+ - ""
+ resources:
+ - events
+ verbs:
+ - create
+ - patch
diff --git a/charts/kubeflow/apps/model-registry/upstream/options/controller/rbac/leader_election_role_binding.yaml b/charts/kubeflow/apps/model-registry/upstream/options/controller/rbac/leader_election_role_binding.yaml
new file mode 100644
index 0000000..aed609d
--- /dev/null
+++ b/charts/kubeflow/apps/model-registry/upstream/options/controller/rbac/leader_election_role_binding.yaml
@@ -0,0 +1,15 @@
+apiVersion: rbac.authorization.k8s.io/v1
+kind: RoleBinding
+metadata:
+ labels:
+ app.kubernetes.io/name: controller
+ app.kubernetes.io/managed-by: kustomize
+ name: leader-election-rolebinding
+roleRef:
+ apiGroup: rbac.authorization.k8s.io
+ kind: Role
+ name: leader-election-role
+subjects:
+- kind: ServiceAccount
+ name: controller-manager
+ namespace: system
diff --git a/charts/kubeflow/apps/model-registry/upstream/options/controller/rbac/metrics_auth_role.yaml b/charts/kubeflow/apps/model-registry/upstream/options/controller/rbac/metrics_auth_role.yaml
new file mode 100644
index 0000000..32d2e4e
--- /dev/null
+++ b/charts/kubeflow/apps/model-registry/upstream/options/controller/rbac/metrics_auth_role.yaml
@@ -0,0 +1,17 @@
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
+metadata:
+ name: metrics-auth-role
+rules:
+- apiGroups:
+ - authentication.k8s.io
+ resources:
+ - tokenreviews
+ verbs:
+ - create
+- apiGroups:
+ - authorization.k8s.io
+ resources:
+ - subjectaccessreviews
+ verbs:
+ - create
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/api-service/cluster-role-binding.yaml b/charts/kubeflow/apps/model-registry/upstream/options/controller/rbac/metrics_auth_role_binding.yaml
similarity index 62%
rename from charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/api-service/cluster-role-binding.yaml
rename to charts/kubeflow/apps/model-registry/upstream/options/controller/rbac/metrics_auth_role_binding.yaml
index 0d9d185..e775d67 100644
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/api-service/cluster-role-binding.yaml
+++ b/charts/kubeflow/apps/model-registry/upstream/options/controller/rbac/metrics_auth_role_binding.yaml
@@ -1,11 +1,12 @@
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
- name: ml-pipeline
+ name: metrics-auth-rolebinding
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
- name: ml-pipeline
+ name: metrics-auth-role
subjects:
- kind: ServiceAccount
- name: ml-pipeline
+ name: controller-manager
+ namespace: system
diff --git a/charts/kubeflow/apps/model-registry/upstream/options/controller/rbac/metrics_reader_role.yaml b/charts/kubeflow/apps/model-registry/upstream/options/controller/rbac/metrics_reader_role.yaml
new file mode 100644
index 0000000..51a75db
--- /dev/null
+++ b/charts/kubeflow/apps/model-registry/upstream/options/controller/rbac/metrics_reader_role.yaml
@@ -0,0 +1,9 @@
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
+metadata:
+ name: metrics-reader
+rules:
+- nonResourceURLs:
+ - "/metrics"
+ verbs:
+ - get
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/metadata-writer/cluster-role.yaml b/charts/kubeflow/apps/model-registry/upstream/options/controller/rbac/role.yaml
similarity index 60%
rename from charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/metadata-writer/cluster-role.yaml
rename to charts/kubeflow/apps/model-registry/upstream/options/controller/rbac/role.yaml
index a6ec986..5481679 100644
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/metadata-writer/cluster-role.yaml
+++ b/charts/kubeflow/apps/model-registry/upstream/options/controller/rbac/role.yaml
@@ -1,31 +1,36 @@
+---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
- name: kubeflow-pipelines-metadata-writer-role
+ name: model-registry-manager-role
rules:
- apiGroups:
- ""
resources:
- - pods
+ - services
verbs:
- get
- list
- watch
- - update
- - patch
- apiGroups:
- - ""
+ - serving.kserve.io
resources:
- - configmaps
- verbs:
- - get
-- apiGroups:
- - argoproj.io
- resources:
- - workflows
+ - inferenceservices
verbs:
- get
- list
- - watch
- - update
- patch
+ - update
+ - watch
+- apiGroups:
+ - serving.kserve.io
+ resources:
+ - inferenceservices/finalizers
+ verbs:
+ - create
+ - delete
+ - get
+ - list
+ - patch
+ - update
+ - watch
diff --git a/charts/kubeflow/apps/model-registry/upstream/options/controller/rbac/role_binding.yaml b/charts/kubeflow/apps/model-registry/upstream/options/controller/rbac/role_binding.yaml
new file mode 100644
index 0000000..8f4443f
--- /dev/null
+++ b/charts/kubeflow/apps/model-registry/upstream/options/controller/rbac/role_binding.yaml
@@ -0,0 +1,15 @@
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRoleBinding
+metadata:
+ labels:
+ app.kubernetes.io/name: controller
+ app.kubernetes.io/managed-by: kustomize
+ name: model-registry-manager-rolebinding
+roleRef:
+ apiGroup: rbac.authorization.k8s.io
+ kind: ClusterRole
+ name: model-registry-manager-role
+subjects:
+- kind: ServiceAccount
+ name: controller-manager
+ namespace: system
diff --git a/charts/kubeflow/apps/model-registry/upstream/options/controller/rbac/service_account.yaml b/charts/kubeflow/apps/model-registry/upstream/options/controller/rbac/service_account.yaml
new file mode 100644
index 0000000..834b343
--- /dev/null
+++ b/charts/kubeflow/apps/model-registry/upstream/options/controller/rbac/service_account.yaml
@@ -0,0 +1,8 @@
+apiVersion: v1
+kind: ServiceAccount
+metadata:
+ labels:
+ app.kubernetes.io/name: controller
+ app.kubernetes.io/managed-by: kustomize
+ name: controller-manager
+ namespace: system
diff --git a/charts/kubeflow/apps/model-registry/upstream/options/csi/clusterstoragecontainer.yaml b/charts/kubeflow/apps/model-registry/upstream/options/csi/clusterstoragecontainer.yaml
new file mode 100644
index 0000000..aee0be3
--- /dev/null
+++ b/charts/kubeflow/apps/model-registry/upstream/options/csi/clusterstoragecontainer.yaml
@@ -0,0 +1,19 @@
+apiVersion: "serving.kserve.io/v1alpha1"
+kind: ClusterStorageContainer
+metadata:
+ name: model-registry-storage-initializer
+spec:
+ container:
+ name: storage-initializer
+ image: ghcr.io/kubeflow/model-registry/storage-initializer:latest
+ env:
+ - name: MODEL_REGISTRY_BASE_URL
+ value: "model-registry-service.kubeflow.svc.cluster.local:8080"
+ resources:
+ requests:
+ memory: 100Mi
+ cpu: 100m
+ limits:
+ memory: 1Gi
+ supportedUriFormats:
+ - prefix: model-registry://
diff --git a/charts/kubeflow/apps/model-registry/upstream/options/csi/kustomization.yaml b/charts/kubeflow/apps/model-registry/upstream/options/csi/kustomization.yaml
new file mode 100644
index 0000000..1774d12
--- /dev/null
+++ b/charts/kubeflow/apps/model-registry/upstream/options/csi/kustomization.yaml
@@ -0,0 +1,10 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+kind: Kustomization
+namespace: kubeflow
+
+resources:
+- clusterstoragecontainer.yaml
+images:
+- name: ghcr.io/kubeflow/model-registry/storage-initializer
+ newName: ghcr.io/kubeflow/model-registry/storage-initializer
+ newTag: v0.2.17
diff --git a/charts/kubeflow/apps/model-registry/upstream/options/ui/base/kustomization.yaml b/charts/kubeflow/apps/model-registry/upstream/options/ui/base/kustomization.yaml
new file mode 100644
index 0000000..1dd3925
--- /dev/null
+++ b/charts/kubeflow/apps/model-registry/upstream/options/ui/base/kustomization.yaml
@@ -0,0 +1,13 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+kind: Kustomization
+
+resources:
+- model-registry-ui-role.yaml
+- model-registry-ui-service.yaml
+- model-registry-ui-deployment.yaml
+- model-registry-ui-service-account.yaml
+
+images:
+- name: model-registry-ui
+ newName: ghcr.io/kubeflow/model-registry/ui
+ newTag: v0.2.17
diff --git a/charts/kubeflow/apps/model-registry/upstream/options/ui/base/model-registry-ui-deployment.yaml b/charts/kubeflow/apps/model-registry/upstream/options/ui/base/model-registry-ui-deployment.yaml
new file mode 100644
index 0000000..a1fde60
--- /dev/null
+++ b/charts/kubeflow/apps/model-registry/upstream/options/ui/base/model-registry-ui-deployment.yaml
@@ -0,0 +1,60 @@
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+ name: model-registry-ui
+ labels:
+ app: model-registry-ui
+spec:
+ replicas: 1
+ selector:
+ matchLabels:
+ app: model-registry-ui
+ template:
+ metadata:
+ labels:
+ app: model-registry-ui
+ spec:
+ serviceAccountName: model-registry-ui
+ securityContext:
+ seccompProfile:
+ type: RuntimeDefault
+ runAsNonRoot: true
+ containers:
+ - name: model-registry-ui
+ image: model-registry-ui
+ imagePullPolicy: Always
+ livenessProbe:
+ httpGet:
+ path: /healthcheck
+ port: 8080
+ scheme: HTTP
+ initialDelaySeconds: 30
+ timeoutSeconds: 15
+ periodSeconds: 30
+ successThreshold: 1
+ failureThreshold: 3
+ readinessProbe:
+ httpGet:
+ path: /healthcheck
+ port: 8080
+ scheme: HTTP
+ initialDelaySeconds: 15
+ timeoutSeconds: 15
+ periodSeconds: 30
+ successThreshold: 1
+ failureThreshold: 3
+ resources:
+ limits:
+ memory: 2Gi
+ requests:
+ cpu: 500m
+ memory: 2Gi
+ ports:
+ - containerPort: 8080
+ args:
+ - "--port=8080"
+ securityContext:
+ allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
diff --git a/charts/kubeflow/apps/model-registry/upstream/options/ui/base/model-registry-ui-role.yaml b/charts/kubeflow/apps/model-registry/upstream/options/ui/base/model-registry-ui-role.yaml
new file mode 100644
index 0000000..d1dfef4
--- /dev/null
+++ b/charts/kubeflow/apps/model-registry/upstream/options/ui/base/model-registry-ui-role.yaml
@@ -0,0 +1,76 @@
+---
+kind: ClusterRole
+apiVersion: rbac.authorization.k8s.io/v1
+metadata:
+ name: model-registry-ui-services-reader
+rules:
+- apiGroups:
+ - ''
+ resources:
+ - services
+ verbs:
+ - get
+ - list
+ - watch
+---
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRoleBinding
+metadata:
+ name: model-registry-ui-services-reader-binding
+subjects:
+- kind: ServiceAccount
+ name: model-registry-ui
+roleRef:
+ kind: ClusterRole
+ name: model-registry-ui-services-reader
+ apiGroup: rbac.authorization.k8s.io
+---
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
+metadata:
+ name: model-registry-retrieve-clusterrolebindings
+rules:
+- apiGroups:
+ - rbac.authorization.k8s.io
+ resources:
+ - clusterrolebindings
+ verbs:
+ - get
+ - list
+ - watch
+---
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRoleBinding
+metadata:
+ name: model-registry-retrieve-clusterrolebindings-binding
+roleRef:
+ apiGroup: rbac.authorization.k8s.io
+ kind: ClusterRole
+ name: model-registry-retrieve-clusterrolebindings
+subjects:
+- kind: ServiceAccount
+ name: model-registry-ui
+---
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
+metadata:
+ name: model-registry-create-sars
+rules:
+- apiGroups:
+ - authorization.k8s.io
+ resources:
+ - subjectaccessreviews
+ verbs:
+ - create
+---
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRoleBinding
+metadata:
+ name: model-registry-create-sars-binding
+roleRef:
+ apiGroup: rbac.authorization.k8s.io
+ kind: ClusterRole
+ name: model-registry-create-sars
+subjects:
+- kind: ServiceAccount
+ name: model-registry-ui
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-ui-sa.yaml b/charts/kubeflow/apps/model-registry/upstream/options/ui/base/model-registry-ui-service-account.yaml
similarity index 60%
rename from charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-ui-sa.yaml
rename to charts/kubeflow/apps/model-registry/upstream/options/ui/base/model-registry-ui-service-account.yaml
index 06bc445..a35ae35 100644
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/pipeline/ml-pipeline-ui-sa.yaml
+++ b/charts/kubeflow/apps/model-registry/upstream/options/ui/base/model-registry-ui-service-account.yaml
@@ -1,4 +1,5 @@
-apiVersion: v1
+---
kind: ServiceAccount
+apiVersion: v1
metadata:
- name: ml-pipeline-ui
\ No newline at end of file
+ name: model-registry-ui
diff --git a/charts/kubeflow/apps/model-registry/upstream/options/ui/base/model-registry-ui-service.yaml b/charts/kubeflow/apps/model-registry/upstream/options/ui/base/model-registry-ui-service.yaml
new file mode 100644
index 0000000..c907d59
--- /dev/null
+++ b/charts/kubeflow/apps/model-registry/upstream/options/ui/base/model-registry-ui-service.yaml
@@ -0,0 +1,16 @@
+apiVersion: v1
+kind: Service
+metadata:
+ name: model-registry-ui-service
+ labels:
+ app: model-registry-ui
+ run: model-registry-ui
+spec:
+ selector:
+ app: model-registry-ui
+ ports:
+ - name: http
+ port: 8080
+ protocol: TCP
+ targetPort: 8080
+ type: ClusterIP
diff --git a/charts/kubeflow/apps/model-registry/upstream/options/ui/overlays/integrated/kustomization.yaml b/charts/kubeflow/apps/model-registry/upstream/options/ui/overlays/integrated/kustomization.yaml
new file mode 100644
index 0000000..95429ed
--- /dev/null
+++ b/charts/kubeflow/apps/model-registry/upstream/options/ui/overlays/integrated/kustomization.yaml
@@ -0,0 +1,13 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+kind: Kustomization
+
+resources:
+ - ../../base
+
+patches:
+ - path: model-registry-ui-deployment.yaml
+ target:
+ group: apps
+ version: v1
+ kind: Deployment
+ name: model-registry-ui
diff --git a/charts/kubeflow/apps/model-registry/upstream/options/ui/overlays/integrated/model-registry-ui-deployment.yaml b/charts/kubeflow/apps/model-registry/upstream/options/ui/overlays/integrated/model-registry-ui-deployment.yaml
new file mode 100644
index 0000000..cb2fc68
--- /dev/null
+++ b/charts/kubeflow/apps/model-registry/upstream/options/ui/overlays/integrated/model-registry-ui-deployment.yaml
@@ -0,0 +1,5 @@
+- op: add
+ path: /spec/template/spec/containers/0/args
+ value:
+ - "--standalone-mode=false"
+ - "--port=8080"
diff --git a/charts/kubeflow/apps/model-registry/upstream/options/ui/overlays/istio/authorization-policy-ui.yaml b/charts/kubeflow/apps/model-registry/upstream/options/ui/overlays/istio/authorization-policy-ui.yaml
new file mode 100644
index 0000000..60dd145
--- /dev/null
+++ b/charts/kubeflow/apps/model-registry/upstream/options/ui/overlays/istio/authorization-policy-ui.yaml
@@ -0,0 +1,16 @@
+apiVersion: security.istio.io/v1beta1
+kind: AuthorizationPolicy
+metadata:
+ name: model-registry-ui
+ labels:
+ app: model-registry-ui
+spec:
+ action: ALLOW
+ rules:
+ - from:
+ - source:
+ principals:
+ - cluster.local/ns/istio-system/sa/istio-ingressgateway-service-account
+ selector:
+ matchLabels:
+ app: model-registry-ui
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/options/istio/destination-rule.yaml b/charts/kubeflow/apps/model-registry/upstream/options/ui/overlays/istio/destination-rule-ui.yaml
similarity index 51%
rename from charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/options/istio/destination-rule.yaml
rename to charts/kubeflow/apps/model-registry/upstream/options/ui/overlays/istio/destination-rule-ui.yaml
index e2ce8ca..330366f 100644
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/metadata/options/istio/destination-rule.yaml
+++ b/charts/kubeflow/apps/model-registry/upstream/options/ui/overlays/istio/destination-rule-ui.yaml
@@ -1,9 +1,11 @@
apiVersion: networking.istio.io/v1alpha3
kind: DestinationRule
metadata:
- name: metadata-grpc-service
+ name: model-registry-ui
+ labels:
+ app: model-registry-ui
spec:
- host: metadata-grpc-service.kubeflow.svc.cluster.local
+ host: model-registry-ui-service.kubeflow.svc.cluster.local
trafficPolicy:
tls:
mode: ISTIO_MUTUAL
diff --git a/charts/kubeflow/apps/model-registry/upstream/options/ui/overlays/istio/kustomization.yaml b/charts/kubeflow/apps/model-registry/upstream/options/ui/overlays/istio/kustomization.yaml
new file mode 100644
index 0000000..c0f6f8f
--- /dev/null
+++ b/charts/kubeflow/apps/model-registry/upstream/options/ui/overlays/istio/kustomization.yaml
@@ -0,0 +1,17 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+kind: Kustomization
+
+resources:
+- ../integrated
+- virtual-service.yaml
+- destination-rule-ui.yaml
+- authorization-policy-ui.yaml
+
+patches:
+ - path: model-registry-ui-service.yaml
+ target:
+ version: v1
+ kind: Service
+ name: model-registry-ui-service
+
+namespace: kubeflow
\ No newline at end of file
diff --git a/charts/kubeflow/apps/model-registry/upstream/options/ui/overlays/istio/model-registry-ui-service.yaml b/charts/kubeflow/apps/model-registry/upstream/options/ui/overlays/istio/model-registry-ui-service.yaml
new file mode 100644
index 0000000..9bcead7
--- /dev/null
+++ b/charts/kubeflow/apps/model-registry/upstream/options/ui/overlays/istio/model-registry-ui-service.yaml
@@ -0,0 +1,3 @@
+- op: replace
+ path: /spec/ports/0/port
+ value: 80
diff --git a/charts/kubeflow/apps/model-registry/upstream/options/ui/overlays/istio/virtual-service.yaml b/charts/kubeflow/apps/model-registry/upstream/options/ui/overlays/istio/virtual-service.yaml
new file mode 100644
index 0000000..1091600
--- /dev/null
+++ b/charts/kubeflow/apps/model-registry/upstream/options/ui/overlays/istio/virtual-service.yaml
@@ -0,0 +1,26 @@
+apiVersion: networking.istio.io/v1alpha3
+kind: VirtualService
+metadata:
+ name: model-registry-ui
+ labels:
+ app: model-registry-ui
+spec:
+ gateways:
+ - kubeflow-gateway
+ hosts:
+ - '*'
+ http:
+ - headers:
+ request:
+ add:
+ x-forwarded-prefix: /model-registry
+ match:
+ - uri:
+ prefix: /model-registry/
+ rewrite:
+ uri: /
+ route:
+ - destination:
+ host: model-registry-ui-service.kubeflow.svc.cluster.local
+ port:
+ number: 80
diff --git a/charts/kubeflow/apps/model-registry/upstream/options/ui/overlays/standalone/kubeflow-dashboard-rbac.yaml b/charts/kubeflow/apps/model-registry/upstream/options/ui/overlays/standalone/kubeflow-dashboard-rbac.yaml
new file mode 100644
index 0000000..9bfca02
--- /dev/null
+++ b/charts/kubeflow/apps/model-registry/upstream/options/ui/overlays/standalone/kubeflow-dashboard-rbac.yaml
@@ -0,0 +1,39 @@
+---
+kind: ClusterRole
+apiVersion: rbac.authorization.k8s.io/v1
+metadata:
+ name: model-registry-ui-namespaces-reader
+rules:
+- apiGroups:
+ - ''
+ resources:
+ - namespaces
+ verbs:
+ - get
+ - list
+ - watch
+---
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRoleBinding
+metadata:
+ name: model-registry-ui-namespaces-reader-binding
+subjects:
+- kind: ServiceAccount
+ name: model-registry-ui
+roleRef:
+ kind: ClusterRole
+ name: model-registry-ui-namespaces-reader
+ apiGroup: rbac.authorization.k8s.io
+---
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRoleBinding
+metadata:
+ name: service-access-cluster-binding
+subjects:
+ - kind: User
+ name: user@example.com
+ apiGroup: rbac.authorization.k8s.io
+roleRef:
+ kind: ClusterRole
+ name: cluster-admin
+ apiGroup: rbac.authorization.k8s.io
diff --git a/charts/kubeflow/apps/model-registry/upstream/options/ui/overlays/standalone/kustomization.yaml b/charts/kubeflow/apps/model-registry/upstream/options/ui/overlays/standalone/kustomization.yaml
new file mode 100644
index 0000000..c32312d
--- /dev/null
+++ b/charts/kubeflow/apps/model-registry/upstream/options/ui/overlays/standalone/kustomization.yaml
@@ -0,0 +1,14 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+kind: Kustomization
+
+resources:
+- ../../base
+- kubeflow-dashboard-rbac.yaml
+
+patches:
+- path: model-registry-ui-deployment.yaml
+ target:
+ group: apps
+ kind: Deployment
+ name: model-registry-ui
+ version: v1
diff --git a/charts/kubeflow/apps/model-registry/upstream/options/ui/overlays/standalone/model-registry-ui-deployment.yaml b/charts/kubeflow/apps/model-registry/upstream/options/ui/overlays/standalone/model-registry-ui-deployment.yaml
new file mode 100644
index 0000000..0d41529
--- /dev/null
+++ b/charts/kubeflow/apps/model-registry/upstream/options/ui/overlays/standalone/model-registry-ui-deployment.yaml
@@ -0,0 +1,5 @@
+- op: add
+ path: /spec/template/spec/containers/0/args
+ value:
+ - "--standalone-mode=true"
+ - "--port=8080"
diff --git a/charts/kubeflow/apps/model-registry/upstream/overlays/db/kustomization.yaml b/charts/kubeflow/apps/model-registry/upstream/overlays/db/kustomization.yaml
index 947c7a9..cf53e41 100644
--- a/charts/kubeflow/apps/model-registry/upstream/overlays/db/kustomization.yaml
+++ b/charts/kubeflow/apps/model-registry/upstream/overlays/db/kustomization.yaml
@@ -26,7 +26,7 @@ generatorOptions:
images:
- name: mysql
newName: mysql
- newTag: 8.0.3
+ newTag: 8.0.39
vars:
- fieldref:
diff --git a/charts/kubeflow/apps/model-registry/upstream/overlays/db/model-registry-db-deployment.yaml b/charts/kubeflow/apps/model-registry/upstream/overlays/db/model-registry-db-deployment.yaml
index 7f1477a..f19ce5f 100644
--- a/charts/kubeflow/apps/model-registry/upstream/overlays/db/model-registry-db-deployment.yaml
+++ b/charts/kubeflow/apps/model-registry/upstream/overlays/db/model-registry-db-deployment.yaml
@@ -16,12 +16,15 @@ spec:
name: db
labels:
component: db
- annotations:
sidecar.istio.io/inject: "false"
spec:
+ securityContext:
+ seccompProfile:
+ type: RuntimeDefault
+ runAsNonRoot: true
containers:
- name: db-container
- image: mysql:8.0.3
+ image: mysql:8.3.0
args:
- --datadir
- /var/lib/mysql/datadir
@@ -46,6 +49,13 @@ spec:
volumeMounts:
- name: metadata-mysql
mountPath: /var/lib/mysql
+ securityContext:
+ runAsUser: 999
+ runAsGroup: 999
+ allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
volumes:
- name: metadata-mysql
persistentVolumeClaim:
diff --git a/charts/kubeflow/apps/model-registry/upstream/overlays/db/patches/model-registry-deployment.yaml b/charts/kubeflow/apps/model-registry/upstream/overlays/db/patches/model-registry-deployment.yaml
index e9a8e0c..b6eca64 100644
--- a/charts/kubeflow/apps/model-registry/upstream/overlays/db/patches/model-registry-deployment.yaml
+++ b/charts/kubeflow/apps/model-registry/upstream/overlays/db/patches/model-registry-deployment.yaml
@@ -22,6 +22,7 @@ spec:
- --port=$(MODEL_REGISTRY_REST_SERVICE_PORT)
- --mlmd-hostname=localhost
- --mlmd-port=$(MODEL_REGISTRY_GRPC_SERVICE_PORT)
+ - --datastore-type=$(MODEL_REGISTRY_DATA_STORE_TYPE)
- name: grpc-container
# Remove existing environment variables
env:
diff --git a/charts/kubeflow/apps/model-registry/upstream/overlays/postgres/kustomization.yaml b/charts/kubeflow/apps/model-registry/upstream/overlays/postgres/kustomization.yaml
index e52acd8..6a3822d 100644
--- a/charts/kubeflow/apps/model-registry/upstream/overlays/postgres/kustomization.yaml
+++ b/charts/kubeflow/apps/model-registry/upstream/overlays/postgres/kustomization.yaml
@@ -13,11 +13,11 @@ patchesStrategicMerge:
- patches/model-registry-deployment.yaml
configMapGenerator:
-- name: metadata-postgres-db-parameters
+- name: metadata-registry-db-parameters
envs:
- params.env
secretGenerator:
-- name: metadata-postgres-db-secrets
+- name: metadata-registry-db-secrets
envs:
- secrets.env
generatorOptions:
@@ -39,7 +39,7 @@ vars:
- name: POSTGRES_PORT
objref:
kind: ConfigMap
- name: model-registry-db-parameters
+ name: metadata-registry-db-parameters
apiVersion: v1
fieldref:
fieldpath: data.POSTGRES_PORT
diff --git a/charts/kubeflow/apps/model-registry/upstream/overlays/postgres/model-registry-db-deployment.yaml b/charts/kubeflow/apps/model-registry/upstream/overlays/postgres/model-registry-db-deployment.yaml
index 061d109..7128631 100644
--- a/charts/kubeflow/apps/model-registry/upstream/overlays/postgres/model-registry-db-deployment.yaml
+++ b/charts/kubeflow/apps/model-registry/upstream/overlays/postgres/model-registry-db-deployment.yaml
@@ -16,9 +16,12 @@ spec:
name: db
labels:
component: db
- annotations:
sidecar.istio.io/inject: "false"
spec:
+ securityContext:
+ seccompProfile:
+ type: RuntimeDefault
+ runAsNonRoot: true
containers:
- name: db-container
image: postgres
@@ -27,17 +30,23 @@ spec:
value: /var/lib/postgresql/data/pgdata
envFrom:
- configMapRef:
- name: metadata-postgres-db-parameters
+ name: metadata-registry-db-parameters
- secretRef:
- name: metadata-postgres-db-secrets
+ name: metadata-registry-db-secrets
ports:
- name: postgres
containerPort: 5432
volumeMounts:
- name: metadata-postgres
mountPath: /var/lib/postgresql/data
+ securityContext:
+ runAsUser: 70
+ runAsGroup: 70
+ allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
volumes:
- name: metadata-postgres
persistentVolumeClaim:
claimName: metadata-postgres
-
diff --git a/charts/kubeflow/apps/model-registry/upstream/overlays/postgres/patches/model-registry-deployment.yaml b/charts/kubeflow/apps/model-registry/upstream/overlays/postgres/patches/model-registry-deployment.yaml
index 0f8fdbd..9844fea 100644
--- a/charts/kubeflow/apps/model-registry/upstream/overlays/postgres/patches/model-registry-deployment.yaml
+++ b/charts/kubeflow/apps/model-registry/upstream/overlays/postgres/patches/model-registry-deployment.yaml
@@ -16,9 +16,9 @@ spec:
- $patch: replace
envFrom:
- configMapRef:
- name: metadata-postgres-db-parameters
+ name: metadata-registry-db-parameters
- secretRef:
- name: metadata-postgres-db-secrets
+ name: metadata-registry-db-secrets
- configMapRef:
name: model-registry-configmap
args: ["--grpc_port=$(MODEL_REGISTRY_GRPC_SERVICE_PORT)",
diff --git a/charts/kubeflow/apps/pipeline/upstream/README.md b/charts/kubeflow/apps/pipeline/upstream/README.md
index c7e4466..d0b7bfd 100644
--- a/charts/kubeflow/apps/pipeline/upstream/README.md
+++ b/charts/kubeflow/apps/pipeline/upstream/README.md
@@ -18,9 +18,9 @@ Install:
```bash
KFP_ENV=platform-agnostic
-kubectl apply -k cluster-scoped-resources/
+kustomize build cluster-scoped-resources/ | kubectl apply -f -
kubectl wait crd/applications.app.k8s.io --for condition=established --timeout=60s
-kubectl apply -k "env/${KFP_ENV}/"
+kustomize build "env/${KFP_ENV}/" | kubectl apply -f -
kubectl wait pods -l application-crd-id=kubeflow-pipelines -n kubeflow --for condition=Ready --timeout=1800s
kubectl port-forward -n kubeflow svc/ml-pipeline-ui 8080:80
```
diff --git a/charts/kubeflow/apps/pipeline/upstream/base/application/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/base/application/kustomization.yaml
index 977dcfe..1f43d0d 100644
--- a/charts/kubeflow/apps/pipeline/upstream/base/application/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/base/application/kustomization.yaml
@@ -1,4 +1,4 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- - application.yaml
+- application.yaml
diff --git a/charts/kubeflow/apps/pipeline/upstream/base/cache-deployer/cache-deployer-deployment.yaml b/charts/kubeflow/apps/pipeline/upstream/base/cache-deployer/cache-deployer-deployment.yaml
index d4c3ae3..98b4e37 100644
--- a/charts/kubeflow/apps/pipeline/upstream/base/cache-deployer/cache-deployer-deployment.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/base/cache-deployer/cache-deployer-deployment.yaml
@@ -18,7 +18,7 @@ spec:
spec:
containers:
- name: main
- image: gcr.io/ml-pipeline/cache-deployer:dummy
+ image: ghcr.io/kubeflow/kfp-cache-deployer:dummy
imagePullPolicy: Always
env:
- name: NAMESPACE_TO_WATCH
diff --git a/charts/kubeflow/apps/pipeline/upstream/base/cache-deployer/cluster-scoped/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/base/cache-deployer/cluster-scoped/kustomization.yaml
index 2b941ae..8dc0ca8 100644
--- a/charts/kubeflow/apps/pipeline/upstream/base/cache-deployer/cluster-scoped/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/base/cache-deployer/cluster-scoped/kustomization.yaml
@@ -1,11 +1,11 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
+
resources:
- - cache-deployer-clusterrole.yaml
- - cache-deployer-clusterrolebinding.yaml
- # HACK: although a service account(SA) is not a cluster-scoped resource.
- # Presence of a SA referred by a clusterrolebinding allows kustomize to auto-add
- # namespace for the clusterrolebinding's SA ref.
- - cache-deployer-sa.yaml
-
\ No newline at end of file
+- cache-deployer-clusterrole.yaml
+- cache-deployer-clusterrolebinding.yaml
+# HACK: although a service account(SA) is not a cluster-scoped resource.
+# Presence of a SA referred by a clusterrolebinding allows kustomize to auto-add
+# namespace for the clusterrolebinding's SA ref.
+- cache-deployer-sa.yaml
diff --git a/charts/kubeflow/apps/pipeline/upstream/base/cache-deployer/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/base/cache-deployer/kustomization.yaml
index 2ef6f11..ca9e0e0 100644
--- a/charts/kubeflow/apps/pipeline/upstream/base/cache-deployer/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/base/cache-deployer/kustomization.yaml
@@ -4,8 +4,10 @@ resources:
- cache-deployer-role.yaml
- cache-deployer-rolebinding.yaml
- cache-deployer-deployment.yaml
-commonLabels:
- app: cache-deployer
images:
- - name: gcr.io/ml-pipeline/cache-deployer
- newTag: 2.2.0
+ - name: ghcr.io/kubeflow/kfp-cache-deployer
+ newTag: 2.5.0
+labels:
+ - includeSelectors: true
+ pairs:
+ app: cache-deployer
diff --git a/charts/kubeflow/apps/pipeline/upstream/base/cache/cache-deployment.yaml b/charts/kubeflow/apps/pipeline/upstream/base/cache/cache-deployment.yaml
index ba7136e..7959209 100644
--- a/charts/kubeflow/apps/pipeline/upstream/base/cache/cache-deployment.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/base/cache/cache-deployment.yaml
@@ -14,9 +14,20 @@ spec:
labels:
app: cache-server
spec:
+ securityContext:
+ seccompProfile:
+ type: RuntimeDefault
containers:
- name: server
- image: gcr.io/ml-pipeline/cache-server:dummy
+ securityContext:
+ allowPrivilegeEscalation: false
+ runAsNonRoot: true
+ runAsUser: 1000
+ runAsGroup: 0
+ capabilities:
+ drop:
+ - ALL
+ image: ghcr.io/kubeflow/kfp-cache-server:dummy
env:
- name: DEFAULT_CACHE_STALENESS
valueFrom:
diff --git a/charts/kubeflow/apps/pipeline/upstream/base/cache/cache-role.yaml b/charts/kubeflow/apps/pipeline/upstream/base/cache/cache-role.yaml
index 7c6a45a..de613b4 100644
--- a/charts/kubeflow/apps/pipeline/upstream/base/cache/cache-role.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/base/cache/cache-role.yaml
@@ -31,20 +31,3 @@ rules:
- watch
- update
- patch
-- apiGroups:
- - tekton.dev
- resources:
- - pipelineruns
- - customruns
- - taskruns
- - conditions
- - runs
- - tasks
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
diff --git a/charts/kubeflow/apps/pipeline/upstream/base/cache/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/base/cache/kustomization.yaml
index 8900409..ebcb743 100644
--- a/charts/kubeflow/apps/pipeline/upstream/base/cache/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/base/cache/kustomization.yaml
@@ -6,8 +6,10 @@ resources:
- cache-rolebinding.yaml
- cache-sa.yaml
- cache-service.yaml
-commonLabels:
- app: cache-server
images:
- - name: gcr.io/ml-pipeline/cache-server
- newTag: 2.2.0
+ - name: ghcr.io/kubeflow/kfp-cache-server
+ newTag: 2.5.0
+labels:
+ - includeSelectors: true
+ pairs:
+ app: cache-server
diff --git a/charts/kubeflow/apps/pipeline/upstream/base/crds/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/base/crds/kustomization.yaml
new file mode 100644
index 0000000..9268a75
--- /dev/null
+++ b/charts/kubeflow/apps/pipeline/upstream/base/crds/kustomization.yaml
@@ -0,0 +1,5 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+kind: Kustomization
+resources:
+- pipelines.kubeflow.org_pipelines.yaml
+- pipelines.kubeflow.org_pipelineversions.yaml
diff --git a/charts/kubeflow/apps/pipeline/upstream/base/crds/pipelines.kubeflow.org_pipelines.yaml b/charts/kubeflow/apps/pipeline/upstream/base/crds/pipelines.kubeflow.org_pipelines.yaml
new file mode 100644
index 0000000..c9681d3
--- /dev/null
+++ b/charts/kubeflow/apps/pipeline/upstream/base/crds/pipelines.kubeflow.org_pipelines.yaml
@@ -0,0 +1,49 @@
+---
+apiVersion: apiextensions.k8s.io/v1
+kind: CustomResourceDefinition
+metadata:
+ annotations:
+ controller-gen.kubebuilder.io/version: v0.16.4
+ name: pipelines.pipelines.kubeflow.org
+spec:
+ group: pipelines.kubeflow.org
+ names:
+ kind: Pipeline
+ listKind: PipelineList
+ plural: pipelines
+ singular: pipeline
+ scope: Namespaced
+ versions:
+ - name: v2beta1
+ schema:
+ openAPIV3Schema:
+ description: Pipeline is the Schema for the pipelines API.
+ properties:
+ apiVersion:
+ description: |-
+ APIVersion defines the versioned schema of this representation of an object.
+ Servers should convert recognized schemas to the latest internal value, and
+ may reject unrecognized values.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
+ type: string
+ kind:
+ description: |-
+ Kind is a string value representing the REST resource this object represents.
+ Servers may infer this from the endpoint the client submits requests to.
+ Cannot be updated.
+ In CamelCase.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
+ type: string
+ metadata:
+ type: object
+ spec:
+ description: PipelineSpec defines the desired state of Pipeline.
+ properties:
+ description:
+ type: string
+ type: object
+ type: object
+ served: true
+ storage: true
+ subresources:
+ status: {}
diff --git a/charts/kubeflow/apps/pipeline/upstream/base/crds/pipelines.kubeflow.org_pipelineversions.yaml b/charts/kubeflow/apps/pipeline/upstream/base/crds/pipelines.kubeflow.org_pipelineversions.yaml
new file mode 100644
index 0000000..34d9237
--- /dev/null
+++ b/charts/kubeflow/apps/pipeline/upstream/base/crds/pipelines.kubeflow.org_pipelineversions.yaml
@@ -0,0 +1,89 @@
+---
+apiVersion: apiextensions.k8s.io/v1
+kind: CustomResourceDefinition
+metadata:
+ annotations:
+ controller-gen.kubebuilder.io/version: v0.16.4
+ name: pipelineversions.pipelines.kubeflow.org
+spec:
+ group: pipelines.kubeflow.org
+ names:
+ kind: PipelineVersion
+ listKind: PipelineVersionList
+ plural: pipelineversions
+ singular: pipelineversion
+ scope: Namespaced
+ versions:
+ - name: v2beta1
+ schema:
+ openAPIV3Schema:
+ description: PipelineVersion is the Schema for the pipelineversions API.
+ properties:
+ apiVersion:
+ description: |-
+ APIVersion defines the versioned schema of this representation of an object.
+ Servers should convert recognized schemas to the latest internal value, and
+ may reject unrecognized values.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
+ type: string
+ kind:
+ description: |-
+ Kind is a string value representing the REST resource this object represents.
+ Servers may infer this from the endpoint the client submits requests to.
+ Cannot be updated.
+ In CamelCase.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
+ type: string
+ metadata:
+ type: object
+ spec:
+ description: PipelineVersionSpec defines the desired state of PipelineVersion.
+ properties:
+ codeSourceURL:
+ type: string
+ description:
+ type: string
+ pipelineName:
+ type: string
+ pipelineSpec:
+ x-kubernetes-preserve-unknown-fields: true
+ required:
+ - pipelineSpec
+ type: object
+ status:
+ description: PipelineVersionStatus defines the observed state of PipelineVersion.
+ properties:
+ conditions:
+ items:
+ description: |-
+ SimplifiedCondition is a metav1.Condition without lastTransitionTime since the database model doesn't have such
+ a concept and it allows a default status in the CRD without a controller setting it.
+ properties:
+ message:
+ maxLength: 32768
+ type: string
+ reason:
+ type: string
+ status:
+ enum:
+ - "True"
+ - "False"
+ - Unknown
+ type: string
+ type:
+ maxLength: 316
+ pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
+ type: string
+ required:
+ - message
+ - reason
+ - status
+ - type
+ type: object
+ type: array
+ type: object
+ type: object
+ served: true
+ storage: true
+ subresources:
+ status: {}
diff --git a/charts/kubeflow/apps/pipeline/upstream/base/installs/generic/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/base/installs/generic/kustomization.yaml
index 527a315..5b4c6d4 100644
--- a/charts/kubeflow/apps/pipeline/upstream/base/installs/generic/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/base/installs/generic/kustomization.yaml
@@ -2,46 +2,46 @@ apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
namespace: kubeflow
resources:
- - ../../pipeline
- - ../../cache
- - ../../cache-deployer
- - pipeline-install-config.yaml
- - mysql-secret.yaml
+- ../../pipeline
+- ../../cache
+- ../../cache-deployer
+- pipeline-install-config.yaml
+- mysql-secret.yaml
vars:
- - name: kfp-namespace
- objref:
- kind: Deployment
- apiVersion: apps/v1
- name: ml-pipeline
- fieldref:
- fieldpath: metadata.namespace
- - name: kfp-app-name
- objref:
- kind: ConfigMap
- name: pipeline-install-config
- apiVersion: v1
- fieldref:
- fieldpath: data.appName
- - name: kfp-app-version
- objref:
- kind: ConfigMap
- name: pipeline-install-config
- apiVersion: v1
- fieldref:
- fieldpath: data.appVersion
- - name: kfp-artifact-bucket-name
- objref:
- kind: ConfigMap
- name: pipeline-install-config
- apiVersion: v1
- fieldref:
- fieldpath: data.bucketName
- - name: kfp-default-pipeline-root
- objref:
- kind: ConfigMap
- name: pipeline-install-config
- apiVersion: v1
- fieldref:
- fieldpath: data.defaultPipelineRoot
+- fieldref:
+ fieldPath: metadata.namespace
+ name: kfp-namespace
+ objref:
+ apiVersion: apps/v1
+ kind: Deployment
+ name: ml-pipeline
+- fieldref:
+ fieldPath: data.appName
+ name: kfp-app-name
+ objref:
+ apiVersion: v1
+ kind: ConfigMap
+ name: pipeline-install-config
+- fieldref:
+ fieldPath: data.appVersion
+ name: kfp-app-version
+ objref:
+ apiVersion: v1
+ kind: ConfigMap
+ name: pipeline-install-config
+- fieldref:
+ fieldPath: data.bucketName
+ name: kfp-artifact-bucket-name
+ objref:
+ apiVersion: v1
+ kind: ConfigMap
+ name: pipeline-install-config
+- fieldref:
+ fieldPath: data.defaultPipelineRoot
+ name: kfp-default-pipeline-root
+ objref:
+ apiVersion: v1
+ kind: ConfigMap
+ name: pipeline-install-config
configurations:
- - params.yaml
+- params.yaml
diff --git a/charts/kubeflow/apps/pipeline/upstream/base/installs/generic/pipeline-install-config.yaml b/charts/kubeflow/apps/pipeline/upstream/base/installs/generic/pipeline-install-config.yaml
index 48810a5..2593a12 100644
--- a/charts/kubeflow/apps/pipeline/upstream/base/installs/generic/pipeline-install-config.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/base/installs/generic/pipeline-install-config.yaml
@@ -11,7 +11,7 @@ data:
until the changes take effect. A quick way to restart all deployments in a
namespace: `kubectl rollout restart deployment -n `.
appName: pipeline
- appVersion: 2.2.0
+ appVersion: 2.5.0
dbHost: mysql # relic to be removed after release
dbPort: "3306" # relic to be removed after release
dbType: mysql
@@ -63,8 +63,8 @@ data:
## cacheImage is the image that the mutating webhook will use to patch
## cached steps with. Will be used to echo a message announcing that
## the cached step result will be used. If not set it will default to
- ## 'gcr.io/google-containers/busybox'
- cacheImage: "gcr.io/google-containers/busybox"
+ ## 'registry.k8s.io/busybox'
+ cacheImage: "registry.k8s.io/busybox"
## cacheNodeRestrictions the dummy container runing if output is cached
## will run with the same affinity and node selector as the default pipeline
## step. This is defaulted to 'false' to allow the pod to be scheduled on
diff --git a/charts/kubeflow/apps/pipeline/upstream/base/installs/generic/postgres/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/base/installs/generic/postgres/kustomization.yaml
index 573a94d..f50a2c3 100644
--- a/charts/kubeflow/apps/pipeline/upstream/base/installs/generic/postgres/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/base/installs/generic/postgres/kustomization.yaml
@@ -8,40 +8,40 @@ resources:
- pipeline-install-config.yaml
- postgres-secret-extended.yaml
vars:
-- name: kfp-namespace
+- fieldref:
+ fieldPath: metadata.namespace
+ name: kfp-namespace
objref:
- kind: Deployment
apiVersion: apps/v1
+ kind: Deployment
name: ml-pipeline
- fieldref:
- fieldpath: metadata.namespace
-- name: kfp-app-name
+- fieldref:
+ fieldPath: data.appName
+ name: kfp-app-name
objref:
+ apiVersion: v1
kind: ConfigMap
name: pipeline-install-config
- apiVersion: v1
- fieldref:
- fieldpath: data.appName
-- name: kfp-app-version
+- fieldref:
+ fieldPath: data.appVersion
+ name: kfp-app-version
objref:
+ apiVersion: v1
kind: ConfigMap
name: pipeline-install-config
- apiVersion: v1
- fieldref:
- fieldpath: data.appVersion
-- name: kfp-artifact-bucket-name
+- fieldref:
+ fieldPath: data.bucketName
+ name: kfp-artifact-bucket-name
objref:
+ apiVersion: v1
kind: ConfigMap
name: pipeline-install-config
- apiVersion: v1
- fieldref:
- fieldpath: data.bucketName
-- name: kfp-default-pipeline-root
+- fieldref:
+ fieldPath: data.defaultPipelineRoot
+ name: kfp-default-pipeline-root
objref:
+ apiVersion: v1
kind: ConfigMap
name: pipeline-install-config
- apiVersion: v1
- fieldref:
- fieldpath: data.defaultPipelineRoot
configurations:
- - params.yaml
+- params.yaml
diff --git a/charts/kubeflow/apps/pipeline/upstream/base/installs/generic/postgres/pipeline-install-config.yaml b/charts/kubeflow/apps/pipeline/upstream/base/installs/generic/postgres/pipeline-install-config.yaml
index f5d87c6..fbfa8da 100644
--- a/charts/kubeflow/apps/pipeline/upstream/base/installs/generic/postgres/pipeline-install-config.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/base/installs/generic/postgres/pipeline-install-config.yaml
@@ -63,8 +63,8 @@ data:
## cacheImage is the image that the mutating webhook will use to patch
## cached steps with. Will be used to echo a message announcing that
## the cached step result will be used. If not set it will default to
- ## 'gcr.io/google-containers/busybox'
- cacheImage: "gcr.io/google-containers/busybox"
+ ## 'registry.k8s.io/busybox'
+ cacheImage: "registry.k8s.io/busybox"
## cacheNodeRestrictions the dummy container runing if output is cached
## will run with the same affinity and node selector as the default pipeline
## step. This is defaulted to 'false' to allow the pod to be scheduled on
diff --git a/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/api-service/cluster-role.yaml b/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/api-service/cluster-role.yaml
index 7d44af7..14e6e41 100644
--- a/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/api-service/cluster-role.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/api-service/cluster-role.yaml
@@ -35,6 +35,20 @@ rules:
- update
- patch
- delete
+- apiGroups:
+ - kubeflow.org
+ resources:
+ - scheduledworkflows/finalizers
+ verbs:
+ - update
+- apiGroups:
+ - pipelines.kubeflow.org
+ resources:
+ - pipelines
+ verbs:
+ - get
+ - list
+ - watch
- apiGroups:
- authorization.k8s.io
resources:
diff --git a/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/api-service/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/api-service/kustomization.yaml
index 4650ab5..b18c97d 100644
--- a/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/api-service/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/api-service/kustomization.yaml
@@ -4,6 +4,6 @@ resources:
- cluster-role-binding.yaml
- cluster-role.yaml
configMapGenerator:
-- name: pipeline-api-server-config
- envs:
+- envs:
- params.env
+ name: pipeline-api-server-config
diff --git a/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/cache/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/cache/kustomization.yaml
index ec4dfa8..71117ae 100644
--- a/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/cache/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/cache/kustomization.yaml
@@ -1,7 +1,9 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
-commonLabels:
- app: cache-server
resources:
- cluster-role.yaml
- cluster-role-binding.yaml
+labels:
+- includeSelectors: true
+ pairs:
+ app: cache-server
diff --git a/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/istio-authorization-config.yaml b/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/istio-authorization-config.yaml
index 8b3144a..6a77328 100644
--- a/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/istio-authorization-config.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/istio-authorization-config.yaml
@@ -8,10 +8,21 @@ spec:
matchLabels:
app: ml-pipeline-ui
rules:
+ # Allow all requests from the ingress gateway
- from:
- source:
- namespaces:
- - istio-system
+ principals:
+ - cluster.local/ns/istio-system/sa/istio-ingressgateway-service-account
+
+ # Allow all requests with an `authorization` header but NOT a `kubeflow-userid` header.
+ # This is needed to allow Kubernetes JWTs to be passed to the KFP API.
+ - when:
+ - key: request.headers[authorization]
+ values:
+ - "*"
+ - key: request.headers[kubeflow-userid]
+ notValues:
+ - "*"
---
apiVersion: security.istio.io/v1beta1
kind: AuthorizationPolicy
@@ -32,11 +43,7 @@ spec:
- cluster.local/ns/kubeflow/sa/ml-pipeline-scheduledworkflow
- cluster.local/ns/kubeflow/sa/ml-pipeline-viewer-crd-service-account
- cluster.local/ns/kubeflow/sa/kubeflow-pipelines-cache
- # allow access by any trusted principal
- - from:
- - source:
- requestPrincipals: ["*"]
- # For user workloads, which cannot user http headers for authentication
+ # Allow all requests that dont have a `kubeflow-userid` header.
- when:
- key: request.headers[kubeflow-userid]
notValues: ['*']
diff --git a/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/kustomization.yaml
index cca7b49..33c4127 100644
--- a/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/kustomization.yaml
@@ -1,9 +1,6 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
namespace: kubeflow
-commonLabels:
- app.kubernetes.io/name: kubeflow-pipelines
- app.kubernetes.io/component: ml-pipeline
resources:
- ../../pipeline/cluster-scoped
- ../../cache-deployer/cluster-scoped
@@ -31,3 +28,8 @@ patches:
configurations:
- params.yaml
+labels:
+- includeSelectors: true
+ pairs:
+ app.kubernetes.io/component: ml-pipeline
+ app.kubernetes.io/name: kubeflow-pipelines
diff --git a/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/pipelines-profile-controller/composite-controller.yaml b/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/pipelines-profile-controller/composite-controller.yaml
deleted file mode 100644
index 71ef08d..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/pipelines-profile-controller/composite-controller.yaml
+++ /dev/null
@@ -1,41 +0,0 @@
-# Change resyncPeriodSeconds to 1 hour from insane 20 seconds
-# Only sync namespaces with pipelines.kubeflow.org/enabled = "true"
-apiVersion: metacontroller.k8s.io/v1alpha1
-kind: CompositeController
-metadata:
- name: kubeflow-pipelines-profile-controller
-spec:
- generateSelector: true
- resyncPeriodSeconds: 3600
- parentResource:
- apiVersion: v1
- resource: namespaces
- childResources:
- - apiVersion: v1
- resource: secrets
- updateStrategy:
- method: OnDelete
- - apiVersion: v1
- resource: configmaps
- updateStrategy:
- method: OnDelete
- - apiVersion: apps/v1
- resource: deployments
- updateStrategy:
- method: InPlace
- - apiVersion: v1
- resource: services
- updateStrategy:
- method: InPlace
- - apiVersion: networking.istio.io/v1alpha3
- resource: destinationrules
- updateStrategy:
- method: InPlace
- - apiVersion: security.istio.io/v1beta1
- resource: authorizationpolicies
- updateStrategy:
- method: InPlace
- hooks:
- sync:
- webhook:
- url: http://kubeflow-pipelines-profile-controller/sync
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/pipelines-profile-controller/composite-controller.yaml b/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/pipelines-profile-controller/decorator-controller.yaml
similarity index 72%
rename from charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/pipelines-profile-controller/composite-controller.yaml
rename to charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/pipelines-profile-controller/decorator-controller.yaml
index d736c08..318e5fd 100644
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/base/installs/multi-user/pipelines-profile-controller/composite-controller.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/pipelines-profile-controller/decorator-controller.yaml
@@ -1,16 +1,16 @@
-# Change resyncPeriodSeconds to 1 hour from insane 20 seconds
-# Only sync namespaces with pipelines.kubeflow.org/enabled = "true"
apiVersion: metacontroller.k8s.io/v1alpha1
-kind: CompositeController
+kind: DecoratorController
metadata:
name: kubeflow-pipelines-profile-controller
spec:
- generateSelector: true
resyncPeriodSeconds: 3600
- parentResource:
- apiVersion: v1
+ resources:
+ - apiVersion: v1
resource: namespaces
- childResources:
+ labelSelector:
+ matchLabels:
+ pipelines.kubeflow.org/enabled: "true"
+ attachments:
- apiVersion: v1
resource: secrets
updateStrategy:
@@ -38,4 +38,4 @@ spec:
hooks:
sync:
webhook:
- url: http://kubeflow-pipelines-profile-controller/sync
+ url: http://kubeflow-pipelines-profile-controller/sync
\ No newline at end of file
diff --git a/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/pipelines-profile-controller/deployment.yaml b/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/pipelines-profile-controller/deployment.yaml
index 99dd9e2..faa73cc 100644
--- a/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/pipelines-profile-controller/deployment.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/pipelines-profile-controller/deployment.yaml
@@ -6,12 +6,22 @@ spec:
replicas: 1
template:
metadata:
- annotations:
+ labels:
sidecar.istio.io/inject: "false"
spec:
containers:
- name: profile-controller
- image: python:3.7
+ securityContext:
+ allowPrivilegeEscalation: false
+ seccompProfile:
+ type: RuntimeDefault
+ runAsNonRoot: true
+ runAsUser: 1000
+ runAsGroup: 0
+ capabilities:
+ drop:
+ - ALL
+ image: public.ecr.aws/docker/library/python:3.12
command: ["python", "/hooks/sync.py"]
envFrom:
- configMapRef:
diff --git a/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/pipelines-profile-controller/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/pipelines-profile-controller/kustomization.yaml
index 6ed73f1..fdb0de2 100644
--- a/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/pipelines-profile-controller/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/pipelines-profile-controller/kustomization.yaml
@@ -1,16 +1,18 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
namespace: kubeflow
-commonLabels:
- app: kubeflow-pipelines-profile-controller
resources:
- service.yaml
- deployment.yaml
-- composite-controller.yaml
+- decorator-controller.yaml
configMapGenerator:
-- name: kubeflow-pipelines-profile-controller-code
- files:
+- files:
- sync.py
-- name: kubeflow-pipelines-profile-controller-env
- envs:
+ name: kubeflow-pipelines-profile-controller-code
+- envs:
- params.env
+ name: kubeflow-pipelines-profile-controller-env
+labels:
+- includeSelectors: true
+ pairs:
+ app: kubeflow-pipelines-profile-controller
diff --git a/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/pipelines-profile-controller/sync.py b/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/pipelines-profile-controller/sync.py
index 031a3fa..3d39e31 100644
--- a/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/pipelines-profile-controller/sync.py
+++ b/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/pipelines-profile-controller/sync.py
@@ -36,9 +36,9 @@ def get_settings_from_env(controller_port=None,
Settings are pulled from the all-caps version of the setting name. The
following defaults are used if those environment variables are not set
to enable backwards compatibility with previous versions of this script:
- visualization_server_image: gcr.io/ml-pipeline/visualization-server
+ visualization_server_image: ghcr.io/kubeflow/kfp-visualization-server
visualization_server_tag: value of KFP_VERSION environment variable
- frontend_image: gcr.io/ml-pipeline/frontend
+ frontend_image: ghcr.io/kubeflow/kfp-frontend
frontend_tag: value of KFP_VERSION environment variable
disable_istio_sidecar: Required (no default)
minio_access_key: Required (no default)
@@ -51,11 +51,11 @@ def get_settings_from_env(controller_port=None,
settings["visualization_server_image"] = \
visualization_server_image or \
- os.environ.get("VISUALIZATION_SERVER_IMAGE", "gcr.io/ml-pipeline/visualization-server")
+ os.environ.get("VISUALIZATION_SERVER_IMAGE", "ghcr.io/kubeflow/kfp-visualization-server")
settings["frontend_image"] = \
frontend_image or \
- os.environ.get("FRONTEND_IMAGE", "gcr.io/ml-pipeline/frontend")
+ os.environ.get("FRONTEND_IMAGE", "ghcr.io/kubeflow/kfp-frontend")
# Look for specific tags for each image first, falling back to
# previously used KFP_VERSION environment variable for backwards
@@ -99,15 +99,14 @@ def server_factory(visualization_server_image,
Returns an HTTPServer populated with Handler with customized settings
"""
class Controller(BaseHTTPRequestHandler):
- def sync(self, parent, children):
+ def sync(self, parent, attachments):
# parent is a namespace
namespace = parent.get("metadata", {}).get("name")
-
pipeline_enabled = parent.get("metadata", {}).get(
"labels", {}).get("pipelines.kubeflow.org/enabled")
if pipeline_enabled != "true":
- return {"status": {}, "children": []}
+ return {"status": {}, "attachments": []}
desired_configmap_count = 1
desired_resources = []
@@ -129,16 +128,16 @@ def server_factory(visualization_server_image,
# Compute status based on observed state.
desired_status = {
"kubeflow-pipelines-ready":
- len(children["Secret.v1"]) == 1 and
- len(children["ConfigMap.v1"]) == desired_configmap_count and
- len(children["Deployment.apps/v1"]) == 2 and
- len(children["Service.v1"]) == 2 and
- len(children["DestinationRule.networking.istio.io/v1alpha3"]) == 1 and
- len(children["AuthorizationPolicy.security.istio.io/v1beta1"]) == 1 and
+ len(attachments["Secret.v1"]) == 1 and
+ len(attachments["ConfigMap.v1"]) == desired_configmap_count and
+ len(attachments["Deployment.apps/v1"]) == 2 and
+ len(attachments["Service.v1"]) == 2 and
+ len(attachments["DestinationRule.networking.istio.io/v1alpha3"]) == 1 and
+ len(attachments["AuthorizationPolicy.security.istio.io/v1beta1"]) == 1 and
"True" or "False"
}
- # Generate the desired child object(s).
+ # Generate the desired attachment object(s).
desired_resources += [
{
"apiVersion": "v1",
@@ -376,13 +375,13 @@ def server_factory(visualization_server_image,
},
})
- return {"status": desired_status, "children": desired_resources}
+ return {"status": desired_status, "attachments": desired_resources}
def do_POST(self):
# Serve the sync() function as a JSON webhook.
observed = json.loads(
self.rfile.read(int(self.headers.get("content-length"))))
- desired = self.sync(observed["parent"], observed["children"])
+ desired = self.sync(observed["object"], observed["attachments"])
self.send_response(200)
self.send_header("Content-type", "application/json")
diff --git a/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/pipelines-profile-controller/test_sync.py b/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/pipelines-profile-controller/test_sync.py
index 50362d6..7fb504f 100644
--- a/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/pipelines-profile-controller/test_sync.py
+++ b/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/pipelines-profile-controller/test_sync.py
@@ -49,8 +49,8 @@ DATA_CORRECT_CHILDREN = {
DATA_MISSING_PIPELINE_ENABLED = {"parent": {}, "children": {}}
# Default values when environments are not explicit
-DEFAULT_FRONTEND_IMAGE = "gcr.io/ml-pipeline/frontend"
-DEFAULT_VISUALIZATION_IMAGE = "gcr.io/ml-pipeline/visualization-server"
+DEFAULT_FRONTEND_IMAGE = "ghcr.io/kubeflow/kfp-frontend"
+DEFAULT_VISUALIZATION_IMAGE = "ghcr.io/kubeflow/kfp-visualization-server"
# Variables used for environment variable sets
VISUALIZATION_SERVER_IMAGE = "vis-image"
diff --git a/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/pipelines-ui/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/pipelines-ui/kustomization.yaml
index c84d97c..a607fb9 100644
--- a/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/pipelines-ui/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/pipelines-ui/kustomization.yaml
@@ -1,8 +1,10 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
namespace: kubeflow
-commonLabels:
- app: ml-pipeline-ui
resources:
- cluster-role.yaml
- cluster-role-binding.yaml
+labels:
+- includeSelectors: true
+ pairs:
+ app: ml-pipeline-ui
diff --git a/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/scheduled-workflow/cluster-role.yaml b/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/scheduled-workflow/cluster-role.yaml
index fd868ea..45a10bb 100644
--- a/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/scheduled-workflow/cluster-role.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/scheduled-workflow/cluster-role.yaml
@@ -15,6 +15,12 @@ rules:
- update
- patch
- delete
+- apiGroups:
+ - pipelines.kubeflow.org
+ resources:
+ - runs
+ verbs:
+ - create
- apiGroups:
- kubeflow.org
resources:
diff --git a/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/view-edit-cluster-roles.yaml b/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/view-edit-cluster-roles.yaml
index abb531e..ed2e2ba 100644
--- a/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/view-edit-cluster-roles.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/base/installs/multi-user/view-edit-cluster-roles.yaml
@@ -97,6 +97,7 @@ rules:
- workflows/finalizers
- workfloweventbindings
- workflowtemplates
+ - workflowtaskresults
---
diff --git a/charts/kubeflow/apps/pipeline/upstream/base/metadata/base/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/base/metadata/base/kustomization.yaml
index 02e5939..1363311 100644
--- a/charts/kubeflow/apps/pipeline/upstream/base/metadata/base/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/base/metadata/base/kustomization.yaml
@@ -9,5 +9,5 @@ resources:
- metadata-envoy-service.yaml
- metadata-grpc-sa.yaml
images:
- - name: gcr.io/ml-pipeline/metadata-envoy
- newTag: 2.2.0
+ - name: ghcr.io/kubeflow/kfp-metadata-envoy
+ newTag: 2.5.0
diff --git a/charts/kubeflow/apps/pipeline/upstream/base/metadata/base/metadata-envoy-deployment.yaml b/charts/kubeflow/apps/pipeline/upstream/base/metadata/base/metadata-envoy-deployment.yaml
index e087d80..4425672 100644
--- a/charts/kubeflow/apps/pipeline/upstream/base/metadata/base/metadata-envoy-deployment.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/base/metadata/base/metadata-envoy-deployment.yaml
@@ -13,14 +13,23 @@ spec:
metadata:
labels:
component: metadata-envoy
- annotations:
sidecar.istio.io/inject: "false"
spec:
containers:
- name: container
- image: gcr.io/ml-pipeline/metadata-envoy:dummy
+ image: ghcr.io/kubeflow/kfp-metadata-envoy:dummy
ports:
- name: md-envoy
containerPort: 9090
- name: envoy-admin
containerPort: 9901
+ securityContext:
+ allowPrivilegeEscalation: false
+ seccompProfile:
+ type: RuntimeDefault
+ runAsNonRoot: true
+ runAsUser: 1000
+ runAsGroup: 0
+ capabilities:
+ drop:
+ - ALL
diff --git a/charts/kubeflow/apps/pipeline/upstream/base/metadata/base/metadata-grpc-deployment.yaml b/charts/kubeflow/apps/pipeline/upstream/base/metadata/base/metadata-grpc-deployment.yaml
index 1ea1048..a2f419a 100644
--- a/charts/kubeflow/apps/pipeline/upstream/base/metadata/base/metadata-grpc-deployment.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/base/metadata/base/metadata-grpc-deployment.yaml
@@ -14,6 +14,9 @@ spec:
labels:
component: metadata-grpc-server
spec:
+ securityContext:
+ seccompProfile:
+ type: RuntimeDefault
containers:
- name: container
# ! Sync to the same MLMD version:
@@ -23,6 +26,16 @@ spec:
# * manifests/kustomize/base/metadata/base/metadata-grpc-deployment.yaml
# * test/tag_for_hosted.sh
image: gcr.io/tfx-oss-public/ml_metadata_store_server:1.14.0
+ securityContext:
+ allowPrivilegeEscalation: false
+ seccompProfile:
+ type: RuntimeDefault
+ runAsNonRoot: true
+ runAsUser: 1000
+ runAsGroup: 0
+ capabilities:
+ drop:
+ - ALL
env:
- name: DBCONFIG_USER
valueFrom:
diff --git a/charts/kubeflow/apps/pipeline/upstream/base/metadata/overlays/db/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/base/metadata/overlays/db/kustomization.yaml
index d28419d..729f16e 100644
--- a/charts/kubeflow/apps/pipeline/upstream/base/metadata/overlays/db/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/base/metadata/overlays/db/kustomization.yaml
@@ -12,13 +12,13 @@ patches:
- path: patches/metadata-grpc-deployment.yaml
configMapGenerator:
-- name: metadata-db-parameters
- envs:
+- envs:
- params.env
+ name: metadata-db-parameters
secretGenerator:
-- name: metadata-db-secrets
- envs:
+- envs:
- secrets.env
+ name: metadata-db-secrets
generatorOptions:
disableNameSuffixHash: true
@@ -29,10 +29,10 @@ images:
newTag: 8.0.3
vars:
-- name: MLMD_DB_HOST
+- fieldref:
+ fieldPath: metadata.name
+ name: MLMD_DB_HOST
objref:
+ apiVersion: v1
kind: Service
name: metadata-db
- apiVersion: v1
- fieldref:
- fieldpath: metadata.name
diff --git a/charts/kubeflow/apps/pipeline/upstream/base/metadata/overlays/db/metadata-db-deployment.yaml b/charts/kubeflow/apps/pipeline/upstream/base/metadata/overlays/db/metadata-db-deployment.yaml
index f5a7332..3101f5d 100644
--- a/charts/kubeflow/apps/pipeline/upstream/base/metadata/overlays/db/metadata-db-deployment.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/base/metadata/overlays/db/metadata-db-deployment.yaml
@@ -16,7 +16,6 @@ spec:
name: db
labels:
component: db
- annotations:
sidecar.istio.io/inject: "false"
spec:
containers:
@@ -49,4 +48,3 @@ spec:
- name: metadata-mysql
persistentVolumeClaim:
claimName: metadata-mysql
-
diff --git a/charts/kubeflow/apps/pipeline/upstream/base/metadata/overlays/postgres/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/base/metadata/overlays/postgres/kustomization.yaml
index 0dd8568..f975b8f 100644
--- a/charts/kubeflow/apps/pipeline/upstream/base/metadata/overlays/postgres/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/base/metadata/overlays/postgres/kustomization.yaml
@@ -12,13 +12,13 @@ patches:
- path: patches/metadata-grpc-deployment.yaml
configMapGenerator:
-- name: metadata-postgres-db-parameters
- envs:
+- envs:
- params.env
+ name: metadata-postgres-db-parameters
secretGenerator:
-- name: metadata-postgres-db-secrets
- envs:
+- envs:
- secrets.env
+ name: metadata-postgres-db-secrets
generatorOptions:
disableNameSuffixHash: true
@@ -28,10 +28,10 @@ images:
newTag: 14.7-alpine3.17
vars:
-- name: MLMD_DB_HOST
+- fieldref:
+ fieldPath: metadata.name
+ name: MLMD_DB_HOST
objref:
+ apiVersion: v1
kind: Service
name: metadata-postgres-db
- apiVersion: v1
- fieldref:
- fieldpath: metadata.name
diff --git a/charts/kubeflow/apps/pipeline/upstream/base/metadata/overlays/postgres/metadata-db-deployment.yaml b/charts/kubeflow/apps/pipeline/upstream/base/metadata/overlays/postgres/metadata-db-deployment.yaml
index 061d109..41d2b51 100644
--- a/charts/kubeflow/apps/pipeline/upstream/base/metadata/overlays/postgres/metadata-db-deployment.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/base/metadata/overlays/postgres/metadata-db-deployment.yaml
@@ -16,15 +16,14 @@ spec:
name: db
labels:
component: db
- annotations:
sidecar.istio.io/inject: "false"
spec:
containers:
- name: db-container
image: postgres
env:
- - name: PGDATA
- value: /var/lib/postgresql/data/pgdata
+ - name: PGDATA
+ value: /var/lib/postgresql/data/pgdata
envFrom:
- configMapRef:
name: metadata-postgres-db-parameters
@@ -40,4 +39,3 @@ spec:
- name: metadata-postgres
persistentVolumeClaim:
claimName: metadata-postgres
-
diff --git a/charts/kubeflow/apps/pipeline/upstream/base/pipeline/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/base/pipeline/kustomization.yaml
index f7bbf17..775e323 100644
--- a/charts/kubeflow/apps/pipeline/upstream/base/pipeline/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/base/pipeline/kustomization.yaml
@@ -35,15 +35,15 @@ resources:
- viewer-sa.yaml
- kfp-launcher-configmap.yaml
images:
- - name: gcr.io/ml-pipeline/api-server
- newTag: 2.2.0
- - name: gcr.io/ml-pipeline/persistenceagent
- newTag: 2.2.0
- - name: gcr.io/ml-pipeline/scheduledworkflow
- newTag: 2.2.0
- - name: gcr.io/ml-pipeline/frontend
- newTag: 2.2.0
- - name: gcr.io/ml-pipeline/viewer-crd-controller
- newTag: 2.2.0
- - name: gcr.io/ml-pipeline/visualization-server
- newTag: 2.2.0
+ - name: ghcr.io/kubeflow/kfp-api-server
+ newTag: 2.5.0
+ - name: ghcr.io/kubeflow/kfp-persistence-agent
+ newTag: 2.5.0
+ - name: ghcr.io/kubeflow/kfp-scheduled-workflow-controller
+ newTag: 2.5.0
+ - name: ghcr.io/kubeflow/kfp-frontend
+ newTag: 2.5.0
+ - name: ghcr.io/kubeflow/kfp-viewer-crd-controller
+ newTag: 2.5.0
+ - name: ghcr.io/kubeflow/kfp-visualization-server
+ newTag: 2.5.0
diff --git a/charts/kubeflow/apps/pipeline/upstream/base/pipeline/metadata-writer/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/base/pipeline/metadata-writer/kustomization.yaml
index fa4186e..679a95a 100644
--- a/charts/kubeflow/apps/pipeline/upstream/base/pipeline/metadata-writer/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/base/pipeline/metadata-writer/kustomization.yaml
@@ -6,5 +6,5 @@ resources:
- metadata-writer-rolebinding.yaml
- metadata-writer-sa.yaml
images:
- - name: gcr.io/ml-pipeline/metadata-writer
- newTag: 2.2.0
+ - name: ghcr.io/kubeflow/kfp-metadata-writer
+ newTag: 2.5.0
diff --git a/charts/kubeflow/apps/pipeline/upstream/base/pipeline/metadata-writer/metadata-writer-deployment.yaml b/charts/kubeflow/apps/pipeline/upstream/base/pipeline/metadata-writer/metadata-writer-deployment.yaml
index c51903d..0fa9026 100644
--- a/charts/kubeflow/apps/pipeline/upstream/base/pipeline/metadata-writer/metadata-writer-deployment.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/base/pipeline/metadata-writer/metadata-writer-deployment.yaml
@@ -14,12 +14,24 @@ spec:
labels:
app: metadata-writer
spec:
+ securityContext:
+ seccompProfile:
+ type: RuntimeDefault
+
containers:
- name: main
- image: gcr.io/ml-pipeline/metadata-writer:dummy
+ image: ghcr.io/kubeflow/kfp-metadata-writer:dummy
env:
- name: NAMESPACE_TO_WATCH
valueFrom:
fieldRef:
fieldPath: metadata.namespace
+ securityContext:
+ allowPrivilegeEscalation: false
+ runAsNonRoot: true
+ runAsUser: 1000
+ runAsGroup: 0
+ capabilities:
+ drop:
+ - ALL
serviceAccountName: kubeflow-pipelines-metadata-writer
diff --git a/charts/kubeflow/apps/pipeline/upstream/base/pipeline/ml-pipeline-apiserver-deployment.yaml b/charts/kubeflow/apps/pipeline/upstream/base/pipeline/ml-pipeline-apiserver-deployment.yaml
index cd80133..24b5905 100644
--- a/charts/kubeflow/apps/pipeline/upstream/base/pipeline/ml-pipeline-apiserver-deployment.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/base/pipeline/ml-pipeline-apiserver-deployment.yaml
@@ -15,149 +15,170 @@ spec:
annotations:
cluster-autoscaler.kubernetes.io/safe-to-evict: "true"
spec:
+ securityContext:
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - env:
- - name: LOG_LEVEL
- value: "info"
- - name: AUTO_UPDATE_PIPELINE_DEFAULT_VERSION
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: autoUpdatePipelineDefaultVersion
- - name: POD_NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- - name: OBJECTSTORECONFIG_SECURE
- value: "false"
- - name: OBJECTSTORECONFIG_BUCKETNAME
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: bucketName
- # relic variables
- - name: DBCONFIG_USER
- valueFrom:
- secretKeyRef:
- name: mysql-secret
- key: username
- - name: DBCONFIG_PASSWORD
- valueFrom:
- secretKeyRef:
- name: mysql-secret
- key: password
- - name: DBCONFIG_DBNAME
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: pipelineDb
- - name: DBCONFIG_HOST
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: dbHost
- - name: DBCONFIG_PORT
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: dbPort
- # end of relic variables
- - name: DBCONFIG_CONMAXLIFETIME
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: ConMaxLifeTime
- - name: DB_DRIVER_NAME
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: dbType
- # MySQL Config
- - name: DBCONFIG_MYSQLCONFIG_USER
- valueFrom:
- secretKeyRef:
- name: mysql-secret
- key: username
- - name: DBCONFIG_MYSQLCONFIG_PASSWORD
- valueFrom:
- secretKeyRef:
- name: mysql-secret
- key: password
- - name: DBCONFIG_MYSQLCONFIG_DBNAME
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: pipelineDb
- - name: DBCONFIG_MYSQLCONFIG_HOST
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: mysqlHost
- - name: DBCONFIG_MYSQLCONFIG_PORT
- valueFrom:
- configMapKeyRef:
- name: pipeline-install-config
- key: mysqlPort
- # end of MySQL Config
- - name: OBJECTSTORECONFIG_ACCESSKEY
- valueFrom:
- secretKeyRef:
- name: mlpipeline-minio-artifact
- key: accesskey
- - name: OBJECTSTORECONFIG_SECRETACCESSKEY
- valueFrom:
- secretKeyRef:
- name: mlpipeline-minio-artifact
- key: secretkey
- image: gcr.io/ml-pipeline/api-server:dummy
- imagePullPolicy: IfNotPresent
- name: ml-pipeline-api-server
- ports:
- - name: http
- containerPort: 8888
- - name: grpc
- containerPort: 8887
- readinessProbe:
- exec:
- command:
- - wget
- - -q # quiet
- - -S # show server response
- - -O
- - "-" # Redirect output to stdout
- - http://localhost:8888/apis/v1beta1/healthz
- initialDelaySeconds: 3
- periodSeconds: 5
- timeoutSeconds: 2
- livenessProbe:
- exec:
- command:
- - wget
- - -q # quiet
- - -S # show server response
- - -O
- - "-" # Redirect output to stdout
- - http://localhost:8888/apis/v1beta1/healthz
- initialDelaySeconds: 3
- periodSeconds: 5
- timeoutSeconds: 2
- # This startup probe provides up to a 60 second grace window before the
- # liveness probe takes over to accomodate the occasional database
- # migration.
- startupProbe:
- exec:
- command:
- - wget
- - -q # quiet
- - -S # show server response
- - -O
- - "-" # Redirect output to stdout
- - http://localhost:8888/apis/v1beta1/healthz
- failureThreshold: 12
- periodSeconds: 5
- timeoutSeconds: 2
- resources:
- requests:
- cpu: 250m
- memory: 500Mi
+ - env:
+ # Whether or not to publish component logs to the object store.
+ - name: PUBLISH_LOGS
+ value: "true"
+ - name: LOG_LEVEL
+ value: "info"
+ # Driver / launcher log level during pipeline execution
+ - name: PIPELINE_LOG_LEVEL
+ value: "1"
+ - name: AUTO_UPDATE_PIPELINE_DEFAULT_VERSION
+ valueFrom:
+ configMapKeyRef:
+ name: pipeline-install-config
+ key: autoUpdatePipelineDefaultVersion
+ - name: POD_NAMESPACE
+ valueFrom:
+ fieldRef:
+ fieldPath: metadata.namespace
+ - name: OBJECTSTORECONFIG_SECURE
+ value: "false"
+ - name: OBJECTSTORECONFIG_BUCKETNAME
+ valueFrom:
+ configMapKeyRef:
+ name: pipeline-install-config
+ key: bucketName
+ # relic variables
+ - name: DBCONFIG_USER
+ valueFrom:
+ secretKeyRef:
+ name: mysql-secret
+ key: username
+ - name: DBCONFIG_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: mysql-secret
+ key: password
+ - name: DBCONFIG_DBNAME
+ valueFrom:
+ configMapKeyRef:
+ name: pipeline-install-config
+ key: pipelineDb
+ - name: DBCONFIG_HOST
+ valueFrom:
+ configMapKeyRef:
+ name: pipeline-install-config
+ key: dbHost
+ - name: DBCONFIG_PORT
+ valueFrom:
+ configMapKeyRef:
+ name: pipeline-install-config
+ key: dbPort
+ # end of relic variables
+ - name: DBCONFIG_CONMAXLIFETIME
+ valueFrom:
+ configMapKeyRef:
+ name: pipeline-install-config
+ key: ConMaxLifeTime
+ - name: DB_DRIVER_NAME
+ valueFrom:
+ configMapKeyRef:
+ name: pipeline-install-config
+ key: dbType
+ # MySQL Config
+ - name: DBCONFIG_MYSQLCONFIG_USER
+ valueFrom:
+ secretKeyRef:
+ name: mysql-secret
+ key: username
+ - name: DBCONFIG_MYSQLCONFIG_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: mysql-secret
+ key: password
+ - name: DBCONFIG_MYSQLCONFIG_DBNAME
+ valueFrom:
+ configMapKeyRef:
+ name: pipeline-install-config
+ key: pipelineDb
+ - name: DBCONFIG_MYSQLCONFIG_HOST
+ valueFrom:
+ configMapKeyRef:
+ name: pipeline-install-config
+ key: mysqlHost
+ - name: DBCONFIG_MYSQLCONFIG_PORT
+ valueFrom:
+ configMapKeyRef:
+ name: pipeline-install-config
+ key: mysqlPort
+ # end of MySQL Config
+ - name: OBJECTSTORECONFIG_ACCESSKEY
+ valueFrom:
+ secretKeyRef:
+ name: mlpipeline-minio-artifact
+ key: accesskey
+ - name: OBJECTSTORECONFIG_SECRETACCESSKEY
+ valueFrom:
+ secretKeyRef:
+ name: mlpipeline-minio-artifact
+ key: secretkey
+ - name: V2_DRIVER_IMAGE
+ value: ghcr.io/kubeflow/kfp-driver:2.5.0
+ - name: V2_LAUNCHER_IMAGE
+ value: ghcr.io/kubeflow/kfp-launcher:2.5.0
+ image: ghcr.io/kubeflow/kfp-api-server:dummy
+ imagePullPolicy: IfNotPresent
+ name: ml-pipeline-api-server
+ ports:
+ - name: http
+ containerPort: 8888
+ - name: grpc
+ containerPort: 8887
+ readinessProbe:
+ exec:
+ command:
+ - wget
+ - -q # quiet
+ - -S # show server response
+ - -O
+ - "-" # Redirect output to stdout
+ - http://localhost:8888/apis/v1beta1/healthz
+ initialDelaySeconds: 3
+ periodSeconds: 5
+ timeoutSeconds: 2
+ livenessProbe:
+ exec:
+ command:
+ - wget
+ - -q # quiet
+ - -S # show server response
+ - -O
+ - "-" # Redirect output to stdout
+ - http://localhost:8888/apis/v1beta1/healthz
+ initialDelaySeconds: 3
+ periodSeconds: 5
+ timeoutSeconds: 2
+ # This startup probe provides up to a 60 second grace window before the
+ # liveness probe takes over to accomodate the occasional database
+ # migration.
+ startupProbe:
+ exec:
+ command:
+ - wget
+ - -q # quiet
+ - -S # show server response
+ - -O
+ - "-" # Redirect output to stdout
+ - http://localhost:8888/apis/v1beta1/healthz
+ failureThreshold: 12
+ periodSeconds: 5
+ timeoutSeconds: 2
+ securityContext:
+ allowPrivilegeEscalation: false
+ runAsNonRoot: true
+ runAsUser: 1000
+ runAsGroup: 0
+ capabilities:
+ drop:
+ - ALL
+ resources:
+ requests:
+ cpu: 250m
+ memory: 500Mi
serviceAccountName: ml-pipeline
diff --git a/charts/kubeflow/apps/pipeline/upstream/base/pipeline/ml-pipeline-apiserver-role.yaml b/charts/kubeflow/apps/pipeline/upstream/base/pipeline/ml-pipeline-apiserver-role.yaml
index 9e76ebd..59d3926 100644
--- a/charts/kubeflow/apps/pipeline/upstream/base/pipeline/ml-pipeline-apiserver-role.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/base/pipeline/ml-pipeline-apiserver-role.yaml
@@ -37,6 +37,20 @@ rules:
- update
- patch
- delete
+- apiGroups:
+ - kubeflow.org
+ resources:
+ - scheduledworkflows/finalizers
+ verbs:
+ - update
+- apiGroups:
+ - pipelines.kubeflow.org
+ resources:
+ - pipelines
+ verbs:
+ - get
+ - list
+ - watch
- apiGroups:
- authorization.k8s.io
resources:
@@ -49,33 +63,3 @@ rules:
- tokenreviews
verbs:
- create
-- apiGroups:
- - tekton.dev
- resources:
- - pipelineruns
- - taskruns
- - conditions
- - runs
- - tasks
- - customruns
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
-- apiGroups:
- - custom.tekton.dev
- resources:
- - pipelineloops
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
-
\ No newline at end of file
diff --git a/charts/kubeflow/apps/pipeline/upstream/base/pipeline/ml-pipeline-persistenceagent-deployment.yaml b/charts/kubeflow/apps/pipeline/upstream/base/pipeline/ml-pipeline-persistenceagent-deployment.yaml
index d23cee6..2803c58 100644
--- a/charts/kubeflow/apps/pipeline/upstream/base/pipeline/ml-pipeline-persistenceagent-deployment.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/base/pipeline/ml-pipeline-persistenceagent-deployment.yaml
@@ -15,6 +15,9 @@ spec:
annotations:
cluster-autoscaler.kubernetes.io/safe-to-evict: "true"
spec:
+ securityContext:
+ seccompProfile:
+ type: RuntimeDefault
containers:
- env:
- name: NAMESPACE
@@ -27,7 +30,7 @@ spec:
value: "2"
- name: LOG_LEVEL
value: "info"
- image: gcr.io/ml-pipeline/persistenceagent:dummy
+ image: ghcr.io/kubeflow/kfp-persistence-agent:dummy
imagePullPolicy: IfNotPresent
name: ml-pipeline-persistenceagent
resources:
@@ -37,6 +40,14 @@ spec:
volumeMounts:
- mountPath: /var/run/secrets/kubeflow/tokens
name: persistenceagent-sa-token
+ securityContext:
+ allowPrivilegeEscalation: false
+ runAsNonRoot: true
+ runAsUser: 1000
+ runAsGroup: 0
+ capabilities:
+ drop:
+ - ALL
serviceAccountName: ml-pipeline-persistenceagent
volumes:
- name: persistenceagent-sa-token
diff --git a/charts/kubeflow/apps/pipeline/upstream/base/pipeline/ml-pipeline-persistenceagent-role.yaml b/charts/kubeflow/apps/pipeline/upstream/base/pipeline/ml-pipeline-persistenceagent-role.yaml
index a945442..63bdd03 100644
--- a/charts/kubeflow/apps/pipeline/upstream/base/pipeline/ml-pipeline-persistenceagent-role.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/base/pipeline/ml-pipeline-persistenceagent-role.yaml
@@ -33,32 +33,3 @@ rules:
verbs:
- reportMetrics
- readArtifact
-- apiGroups:
- - tekton.dev
- resources:
- - pipelineruns
- - taskruns
- - conditions
- - runs
- - tasks
- - customruns
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
-- apiGroups:
- - custom.tekton.dev
- resources:
- - pipelineloops
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
diff --git a/charts/kubeflow/apps/pipeline/upstream/base/pipeline/ml-pipeline-scheduledworkflow-deployment.yaml b/charts/kubeflow/apps/pipeline/upstream/base/pipeline/ml-pipeline-scheduledworkflow-deployment.yaml
index aa19c70..722ac32 100644
--- a/charts/kubeflow/apps/pipeline/upstream/base/pipeline/ml-pipeline-scheduledworkflow-deployment.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/base/pipeline/ml-pipeline-scheduledworkflow-deployment.yaml
@@ -15,8 +15,11 @@ spec:
annotations:
cluster-autoscaler.kubernetes.io/safe-to-evict: "true"
spec:
+ securityContext:
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - image: gcr.io/ml-pipeline/scheduledworkflow:dummy
+ - image: ghcr.io/kubeflow/kfp-scheduled-workflow-controller:dummy
imagePullPolicy: IfNotPresent
name: ml-pipeline-scheduledworkflow
env:
@@ -31,4 +34,23 @@ spec:
configMapKeyRef:
name: pipeline-install-config
key: cronScheduleTimezone
+ securityContext:
+ allowPrivilegeEscalation: false
+ runAsNonRoot: true
+ runAsUser: 1000
+ runAsGroup: 0
+ capabilities:
+ drop:
+ - ALL
+ volumeMounts:
+ - mountPath: /var/run/secrets/kubeflow/tokens
+ name: scheduledworkflow-sa-token
serviceAccountName: ml-pipeline-scheduledworkflow
+ volumes:
+ - name: scheduledworkflow-sa-token
+ projected:
+ sources:
+ - serviceAccountToken:
+ path: scheduledworkflow-sa-token
+ expirationSeconds: 3600
+ audience: pipelines.kubeflow.org
diff --git a/charts/kubeflow/apps/pipeline/upstream/base/pipeline/ml-pipeline-scheduledworkflow-role.yaml b/charts/kubeflow/apps/pipeline/upstream/base/pipeline/ml-pipeline-scheduledworkflow-role.yaml
index 36729d7..c6f4918 100644
--- a/charts/kubeflow/apps/pipeline/upstream/base/pipeline/ml-pipeline-scheduledworkflow-role.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/base/pipeline/ml-pipeline-scheduledworkflow-role.yaml
@@ -30,6 +30,12 @@ rules:
- update
- patch
- delete
+- apiGroups:
+ - pipelines.kubeflow.org
+ resources:
+ - runs
+ verbs:
+ - create
- apiGroups:
- ''
resources:
diff --git a/charts/kubeflow/apps/pipeline/upstream/base/pipeline/ml-pipeline-ui-deployment.yaml b/charts/kubeflow/apps/pipeline/upstream/base/pipeline/ml-pipeline-ui-deployment.yaml
index 8e8923a..c11685e 100644
--- a/charts/kubeflow/apps/pipeline/upstream/base/pipeline/ml-pipeline-ui-deployment.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/base/pipeline/ml-pipeline-ui-deployment.yaml
@@ -15,12 +15,15 @@ spec:
annotations:
cluster-autoscaler.kubernetes.io/safe-to-evict: "true"
spec:
+ securityContext:
+ seccompProfile:
+ type: RuntimeDefault
volumes:
- name: config-volume
configMap:
name: ml-pipeline-ui-configmap
containers:
- - image: gcr.io/ml-pipeline/frontend:dummy
+ - image: ghcr.io/kubeflow/kfp-frontend:dummy
imagePullPolicy: IfNotPresent
name: ml-pipeline-ui
ports:
@@ -29,6 +32,14 @@ spec:
- name: config-volume
mountPath: /etc/config
readOnly: true
+ securityContext:
+ allowPrivilegeEscalation: false
+ runAsNonRoot: true
+ runAsUser: 1000
+ runAsGroup: 0
+ capabilities:
+ drop:
+ - ALL
env:
- name: VIEWER_TENSORBOARD_POD_TEMPLATE_SPEC_PATH
value: /etc/config/viewer-pod-template.json
@@ -48,6 +59,14 @@ spec:
key: secretkey
- name: ALLOW_CUSTOM_VISUALIZATIONS
value: "true"
+ - name: FRONTEND_SERVER_NAMESPACE
+ valueFrom:
+ fieldRef:
+ fieldPath: metadata.namespace
+ - name: ARGO_ARCHIVE_LOGS
+ value: "true"
+ - name: DISABLE_GKE_METADATA
+ value: "true"
readinessProbe:
exec:
command:
diff --git a/charts/kubeflow/apps/pipeline/upstream/base/pipeline/ml-pipeline-ui-role.yaml b/charts/kubeflow/apps/pipeline/upstream/base/pipeline/ml-pipeline-ui-role.yaml
index 0fc42c9..72405bc 100644
--- a/charts/kubeflow/apps/pipeline/upstream/base/pipeline/ml-pipeline-ui-role.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/base/pipeline/ml-pipeline-ui-role.yaml
@@ -22,6 +22,7 @@ rules:
- ""
resources:
- secrets
+ - configmaps
verbs:
- get
- list
diff --git a/charts/kubeflow/apps/pipeline/upstream/base/pipeline/ml-pipeline-viewer-crd-deployment.yaml b/charts/kubeflow/apps/pipeline/upstream/base/pipeline/ml-pipeline-viewer-crd-deployment.yaml
index 9e101b9..bc42d47 100644
--- a/charts/kubeflow/apps/pipeline/upstream/base/pipeline/ml-pipeline-viewer-crd-deployment.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/base/pipeline/ml-pipeline-viewer-crd-deployment.yaml
@@ -15,8 +15,11 @@ spec:
annotations:
cluster-autoscaler.kubernetes.io/safe-to-evict: "true"
spec:
+ securityContext:
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - image: gcr.io/ml-pipeline/viewer-crd-controller:dummy
+ - image: ghcr.io/kubeflow/kfp-viewer-crd-controller:dummy
imagePullPolicy: Always
name: ml-pipeline-viewer-crd
env:
@@ -26,4 +29,12 @@ spec:
valueFrom:
fieldRef:
fieldPath: metadata.namespace
+ securityContext:
+ allowPrivilegeEscalation: false
+ runAsNonRoot: true
+ runAsUser: 1000
+ runAsGroup: 0
+ capabilities:
+ drop:
+ - ALL
serviceAccountName: ml-pipeline-viewer-crd-service-account
diff --git a/charts/kubeflow/apps/pipeline/upstream/base/pipeline/ml-pipeline-visualization-deployment.yaml b/charts/kubeflow/apps/pipeline/upstream/base/pipeline/ml-pipeline-visualization-deployment.yaml
index b6d1e11..e3773c4 100644
--- a/charts/kubeflow/apps/pipeline/upstream/base/pipeline/ml-pipeline-visualization-deployment.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/base/pipeline/ml-pipeline-visualization-deployment.yaml
@@ -15,8 +15,11 @@ spec:
annotations:
cluster-autoscaler.kubernetes.io/safe-to-evict: "true"
spec:
+ securityContext:
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - image: gcr.io/ml-pipeline/visualization-server:dummy
+ - image: ghcr.io/kubeflow/kfp-visualization-server:dummy
imagePullPolicy: IfNotPresent
name: ml-pipeline-visualizationserver
ports:
@@ -46,6 +49,14 @@ spec:
initialDelaySeconds: 3
periodSeconds: 5
timeoutSeconds: 2
+ securityContext:
+ allowPrivilegeEscalation: false
+ runAsNonRoot: true
+ runAsUser: 1000
+ runAsGroup: 0
+ capabilities:
+ drop:
+ - ALL
resources:
requests:
cpu: 30m
diff --git a/charts/kubeflow/apps/pipeline/upstream/base/pipeline/pipeline-runner-role.yaml b/charts/kubeflow/apps/pipeline/upstream/base/pipeline/pipeline-runner-role.yaml
index c81e728..e81fd91 100644
--- a/charts/kubeflow/apps/pipeline/upstream/base/pipeline/pipeline-runner-role.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/base/pipeline/pipeline-runner-role.yaml
@@ -78,32 +78,3 @@ rules:
- seldondeployments
verbs:
- '*'
-- apiGroups:
- - tekton.dev
- resources:
- - pipelineruns
- - taskruns
- - conditions
- - runs
- - tasks
- - customruns
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
-- apiGroups:
- - custom.tekton.dev
- resources:
- - pipelineloops
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
diff --git a/charts/kubeflow/apps/pipeline/upstream/base/postgresql/pipeline/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/base/postgresql/pipeline/kustomization.yaml
index 59e2d7d..c9ec855 100644
--- a/charts/kubeflow/apps/pipeline/upstream/base/postgresql/pipeline/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/base/postgresql/pipeline/kustomization.yaml
@@ -1,6 +1,6 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- - ../../pipeline
+- ../../pipeline
patches:
- - path: ml-pipeline-apiserver-deployment-patch.yaml
+- path: ml-pipeline-apiserver-deployment-patch.yaml
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/cert-manager/base/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/base/webhook/kustomization.yaml
similarity index 50%
rename from charts/kubeflow/apps/kfp-tekton/upstream/v1/env/cert-manager/base/kustomization.yaml
rename to charts/kubeflow/apps/pipeline/upstream/base/webhook/kustomization.yaml
index 75633f3..e63298e 100644
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/cert-manager/base/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/base/webhook/kustomization.yaml
@@ -3,11 +3,8 @@ kind: Kustomization
namespace: kubeflow
resources:
- - cache-cert-issuer.yaml
- - cache-cert.yaml
- - cache-webhook-config.yaml
-commonLabels:
- app: cache-server-cert-manager
+- pipelineversion-validating-webhook-config.yaml
+- pipelineversion-mutating-webhook-config.yaml
configurations:
- params.yaml
diff --git a/charts/kubeflow/apps/pipeline/upstream/base/webhook/params.yaml b/charts/kubeflow/apps/pipeline/upstream/base/webhook/params.yaml
new file mode 100644
index 0000000..911553f
--- /dev/null
+++ b/charts/kubeflow/apps/pipeline/upstream/base/webhook/params.yaml
@@ -0,0 +1,13 @@
+varReference:
+ - path: metadata/annotations
+ kind: ValidatingWebhookConfiguration
+ - path: webhooks/clientConfig/service/namespace
+ kind: ValidatingWebhookConfiguration
+ - path: webhooks/name
+ kind: ValidatingWebhookConfiguration
+ - path: metadata/annotations
+ kind: MutatingWebhookConfiguration
+ - path: webhooks/clientConfig/service/namespace
+ kind: MutatingWebhookConfiguration
+ - path: webhooks/name
+ kind: MutatingWebhookConfiguration
diff --git a/charts/kubeflow/apps/pipeline/upstream/base/webhook/pipelineversion-mutating-webhook-config.yaml b/charts/kubeflow/apps/pipeline/upstream/base/webhook/pipelineversion-mutating-webhook-config.yaml
new file mode 100644
index 0000000..949e2af
--- /dev/null
+++ b/charts/kubeflow/apps/pipeline/upstream/base/webhook/pipelineversion-mutating-webhook-config.yaml
@@ -0,0 +1,27 @@
+apiVersion: admissionregistration.k8s.io/v1
+kind: MutatingWebhookConfiguration
+metadata:
+ name: pipelineversions.pipelines.kubeflow.org
+webhooks:
+ - name: pipelineversions.pipelines.kubeflow.org
+ rules:
+ - operations:
+ - CREATE
+ - UPDATE
+ apiGroups:
+ - pipelines.kubeflow.org
+ apiVersions:
+ - v2beta1
+ resources:
+ - pipelineversions
+ scope: Namespaced
+ admissionReviewVersions:
+ - v1
+ sideEffects: None
+ failurePolicy: Fail
+ clientConfig:
+ service:
+ name: ml-pipeline
+ namespace: $(kfp-namespace)
+ path: /webhooks/mutate-pipelineversion
+ port: 8443
diff --git a/charts/kubeflow/apps/pipeline/upstream/base/webhook/pipelineversion-validating-webhook-config.yaml b/charts/kubeflow/apps/pipeline/upstream/base/webhook/pipelineversion-validating-webhook-config.yaml
new file mode 100644
index 0000000..9e8ef30
--- /dev/null
+++ b/charts/kubeflow/apps/pipeline/upstream/base/webhook/pipelineversion-validating-webhook-config.yaml
@@ -0,0 +1,27 @@
+apiVersion: admissionregistration.k8s.io/v1
+kind: ValidatingWebhookConfiguration
+metadata:
+ name: pipelineversions.pipelines.kubeflow.org
+webhooks:
+ - name: pipelineversions.pipelines.kubeflow.org
+ rules:
+ - operations:
+ - CREATE
+ - UPDATE
+ apiGroups:
+ - pipelines.kubeflow.org
+ apiVersions:
+ - v2beta1
+ resources:
+ - pipelineversions
+ scope: Namespaced
+ admissionReviewVersions:
+ - v1
+ sideEffects: None
+ failurePolicy: Fail
+ clientConfig:
+ service:
+ name: ml-pipeline
+ namespace: $(kfp-namespace)
+ path: /webhooks/validate-pipelineversion
+ port: 8443
diff --git a/charts/kubeflow/apps/pipeline/upstream/cluster-scoped-resources-tekton/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/cluster-scoped-resources-tekton/kustomization.yaml
deleted file mode 100644
index 936b2d7..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/cluster-scoped-resources-tekton/kustomization.yaml
+++ /dev/null
@@ -1,26 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-namespace: kubeflow
-
-resources:
-- namespace.yaml
-bases:
-- ../third-party/application/cluster-scoped
-- ../base/pipeline/cluster-scoped
-- ../base/cache-deployer/cluster-scoped
-vars:
-# NOTE: var name must be unique globally to allow composition of multiple kustomize
-# packages. Therefore, we added prefix `kfp-cluster-scoped-` to distinguish it from
-# others.
-- name: kfp-cluster-scoped-namespace
- objref:
- # cache deployer sa's metadata.namespace will be first transformed by namespace field in kustomization.yaml
- # so that we only need to change kustomization.yaml's namespace field for namespace customization.
- kind: ServiceAccount
- name: kubeflow-pipelines-cache-deployer-sa
- apiVersion: v1
- fieldref:
- fieldpath: metadata.namespace
-configurations:
-- params.yaml
diff --git a/charts/kubeflow/apps/pipeline/upstream/cluster-scoped-resources-tekton/namespace.yaml b/charts/kubeflow/apps/pipeline/upstream/cluster-scoped-resources-tekton/namespace.yaml
deleted file mode 100644
index 3c65856..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/cluster-scoped-resources-tekton/namespace.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: Namespace
-metadata:
- name: '$(kfp-cluster-scoped-namespace)'
diff --git a/charts/kubeflow/apps/pipeline/upstream/cluster-scoped-resources-tekton/params.yaml b/charts/kubeflow/apps/pipeline/upstream/cluster-scoped-resources-tekton/params.yaml
deleted file mode 100644
index cc253fe..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/cluster-scoped-resources-tekton/params.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-# Allow Kustomize var to replace following fields.
-varReference:
-- path: metadata/name
- kind: Namespace
diff --git a/charts/kubeflow/apps/pipeline/upstream/cluster-scoped-resources/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/cluster-scoped-resources/kustomization.yaml
index db34bc7..3f87409 100644
--- a/charts/kubeflow/apps/pipeline/upstream/cluster-scoped-resources/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/cluster-scoped-resources/kustomization.yaml
@@ -13,14 +13,14 @@ vars:
# NOTE: var name must be unique globally to allow composition of multiple kustomize
# packages. Therefore, we added prefix `kfp-cluster-scoped-` to distinguish it from
# others.
-- name: kfp-cluster-scoped-namespace
+- fieldref:
+ fieldPath: metadata.namespace
+ name: kfp-cluster-scoped-namespace
objref:
# cache deployer sa's metadata.namespace will be first transformed by namespace field in kustomization.yaml
# so that we only need to change kustomization.yaml's namespace field for namespace customization.
+ apiVersion: v1
kind: ServiceAccount
name: kubeflow-pipelines-cache-deployer-sa
- apiVersion: v1
- fieldref:
- fieldpath: metadata.namespace
configurations:
- params.yaml
diff --git a/charts/kubeflow/apps/pipeline/upstream/env/aws/README.md b/charts/kubeflow/apps/pipeline/upstream/env/aws/README.md
index 4502094..978adf1 100644
--- a/charts/kubeflow/apps/pipeline/upstream/env/aws/README.md
+++ b/charts/kubeflow/apps/pipeline/upstream/env/aws/README.md
@@ -38,13 +38,13 @@ Follow this [doc](https://awslabs.github.io/kubeflow-manifests/docs/deployment/r
5. Install
```
-kubectl apply -k ../../cluster-scoped-resources
+kustomize build ../../cluster-scoped-resources | kubectl apply -f -
# If upper one action got failed, e.x. you used wrong value, try delete, fix and apply again
# kubectl delete -k ../../cluster-scoped-resources
kubectl wait crd/applications.app.k8s.io --for condition=established --timeout=60s
-kubectl apply -k ./
+kustomize build ./ | kubectl apply -f -
# If upper one action got failed, e.x. you used wrong value, try delete, fix and apply again
# kubectl delete -k ./
diff --git a/charts/kubeflow/apps/pipeline/upstream/env/aws/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/env/aws/kustomization.yaml
index c3f3ab9..93a5bc5 100644
--- a/charts/kubeflow/apps/pipeline/upstream/env/aws/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/env/aws/kustomization.yaml
@@ -2,33 +2,38 @@ apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
namespace: kubeflow
resources:
- - ../../env/platform-agnostic
+- ../../env/platform-agnostic
configMapGenerator:
- - name: pipeline-install-config
- env: params.env
- behavior: merge
- - name: workflow-controller-configmap
- behavior: replace
- files:
- - config
- - name: ml-pipeline-ui-configmap
- behavior: replace
- files:
- - viewer-pod-template.json
+- behavior: merge
+ envs:
+ - params.env
+ name: pipeline-install-config
+- behavior: replace
+ files:
+ - config
+ name: workflow-controller-configmap
+- behavior: replace
+ files:
+ - viewer-pod-template.json
+ name: ml-pipeline-ui-configmap
secretGenerator:
- - name: mysql-secret
- env: secret.env
- behavior: merge
- - name: mlpipeline-minio-artifact
- env: minio-artifact-secret-patch.env
- behavior: merge
+- behavior: merge
+ envs:
+ - secret.env
+ name: mysql-secret
+- behavior: merge
+ envs:
+ - minio-artifact-secret-patch.env
+ name: mlpipeline-minio-artifact
generatorOptions:
disableNameSuffixHash: true
patches:
- - path: aws-configuration-pipeline-patch.yaml
- - path: aws-configuration-pipeline-ui-patch.yaml
+- path: aws-configuration-pipeline-patch.yaml
+- path: aws-configuration-pipeline-ui-patch.yaml
# Identifier for application manager to apply ownerReference.
# The ownerReference ensures the resources get garbage collected
# when application is deleted.
-commonLabels:
- application-crd-id: kubeflow-pipelines
+labels:
+- includeSelectors: true
+ pairs:
+ application-crd-id: kubeflow-pipelines
diff --git a/charts/kubeflow/apps/pipeline/upstream/env/azure/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/env/azure/kustomization.yaml
index 3bc71cf..75efe95 100644
--- a/charts/kubeflow/apps/pipeline/upstream/env/azure/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/env/azure/kustomization.yaml
@@ -9,17 +9,21 @@ resources:
- minio-azure-gateway
configMapGenerator:
-- name: pipeline-install-config
- env: params.env
- behavior: merge
+- behavior: merge
+ envs:
+ - params.env
+ name: pipeline-install-config
secretGenerator:
-- name: mysql-secret
- env: mysql-secret.env
- behavior: merge
+- behavior: merge
+ envs:
+ - mysql-secret.env
+ name: mysql-secret
# Identifier for application manager to apply ownerReference.
# The ownerReference ensures the resources get garbage collected
# when application is deleted.
-commonLabels:
- application-crd-id: kubeflow-pipelines
+labels:
+- includeSelectors: true
+ pairs:
+ application-crd-id: kubeflow-pipelines
diff --git a/charts/kubeflow/apps/pipeline/upstream/env/azure/minio-azure-gateway/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/env/azure/minio-azure-gateway/kustomization.yaml
index db350a6..65a0957 100644
--- a/charts/kubeflow/apps/pipeline/upstream/env/azure/minio-azure-gateway/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/env/azure/minio-azure-gateway/kustomization.yaml
@@ -6,8 +6,9 @@ resources:
- minio-azure-gateway-service.yaml
secretGenerator:
-- name: mlpipeline-minio-artifact
- env: minio-artifact-secret.env
+- envs:
+ - minio-artifact-secret.env
+ name: mlpipeline-minio-artifact
generatorOptions:
# mlpipeline-minio-artifact needs to be referred by exact name
- disableNameSuffixHash: true
\ No newline at end of file
+ disableNameSuffixHash: true
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/env/cert-manager/base/cache-cert-issuer.yaml b/charts/kubeflow/apps/pipeline/upstream/env/cert-manager/base-webhook-certs/kfp-api-cert-issuer.yaml
similarity index 50%
rename from charts/kubeflow/apps/kfp-tekton/upstream/env/cert-manager/base/cache-cert-issuer.yaml
rename to charts/kubeflow/apps/pipeline/upstream/env/cert-manager/base-webhook-certs/kfp-api-cert-issuer.yaml
index 1c0ba59..9b5f357 100644
--- a/charts/kubeflow/apps/kfp-tekton/upstream/env/cert-manager/base/cache-cert-issuer.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/env/cert-manager/base-webhook-certs/kfp-api-cert-issuer.yaml
@@ -1,6 +1,6 @@
apiVersion: cert-manager.io/v1
kind: Issuer
metadata:
- name: kfp-cache-selfsigned-issuer
+ name: kfp-api-webhook-selfsigned-issuer
spec:
- selfSigned: {}
\ No newline at end of file
+ selfSigned: {}
diff --git a/charts/kubeflow/apps/pipeline/upstream/env/cert-manager/base-webhook-certs/kfp-api-cert.yaml b/charts/kubeflow/apps/pipeline/upstream/env/cert-manager/base-webhook-certs/kfp-api-cert.yaml
new file mode 100644
index 0000000..b849254
--- /dev/null
+++ b/charts/kubeflow/apps/pipeline/upstream/env/cert-manager/base-webhook-certs/kfp-api-cert.yaml
@@ -0,0 +1,15 @@
+apiVersion: cert-manager.io/v1
+kind: Certificate
+metadata:
+ name: kfp-api-webhook-cert
+spec:
+ commonName: kfp-api-webhook-cert
+ isCA: true
+ dnsNames:
+ - ml-pipeline
+ - ml-pipeline.$(kfp-namespace)
+ - ml-pipeline.$(kfp-namespace).svc
+ issuerRef:
+ kind: Issuer
+ name: kfp-api-webhook-selfsigned-issuer
+ secretName: kfp-api-webhook-cert
diff --git a/charts/kubeflow/apps/pipeline/upstream/env/cert-manager/base-webhook-certs/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/env/cert-manager/base-webhook-certs/kustomization.yaml
new file mode 100644
index 0000000..adb6246
--- /dev/null
+++ b/charts/kubeflow/apps/pipeline/upstream/env/cert-manager/base-webhook-certs/kustomization.yaml
@@ -0,0 +1,13 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+kind: Kustomization
+
+resources:
+- ./kfp-api-cert-issuer.yaml
+- ./kfp-api-cert.yaml
+
+configurations:
+- params.yaml
+
+# !!! If you want to customize the namespace,
+# please also update base/cache-deployer/cluster-scoped/cache-deployer-clusterrolebinding.yaml
+namespace: kubeflow
diff --git a/charts/kubeflow/apps/pipeline/upstream/env/cert-manager/base-webhook-certs/params.yaml b/charts/kubeflow/apps/pipeline/upstream/env/cert-manager/base-webhook-certs/params.yaml
new file mode 100644
index 0000000..d203c6b
--- /dev/null
+++ b/charts/kubeflow/apps/pipeline/upstream/env/cert-manager/base-webhook-certs/params.yaml
@@ -0,0 +1,7 @@
+varReference:
+ - path: spec/commonName
+ kind: Certificate
+ - path: spec/dnsNames
+ kind: Certificate
+ - path: spec/issuerRef/name
+ kind: Certificate
diff --git a/charts/kubeflow/apps/pipeline/upstream/env/cert-manager/base/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/env/cert-manager/base/kustomization.yaml
index 14cacd9..166e8d8 100644
--- a/charts/kubeflow/apps/pipeline/upstream/env/cert-manager/base/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/env/cert-manager/base/kustomization.yaml
@@ -1,13 +1,15 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
-namespace: kubeflow
+namespace: kubeflow
resources:
- - cache-cert-issuer.yaml
- - cache-cert.yaml
- - cache-webhook-config.yaml
-commonLabels:
- app: cache-server-cert-manager
+- cache-cert-issuer.yaml
+- cache-cert.yaml
+- cache-webhook-config.yaml
configurations:
- params.yaml
+labels:
+- includeSelectors: true
+ pairs:
+ app: cache-server-cert-manager
diff --git a/charts/kubeflow/apps/pipeline/upstream/env/cert-manager/platform-agnostic-k8s-native/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/env/cert-manager/platform-agnostic-k8s-native/kustomization.yaml
new file mode 100644
index 0000000..18b2718
--- /dev/null
+++ b/charts/kubeflow/apps/pipeline/upstream/env/cert-manager/platform-agnostic-k8s-native/kustomization.yaml
@@ -0,0 +1,30 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+kind: Kustomization
+
+resources:
+- ../../../base/crds
+- ../../platform-agnostic
+- ../../../base/webhook
+- ../base-webhook-certs/
+
+# !!! If you want to customize the namespace,
+# please also update base/cache-deployer/cluster-scoped/cache-deployer-clusterrolebinding.yaml
+namespace: kubeflow
+
+patches:
+- path: patches/deployment.yaml
+ target:
+ kind: Deployment
+ name: ml-pipeline
+- path: patches/service.yaml
+ target:
+ kind: Service
+ name: ml-pipeline
+- path: patches/validating-webhook.yaml
+ target:
+ kind: ValidatingWebhookConfiguration
+ name: pipelineversions.pipelines.kubeflow.org
+- path: patches/mutating-webhook.yaml
+ target:
+ kind: MutatingWebhookConfiguration
+ name: pipelineversions.pipelines.kubeflow.org
diff --git a/charts/kubeflow/apps/pipeline/upstream/env/cert-manager/platform-agnostic-k8s-native/patches/deployment.yaml b/charts/kubeflow/apps/pipeline/upstream/env/cert-manager/platform-agnostic-k8s-native/patches/deployment.yaml
new file mode 100644
index 0000000..9895c15
--- /dev/null
+++ b/charts/kubeflow/apps/pipeline/upstream/env/cert-manager/platform-agnostic-k8s-native/patches/deployment.yaml
@@ -0,0 +1,29 @@
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+ name: ml-pipeline
+spec:
+ template:
+ spec:
+ containers:
+ - name: ml-pipeline-api-server
+ ports:
+ - containerPort: 8443
+ name: webhook
+ command:
+ - "/bin/apiserver"
+ args:
+ - "--config=/config"
+ - "--sampleconfig=/config/sample_config.json"
+ - "-logtostderr=true"
+ - "--webhookTLSCertPath=/etc/webhook/certs/tls.crt"
+ - "--webhookTLSKeyPath=/etc/webhook/certs/tls.key"
+ - "--pipelinesStoreKubernetes=true"
+ volumeMounts:
+ - name: webhook-certs
+ mountPath: /etc/webhook/certs
+ readOnly: true
+ volumes:
+ - name: webhook-certs
+ secret:
+ secretName: kfp-api-webhook-cert
diff --git a/charts/kubeflow/apps/pipeline/upstream/env/cert-manager/platform-agnostic-k8s-native/patches/mutating-webhook.yaml b/charts/kubeflow/apps/pipeline/upstream/env/cert-manager/platform-agnostic-k8s-native/patches/mutating-webhook.yaml
new file mode 100644
index 0000000..35a074d
--- /dev/null
+++ b/charts/kubeflow/apps/pipeline/upstream/env/cert-manager/platform-agnostic-k8s-native/patches/mutating-webhook.yaml
@@ -0,0 +1,6 @@
+apiVersion: admissionregistration.k8s.io/v1
+kind: MutatingWebhookConfiguration
+metadata:
+ name: pipelineversions.pipelines.kubeflow.org
+ annotations:
+ cert-manager.io/inject-ca-from: $(kfp-namespace)/kfp-api-webhook-cert
diff --git a/charts/kubeflow/apps/pipeline/upstream/env/cert-manager/platform-agnostic-k8s-native/patches/service.yaml b/charts/kubeflow/apps/pipeline/upstream/env/cert-manager/platform-agnostic-k8s-native/patches/service.yaml
new file mode 100644
index 0000000..9870eb7
--- /dev/null
+++ b/charts/kubeflow/apps/pipeline/upstream/env/cert-manager/platform-agnostic-k8s-native/patches/service.yaml
@@ -0,0 +1,10 @@
+apiVersion: v1
+kind: Service
+metadata:
+ name: ml-pipeline
+spec:
+ ports:
+ - name: webhook
+ port: 8443
+ protocol: TCP
+ targetPort: 8443
diff --git a/charts/kubeflow/apps/pipeline/upstream/env/cert-manager/platform-agnostic-k8s-native/patches/validating-webhook.yaml b/charts/kubeflow/apps/pipeline/upstream/env/cert-manager/platform-agnostic-k8s-native/patches/validating-webhook.yaml
new file mode 100644
index 0000000..5cbc289
--- /dev/null
+++ b/charts/kubeflow/apps/pipeline/upstream/env/cert-manager/platform-agnostic-k8s-native/patches/validating-webhook.yaml
@@ -0,0 +1,6 @@
+apiVersion: admissionregistration.k8s.io/v1
+kind: ValidatingWebhookConfiguration
+metadata:
+ name: pipelineversions.pipelines.kubeflow.org
+ annotations:
+ cert-manager.io/inject-ca-from: $(kfp-namespace)/kfp-api-webhook-cert
diff --git a/charts/kubeflow/apps/pipeline/upstream/env/cert-manager/platform-agnostic-multi-user-k8s-native/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/env/cert-manager/platform-agnostic-multi-user-k8s-native/kustomization.yaml
new file mode 100644
index 0000000..8fbecf9
--- /dev/null
+++ b/charts/kubeflow/apps/pipeline/upstream/env/cert-manager/platform-agnostic-multi-user-k8s-native/kustomization.yaml
@@ -0,0 +1,30 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+kind: Kustomization
+
+resources:
+- ../../../base/crds
+- ../platform-agnostic-multi-user
+- ../../../base/webhook
+- ../base-webhook-certs/
+
+# !!! If you want to customize the namespace,
+# please also update base/cache-deployer/cluster-scoped/cache-deployer-clusterrolebinding.yaml
+namespace: kubeflow
+
+patches:
+- path: patches/deployment.yaml
+ target:
+ kind: Deployment
+ name: ml-pipeline
+- path: patches/service.yaml
+ target:
+ kind: Service
+ name: ml-pipeline
+- path: patches/validating-webhook.yaml
+ target:
+ kind: ValidatingWebhookConfiguration
+ name: pipelineversions.pipelines.kubeflow.org
+- path: patches/mutating-webhook.yaml
+ target:
+ kind: MutatingWebhookConfiguration
+ name: pipelineversions.pipelines.kubeflow.org
diff --git a/charts/kubeflow/apps/pipeline/upstream/env/cert-manager/platform-agnostic-multi-user-k8s-native/patches/deployment.yaml b/charts/kubeflow/apps/pipeline/upstream/env/cert-manager/platform-agnostic-multi-user-k8s-native/patches/deployment.yaml
new file mode 100644
index 0000000..94c086e
--- /dev/null
+++ b/charts/kubeflow/apps/pipeline/upstream/env/cert-manager/platform-agnostic-multi-user-k8s-native/patches/deployment.yaml
@@ -0,0 +1,30 @@
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+ name: ml-pipeline
+spec:
+ template:
+ spec:
+ containers:
+ - name: ml-pipeline-api-server
+ ports:
+ - containerPort: 8443
+ name: webhook
+ image: domain.local/apiserver:local
+ command:
+ - "/bin/apiserver"
+ args:
+ - "--config=/config"
+ - "--sampleconfig=/config/sample_config.json"
+ - "-logtostderr=true"
+ - "--webhookTLSCertPath=/etc/webhook/certs/tls.crt"
+ - "--webhookTLSKeyPath=/etc/webhook/certs/tls.key"
+ - "--pipelinesStoreKubernetes=true"
+ volumeMounts:
+ - name: webhook-certs
+ mountPath: /etc/webhook/certs
+ readOnly: true
+ volumes:
+ - name: webhook-certs
+ secret:
+ secretName: kfp-api-webhook-cert
diff --git a/charts/kubeflow/apps/pipeline/upstream/env/cert-manager/platform-agnostic-multi-user-k8s-native/patches/mutating-webhook.yaml b/charts/kubeflow/apps/pipeline/upstream/env/cert-manager/platform-agnostic-multi-user-k8s-native/patches/mutating-webhook.yaml
new file mode 100644
index 0000000..35a074d
--- /dev/null
+++ b/charts/kubeflow/apps/pipeline/upstream/env/cert-manager/platform-agnostic-multi-user-k8s-native/patches/mutating-webhook.yaml
@@ -0,0 +1,6 @@
+apiVersion: admissionregistration.k8s.io/v1
+kind: MutatingWebhookConfiguration
+metadata:
+ name: pipelineversions.pipelines.kubeflow.org
+ annotations:
+ cert-manager.io/inject-ca-from: $(kfp-namespace)/kfp-api-webhook-cert
diff --git a/charts/kubeflow/apps/pipeline/upstream/env/cert-manager/platform-agnostic-multi-user-k8s-native/patches/service.yaml b/charts/kubeflow/apps/pipeline/upstream/env/cert-manager/platform-agnostic-multi-user-k8s-native/patches/service.yaml
new file mode 100644
index 0000000..9870eb7
--- /dev/null
+++ b/charts/kubeflow/apps/pipeline/upstream/env/cert-manager/platform-agnostic-multi-user-k8s-native/patches/service.yaml
@@ -0,0 +1,10 @@
+apiVersion: v1
+kind: Service
+metadata:
+ name: ml-pipeline
+spec:
+ ports:
+ - name: webhook
+ port: 8443
+ protocol: TCP
+ targetPort: 8443
diff --git a/charts/kubeflow/apps/pipeline/upstream/env/cert-manager/platform-agnostic-multi-user-k8s-native/patches/validating-webhook.yaml b/charts/kubeflow/apps/pipeline/upstream/env/cert-manager/platform-agnostic-multi-user-k8s-native/patches/validating-webhook.yaml
new file mode 100644
index 0000000..5cbc289
--- /dev/null
+++ b/charts/kubeflow/apps/pipeline/upstream/env/cert-manager/platform-agnostic-multi-user-k8s-native/patches/validating-webhook.yaml
@@ -0,0 +1,6 @@
+apiVersion: admissionregistration.k8s.io/v1
+kind: ValidatingWebhookConfiguration
+metadata:
+ name: pipelineversions.pipelines.kubeflow.org
+ annotations:
+ cert-manager.io/inject-ca-from: $(kfp-namespace)/kfp-api-webhook-cert
diff --git a/charts/kubeflow/apps/pipeline/upstream/env/cert-manager/platform-agnostic-multi-user/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/env/cert-manager/platform-agnostic-multi-user/kustomization.yaml
index 860c6e1..5734681 100644
--- a/charts/kubeflow/apps/pipeline/upstream/env/cert-manager/platform-agnostic-multi-user/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/env/cert-manager/platform-agnostic-multi-user/kustomization.yaml
@@ -2,30 +2,30 @@ apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- - ../../platform-agnostic-multi-user
- - ../base
+- ../../platform-agnostic-multi-user
+- ../base
namespace: kubeflow
# Pass proper arguments to cache-server to use cert-manager certificate
patches:
- # Delete the cache deployer as we use the cert-manager instead
- - path: patches/delete.clusterrole.cache-deployer.yaml
- - path: patches/delete.crb.cache-deployer.yaml
- - path: patches/delete.deployment.cache-deployer.yaml
- - path: patches/delete.role.cache-deployer.yaml
- - path: patches/delete.rolebinding.cache-deployer.yaml
- - path: patches/delete.sa.cache-deployer.yaml
- - patch: |-
- - op: add
- path: /spec/template/spec/containers/0/args/-
- value: "--tls_cert_filename=tls.crt"
- target:
- kind: Deployment
- name: cache-server
- - patch: |-
- - op: add
- path: /spec/template/spec/containers/0/args/-
- value: "--tls_key_filename=tls.key"
- target:
- kind: Deployment
- name: cache-server
+# Delete the cache deployer as we use the cert-manager instead
+- path: patches/delete.clusterrole.cache-deployer.yaml
+- path: patches/delete.crb.cache-deployer.yaml
+- path: patches/delete.deployment.cache-deployer.yaml
+- path: patches/delete.role.cache-deployer.yaml
+- path: patches/delete.rolebinding.cache-deployer.yaml
+- path: patches/delete.sa.cache-deployer.yaml
+- patch: |-
+ - op: add
+ path: /spec/template/spec/containers/0/args/-
+ value: "--tls_cert_filename=tls.crt"
+ target:
+ kind: Deployment
+ name: cache-server
+- patch: |-
+ - op: add
+ path: /spec/template/spec/containers/0/args/-
+ value: "--tls_key_filename=tls.key"
+ target:
+ kind: Deployment
+ name: cache-server
diff --git a/charts/kubeflow/apps/pipeline/upstream/env/dev-kind/forward-local-api-endpoint.yaml b/charts/kubeflow/apps/pipeline/upstream/env/dev-kind/forward-local-api-endpoint.yaml
new file mode 100644
index 0000000..4909261
--- /dev/null
+++ b/charts/kubeflow/apps/pipeline/upstream/env/dev-kind/forward-local-api-endpoint.yaml
@@ -0,0 +1,21 @@
+---
+apiVersion: v1
+kind: Endpoints
+metadata:
+ name: ml-pipeline
+subsets:
+ - addresses:
+ - ip: 172.17.0.1 # docker0 bridge ip
+ ports:
+ - name: http
+ appProtocol: http
+ port: 8887
+ protocol: TCP
+ - name: grpc
+ appProtocol: http
+ port: 8888
+ protocol: TCP
+ - name: webhook
+ appProtocol: http
+ port: 8443
+ protocol: TCP
diff --git a/charts/kubeflow/apps/pipeline/upstream/env/dev-kind/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/env/dev-kind/kustomization.yaml
new file mode 100644
index 0000000..fd65eab
--- /dev/null
+++ b/charts/kubeflow/apps/pipeline/upstream/env/dev-kind/kustomization.yaml
@@ -0,0 +1,166 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+kind: Kustomization
+
+resources:
+- ../cert-manager/platform-agnostic-k8s-native
+- ./forward-local-api-endpoint.yaml
+
+# !!! If you want to customize the namespace,
+# please refer sample/cluster-scoped-resources to update the namespace for cluster-scoped-resources
+namespace: kubeflow
+
+patches:
+- patch: |-
+ apiVersion: v1
+ kind: Service
+ metadata:
+ name: ml-pipeline-ui
+ namespace: kubeflow
+ spec:
+ ports:
+ - $patch: replace
+ - name: http
+ port: 80
+ protocol: TCP
+ targetPort: 3000
+ nodePort: 30300
+ type: NodePort
+- patch: |-
+ apiVersion: v1
+ kind: Service
+ metadata:
+ name: mysql
+ namespace: kubeflow
+ spec:
+ ports:
+ - $patch: replace
+ - port: 3306
+ protocol: TCP
+ targetPort: 3306
+ nodePort: 30330
+ type: NodePort
+- patch: |-
+ apiVersion: v1
+ kind: Service
+ metadata:
+ name: metadata-grpc-service
+ namespace: kubeflow
+ spec:
+ ports:
+ - $patch: replace
+ - port: 8080
+ protocol: TCP
+ targetPort: 8080
+ nodePort: 30808
+ type: NodePort
+- patch: |-
+ apiVersion: v1
+ kind: Service
+ metadata:
+ name: minio-service
+ namespace: kubeflow
+ spec:
+ ports:
+ - $patch: replace
+ - port: 9000
+ protocol: TCP
+ targetPort: 9000
+ nodePort: 30900
+ type: NodePort
+- patch: |-
+ apiVersion: v1
+ kind: Service
+ metadata:
+ name: ml-pipeline-visualizationserver
+ namespace: kubeflow
+ spec:
+ ports:
+ - $patch: replace
+ - port: 8888
+ protocol: TCP
+ targetPort: 8888
+ nodePort: 30889
+ type: NodePort
+- patch: |-
+ apiVersion: apps/v1
+ kind: Deployment
+ metadata:
+ name: ml-pipeline
+ namespace: kubeflow
+ spec:
+ replicas: 0
+- patch: |-
+ apiVersion: apps/v1
+ kind: Deployment
+ metadata:
+ name: ml-pipeline-ui
+ namespace: kubeflow
+ spec:
+ template:
+ spec:
+ containers:
+ - name: ml-pipeline-ui
+ env:
+ - name: ML_PIPELINE_SERVICE_HOST
+ value: ml-pipeline
+ - name: ML_PIPELINE_SERVICE_PORT
+ value: "8888"
+ - name: DISABLE_GKE_METADATA
+ value: "true"
+- patch: |-
+ apiVersion: v1
+ kind: Service
+ metadata:
+ name: ml-pipeline
+ namespace: kubeflow
+ spec:
+ clusterIP: None
+ ports:
+ - $patch: replace
+ - name: http
+ port: 8888
+ protocol: TCP
+ targetPort: 8888
+ - name: grpc
+ port: 8887
+ protocol: TCP
+ targetPort: 8887
+ - name: webhook
+ port: 8443
+ protocol: TCP
+ targetPort: 8443
+ selector:
+ $patch: delete
+- patch: |-
+ apiVersion: admissionregistration.k8s.io/v1
+ kind: ValidatingWebhookConfiguration
+ metadata:
+ name: pipelineversions.pipelines.kubeflow.org
+ webhooks:
+ - name: pipelineversions.pipelines.kubeflow.org
+ clientConfig:
+ service:
+ name: ml-pipeline-reverse-proxy
+- patch: |-
+ apiVersion: admissionregistration.k8s.io/v1
+ kind: MutatingWebhookConfiguration
+ metadata:
+ name: pipelineversions.pipelines.kubeflow.org
+ webhooks:
+ - name: pipelineversions.pipelines.kubeflow.org
+ clientConfig:
+ service:
+ name: ml-pipeline-reverse-proxy
+- patch: |-
+ apiVersion: cert-manager.io/v1
+ kind: Certificate
+ metadata:
+ name: kfp-api-webhook-cert
+ spec:
+ dnsNames:
+ - ml-pipeline
+ - ml-pipeline.$(kfp-namespace)
+ - ml-pipeline.$(kfp-namespace).svc
+ - ml-pipeline-reverse-proxy
+ - ml-pipeline-reverse-proxy.$(kfp-namespace)
+ - ml-pipeline-reverse-proxy.$(kfp-namespace).svc
diff --git a/charts/kubeflow/apps/pipeline/upstream/env/dev/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/env/dev/kustomization.yaml
index acb58bd..5e467de 100644
--- a/charts/kubeflow/apps/pipeline/upstream/env/dev/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/env/dev/kustomization.yaml
@@ -2,18 +2,19 @@ apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- # Application controller is used to provide Google Cloud Console integration.
- - ../../third-party/application
- - ../../base/application
- - ../platform-agnostic
- - ../gcp/inverse-proxy
-
-# Identifier for application manager to apply ownerReference.
-# The ownerReference ensures the resources get garbage collected
-# when application is deleted.
-commonLabels:
- application-crd-id: kubeflow-pipelines
+# Application controller is used to provide Google Cloud Console integration.
+- ../../third-party/application
+- ../../base/application
+- ../platform-agnostic
+- ../gcp/inverse-proxy
# !!! If you want to customize the namespace,
# please refer sample/cluster-scoped-resources to update the namespace for cluster-scoped-resources
namespace: kubeflow
+# Identifier for application manager to apply ownerReference.
+# The ownerReference ensures the resources get garbage collected
+# when application is deleted.
+labels:
+- includeSelectors: true
+ pairs:
+ application-crd-id: kubeflow-pipelines
diff --git a/charts/kubeflow/apps/pipeline/upstream/env/dev/postgresql/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/env/dev/postgresql/kustomization.yaml
index 2a6c495..2799056 100644
--- a/charts/kubeflow/apps/pipeline/upstream/env/dev/postgresql/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/env/dev/postgresql/kustomization.yaml
@@ -2,18 +2,20 @@ apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- # Application controller is used to provide Google Cloud Console integration.
- - ../../../third-party/application
- - ../../../base/application
- - ../../platform-agnostic-postgresql
- - ../../gcp/inverse-proxy
-
-# Identifier for application manager to apply ownerReference.
-# The ownerReference ensures the resources get garbage collected
-# when application is deleted.
-commonLabels:
- application-crd-id: kubeflow-pipelines
+# Application controller is used to provide Google Cloud Console integration.
+- ../../../third-party/application
+- ../../../base/application
+- ../../platform-agnostic-postgresql
+- ../../gcp/inverse-proxy
# !!! If you want to customize the namespace,
# please refer sample/cluster-scoped-resources to update the namespace for cluster-scoped-resources
namespace: kubeflow
+
+# Identifier for application manager to apply ownerReference.
+# The ownerReference ensures the resources get garbage collected
+# when application is deleted.
+labels:
+- includeSelectors: true
+ pairs:
+ application-crd-id: kubeflow-pipelines
diff --git a/charts/kubeflow/apps/pipeline/upstream/env/gcp/gcp-configurations-patch.yaml b/charts/kubeflow/apps/pipeline/upstream/env/gcp/gcp-configurations-patch.yaml
index 5e725b5..969bdd5 100644
--- a/charts/kubeflow/apps/pipeline/upstream/env/gcp/gcp-configurations-patch.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/env/gcp/gcp-configurations-patch.yaml
@@ -20,3 +20,17 @@ spec:
configMapKeyRef:
name: pipeline-install-config
key: gcsProjectId
+
+---
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+ name: ml-pipeline-ui
+spec:
+ template:
+ spec:
+ containers:
+ - name: ml-pipeline-ui
+ env:
+ - name: DISABLE_GKE_METADATA
+ value: 'false'
\ No newline at end of file
diff --git a/charts/kubeflow/apps/pipeline/upstream/env/gcp/inverse-proxy/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/env/gcp/inverse-proxy/kustomization.yaml
index 523f13f..66a96b6 100644
--- a/charts/kubeflow/apps/pipeline/upstream/env/gcp/inverse-proxy/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/env/gcp/inverse-proxy/kustomization.yaml
@@ -1,8 +1,8 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
images:
- - name: gcr.io/ml-pipeline/inverse-proxy-agent
- newTag: 2.2.0
+ - name: ghcr.io/kubeflow/kfp-inverse-proxy-agent
+ newTag: 2.5.0
resources:
- proxy-configmap.yaml
- proxy-deployment.yaml
diff --git a/charts/kubeflow/apps/pipeline/upstream/env/gcp/inverse-proxy/proxy-deployment.yaml b/charts/kubeflow/apps/pipeline/upstream/env/gcp/inverse-proxy/proxy-deployment.yaml
index faf3e47..ef73cee 100644
--- a/charts/kubeflow/apps/pipeline/upstream/env/gcp/inverse-proxy/proxy-deployment.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/env/gcp/inverse-proxy/proxy-deployment.yaml
@@ -15,7 +15,7 @@ spec:
spec:
hostNetwork: true
containers:
- - image: gcr.io/ml-pipeline/inverse-proxy-agent:dummy
+ - image: ghcr.io/kubeflow/kfp-inverse-proxy-agent:dummy
imagePullPolicy: IfNotPresent
name: proxy-agent
serviceAccountName: proxy-agent-runner
diff --git a/charts/kubeflow/apps/pipeline/upstream/env/gcp/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/env/gcp/kustomization.yaml
index d4a81b0..99837f5 100644
--- a/charts/kubeflow/apps/pipeline/upstream/env/gcp/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/env/gcp/kustomization.yaml
@@ -2,31 +2,35 @@ apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- # Application controller is used to provide Google Cloud Console integration.
- - ../../third-party/application
- - ../../base/application
- - ../../base/installs/generic
- - ../../base/metadata/base
- - ../../third-party/argo/installs/namespace
- - inverse-proxy
- - minio-gcs-gateway
- - cloudsql-proxy
+# Application controller is used to provide Google Cloud Console integration.
+- ../../third-party/application
+- ../../base/application
+- ../../base/installs/generic
+- ../../base/metadata/base
+- ../../third-party/argo/installs/namespace
+- inverse-proxy
+- minio-gcs-gateway
+- cloudsql-proxy
-# Identifier for application manager to apply ownerReference.
-# The ownerReference ensures the resources get garbage collected
-# when application is deleted.
-commonLabels:
- application-crd-id: kubeflow-pipelines
# !!! If you want to customize the namespace,
# please also update base/cache-deployer/cluster-scoped/cache-deployer-clusterrolebinding.yaml
namespace: kubeflow
patches:
- - path: gcp-configurations-patch.yaml
+- path: gcp-configurations-patch.yaml
# Used by Kustomize
configMapGenerator:
- - name: pipeline-install-config
- env: params.env
- behavior: merge
+- behavior: merge
+ envs:
+ - params.env
+ name: pipeline-install-config
+
+# Identifier for application manager to apply ownerReference.
+# The ownerReference ensures the resources get garbage collected
+# when application is deleted.
+labels:
+- includeSelectors: true
+ pairs:
+ application-crd-id: kubeflow-pipelines
diff --git a/charts/kubeflow/apps/pipeline/upstream/env/gcp/minio-gcs-gateway/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/env/gcp/minio-gcs-gateway/kustomization.yaml
index 877ad81..fa4d6df 100644
--- a/charts/kubeflow/apps/pipeline/upstream/env/gcp/minio-gcs-gateway/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/env/gcp/minio-gcs-gateway/kustomization.yaml
@@ -7,8 +7,9 @@ resources:
- minio-gcs-gateway-service.yaml
secretGenerator:
-- name: mlpipeline-minio-artifact
- env: minio-artifact-secret.env
+- envs:
+ - minio-artifact-secret.env
+ name: mlpipeline-minio-artifact
generatorOptions:
# mlpipeline-minio-artifact needs to be referred by exact name
disableNameSuffixHash: true
diff --git a/charts/kubeflow/apps/pipeline/upstream/env/plain-multi-user/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/env/plain-multi-user/kustomization.yaml
index 47c8dae..8b6d13f 100644
--- a/charts/kubeflow/apps/pipeline/upstream/env/plain-multi-user/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/env/plain-multi-user/kustomization.yaml
@@ -2,21 +2,24 @@ apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- - ../../base/installs/multi-user
- - ../../base/metadata/base
- - ../../base/metadata/options/istio
- - ../../third-party/mysql/base
- - ../../third-party/mysql/options/istio
- - ../../third-party/minio/base
- - ../../third-party/minio/options/istio
- - ../../third-party/metacontroller/base
+- ../../base/installs/multi-user
+- ../../base/metadata/base
+- ../../base/metadata/options/istio
+- ../../third-party/mysql/base
+- ../../third-party/mysql/options/istio
+- ../../third-party/minio/base
+- ../../third-party/minio/options/istio
+- ../../third-party/metacontroller/base
-# Identifier for application manager to apply ownerReference.
-# The ownerReference ensures the resources get garbage collected
-# when application is deleted.
-commonLabels:
- application-crd-id: kubeflow-pipelines
# !!! If you want to customize the namespace,
# please also update base/cache-deployer/cluster-scoped/cache-deployer-clusterrolebinding.yaml
namespace: kubeflow
+
+# Identifier for application manager to apply ownerReference.
+# The ownerReference ensures the resources get garbage collected
+# when application is deleted.
+labels:
+- includeSelectors: true
+ pairs:
+ application-crd-id: kubeflow-pipelines
diff --git a/charts/kubeflow/apps/pipeline/upstream/env/plain/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/env/plain/kustomization.yaml
index d3d67e5..a60ce3a 100644
--- a/charts/kubeflow/apps/pipeline/upstream/env/plain/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/env/plain/kustomization.yaml
@@ -2,19 +2,18 @@ apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- - ../../cluster-scoped-resources-tekton
- - ../../base/installs/generic
- - ../../base/metadata/base
- - ../../third-party/minio/base
- - ../../third-party/mysql/base
+- ../../base/installs/generic
+- ../../base/metadata/base
+- ../../third-party/minio/base
+- ../../third-party/mysql/base
# Identifier for application manager to apply ownerReference.
# The ownerReference ensures the resources get garbage collected
# when application is deleted.
labels:
- - includeSelectors: true
- pairs:
- application-crd-id: kubeflow-pipelines
+- includeSelectors: true
+ pairs:
+ application-crd-id: kubeflow-pipelines
# !!! If you want to customize the namespace,
# please also update base/cache-deployer/cluster-scoped/cache-deployer-clusterrolebinding.yaml
diff --git a/charts/kubeflow/apps/pipeline/upstream/env/platform-agnostic-emissary/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/env/platform-agnostic-emissary/kustomization.yaml
index becb963..e4e22ec 100644
--- a/charts/kubeflow/apps/pipeline/upstream/env/platform-agnostic-emissary/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/env/platform-agnostic-emissary/kustomization.yaml
@@ -1,4 +1,4 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- - ../platform-agnostic
+- ../platform-agnostic
diff --git a/charts/kubeflow/apps/pipeline/upstream/env/platform-agnostic-multi-user-emissary/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/env/platform-agnostic-multi-user-emissary/kustomization.yaml
index 1a8ac8d..6a396ac 100644
--- a/charts/kubeflow/apps/pipeline/upstream/env/platform-agnostic-multi-user-emissary/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/env/platform-agnostic-multi-user-emissary/kustomization.yaml
@@ -1,4 +1,4 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- - ../platform-agnostic-multi-user
+- ../platform-agnostic-multi-user
diff --git a/charts/kubeflow/apps/pipeline/upstream/env/platform-agnostic-multi-user-legacy/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/env/platform-agnostic-multi-user-legacy/kustomization.yaml
index a8b9458..e600b13 100644
--- a/charts/kubeflow/apps/pipeline/upstream/env/platform-agnostic-multi-user-legacy/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/env/platform-agnostic-multi-user-legacy/kustomization.yaml
@@ -2,22 +2,25 @@ apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- - ../../base/installs/multi-user
- - ../../base/metadata/overlays/db
- - ../../base/metadata/options/istio
- - ../../third-party/argo/installs/cluster
- - ../../third-party/mysql/base
- - ../../third-party/mysql/options/istio
- - ../../third-party/minio/base
- - ../../third-party/minio/options/istio
- - ../../third-party/metacontroller/base
+- ../../third-party/metacontroller/base
+- ../../base/installs/multi-user
+- ../../base/metadata/overlays/db
+- ../../base/metadata/options/istio
+- ../../third-party/argo/installs/cluster
+- ../../third-party/mysql/base
+- ../../third-party/mysql/options/istio
+- ../../third-party/minio/base
+- ../../third-party/minio/options/istio
-# Identifier for application manager to apply ownerReference.
-# The ownerReference ensures the resources get garbage collected
-# when application is deleted.
-commonLabels:
- application-crd-id: kubeflow-pipelines
# !!! If you want to customize the namespace,
# please also update base/cache-deployer/cluster-scoped/cache-deployer-clusterrolebinding.yaml
namespace: kubeflow
+
+# Identifier for application manager to apply ownerReference.
+# The ownerReference ensures the resources get garbage collected
+# when application is deleted.
+labels:
+- includeSelectors: true
+ pairs:
+ application-crd-id: kubeflow-pipelines
diff --git a/charts/kubeflow/apps/pipeline/upstream/env/platform-agnostic-multi-user/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/env/platform-agnostic-multi-user/kustomization.yaml
index 8196133..aa4d6c6 100644
--- a/charts/kubeflow/apps/pipeline/upstream/env/platform-agnostic-multi-user/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/env/platform-agnostic-multi-user/kustomization.yaml
@@ -2,22 +2,25 @@ apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- - ../../base/installs/multi-user
- - ../../base/metadata/base
- - ../../base/metadata/options/istio
- - ../../third-party/argo/installs/cluster
- - ../../third-party/mysql/base
- - ../../third-party/mysql/options/istio
- - ../../third-party/minio/base
- - ../../third-party/minio/options/istio
- - ../../third-party/metacontroller/base
+- ../../third-party/metacontroller/base
+- ../../base/installs/multi-user
+- ../../base/metadata/base
+- ../../base/metadata/options/istio
+- ../../third-party/argo/installs/cluster
+- ../../third-party/mysql/base
+- ../../third-party/mysql/options/istio
+- ../../third-party/minio/base
+- ../../third-party/minio/options/istio
-# Identifier for application manager to apply ownerReference.
-# The ownerReference ensures the resources get garbage collected
-# when application is deleted.
-commonLabels:
- application-crd-id: kubeflow-pipelines
# !!! If you want to customize the namespace,
# please also update base/cache-deployer/cluster-scoped/cache-deployer-clusterrolebinding.yaml
namespace: kubeflow
+
+# Identifier for application manager to apply ownerReference.
+# The ownerReference ensures the resources get garbage collected
+# when application is deleted.
+labels:
+- includeSelectors: true
+ pairs:
+ application-crd-id: kubeflow-pipelines
diff --git a/charts/kubeflow/apps/pipeline/upstream/env/platform-agnostic-postgresql/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/env/platform-agnostic-postgresql/kustomization.yaml
index c13945a..e6e4af3 100644
--- a/charts/kubeflow/apps/pipeline/upstream/env/platform-agnostic-postgresql/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/env/platform-agnostic-postgresql/kustomization.yaml
@@ -2,18 +2,21 @@ apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- - ../../base/installs/generic/postgres
- - ../../base/metadata/overlays/postgres
- - ../../third-party/argo/installs/namespace
- - ../../third-party/minio/base
- - ../../third-party/postgresql/base
+- ../../base/installs/generic/postgres
+- ../../base/metadata/overlays/postgres
+- ../../third-party/argo/installs/namespace
+- ../../third-party/minio/base
+- ../../third-party/postgresql/base
-# Identifier for application manager to apply ownerReference.
-# The ownerReference ensures the resources get garbage collected
-# when application is deleted.
-commonLabels:
- application-crd-id: kubeflow-pipelines
# !!! If you want to customize the namespace,
# please also update base/cache-deployer/cluster-scoped/cache-deployer-clusterrolebinding.yaml
namespace: kubeflow
+
+# Identifier for application manager to apply ownerReference.
+# The ownerReference ensures the resources get garbage collected
+# when application is deleted.
+labels:
+- includeSelectors: true
+ pairs:
+ application-crd-id: kubeflow-pipelines
diff --git a/charts/kubeflow/apps/pipeline/upstream/env/platform-agnostic-tekton-multi-user/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/env/platform-agnostic-tekton-multi-user/kustomization.yaml
deleted file mode 100644
index 9c6389a..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/env/platform-agnostic-tekton-multi-user/kustomization.yaml
+++ /dev/null
@@ -1,68 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
- - ../../third-party/tekton/installs/cluster
- - ../../third-party/tekton-custom-task
- - ../plain-multi-user
-
-# Identifier for application manager to apply ownerReference.
-# The ownerReference ensures the resources get garbage collected
-# when application is deleted.
-commonLabels:
- application-crd-id: kubeflow-pipelines
-
-patches:
-- path: tekton-config.yaml
-- patch: |-
- apiVersion: apps/v1
- kind: Deployment
- metadata:
- name: ml-pipeline
- spec:
- template:
- spec:
- containers:
- - name: ml-pipeline-api-server
- env:
- - name: EXECUTIONTYPE
- value: PipelineRun
-- patch: |-
- apiVersion: apps/v1
- kind: Deployment
- metadata:
- name: ml-pipeline-persistenceagent
- spec:
- template:
- spec:
- containers:
- - name: ml-pipeline-persistenceagent
- env:
- - name: EXECUTIONTYPE
- value: PipelineRun
-- patch: |-
- apiVersion: apps/v1
- kind: Deployment
- metadata:
- name: ml-pipeline-scheduledworkflow
- spec:
- template:
- spec:
- containers:
- - name: ml-pipeline-scheduledworkflow
- env:
- - name: EXECUTIONTYPE
- value: PipelineRun
-- patch: |-
- apiVersion: apps/v1
- kind: Deployment
- metadata:
- name: ml-pipeline-ui
- spec:
- template:
- spec:
- containers:
- - name: ml-pipeline-ui
- env:
- - name: POD_LOG_CONTAINER_NAME
- value: step-user-main
\ No newline at end of file
diff --git a/charts/kubeflow/apps/pipeline/upstream/env/platform-agnostic-tekton-multi-user/tekton-config.yaml b/charts/kubeflow/apps/pipeline/upstream/env/platform-agnostic-tekton-multi-user/tekton-config.yaml
deleted file mode 100644
index 5707255..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/env/platform-agnostic-tekton-multi-user/tekton-config.yaml
+++ /dev/null
@@ -1,10 +0,0 @@
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: feature-flags
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- running-in-environment-with-injected-sidecars: "true"
diff --git a/charts/kubeflow/apps/pipeline/upstream/env/platform-agnostic-tekton/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/env/platform-agnostic-tekton/kustomization.yaml
deleted file mode 100644
index 9ea3776..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/env/platform-agnostic-tekton/kustomization.yaml
+++ /dev/null
@@ -1,70 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
-- ../../third-party/tekton/installs/cluster
-- ../../third-party/tekton-custom-task
-- ../plain
-
-# Identifier for application manager to apply ownerReference.
-# The ownerReference ensures the resources get garbage collected
-# when application is deleted.
-
-labels:
-- includeSelectors: true
- pairs:
- application-crd-id: kubeflow-pipelines
-
-patches:
-- patch: |-
- apiVersion: apps/v1
- kind: Deployment
- metadata:
- name: ml-pipeline
- spec:
- template:
- spec:
- containers:
- - name: ml-pipeline-api-server
- env:
- - name: EXECUTIONTYPE
- value: PipelineRun
-- patch: |-
- apiVersion: apps/v1
- kind: Deployment
- metadata:
- name: ml-pipeline-persistenceagent
- spec:
- template:
- spec:
- containers:
- - name: ml-pipeline-persistenceagent
- env:
- - name: EXECUTIONTYPE
- value: PipelineRun
-- patch: |-
- apiVersion: apps/v1
- kind: Deployment
- metadata:
- name: ml-pipeline-scheduledworkflow
- spec:
- template:
- spec:
- containers:
- - name: ml-pipeline-scheduledworkflow
- env:
- - name: EXECUTIONTYPE
- value: PipelineRun
-- patch: |-
- apiVersion: apps/v1
- kind: Deployment
- metadata:
- name: ml-pipeline-ui
- spec:
- template:
- spec:
- containers:
- - name: ml-pipeline-ui
- env:
- - name: POD_LOG_CONTAINER_NAME
- value: step-user-main
diff --git a/charts/kubeflow/apps/pipeline/upstream/env/platform-agnostic/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/env/platform-agnostic/kustomization.yaml
index b1efdbc..0a9d90b 100644
--- a/charts/kubeflow/apps/pipeline/upstream/env/platform-agnostic/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/env/platform-agnostic/kustomization.yaml
@@ -2,11 +2,11 @@ apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- - ../../base/installs/generic
- - ../../base/metadata/base
- - ../../third-party/argo/installs/namespace
- - ../../third-party/minio/base
- - ../../third-party/mysql/base
+- ../../base/installs/generic
+- ../../base/metadata/base
+- ../../third-party/argo/installs/namespace
+- ../../third-party/minio/base
+- ../../third-party/mysql/base
# Identifier for application manager to apply ownerReference.
# The ownerReference ensures the resources get garbage collected
@@ -16,6 +16,6 @@ resources:
# please also update base/cache-deployer/cluster-scoped/cache-deployer-clusterrolebinding.yaml
namespace: kubeflow
labels:
- - includeSelectors: true
- pairs:
- application-crd-id: kubeflow-pipelines
+- includeSelectors: true
+ pairs:
+ application-crd-id: kubeflow-pipelines
diff --git a/charts/kubeflow/apps/pipeline/upstream/hack/presubmit.sh b/charts/kubeflow/apps/pipeline/upstream/hack/presubmit.sh
index e4334f9..ccdba70 100755
--- a/charts/kubeflow/apps/pipeline/upstream/hack/presubmit.sh
+++ b/charts/kubeflow/apps/pipeline/upstream/hack/presubmit.sh
@@ -21,23 +21,31 @@ set -ex
DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" > /dev/null && pwd)"
TMP="$(mktemp -d)"
-pushd "${TMP}"
-# Install Kustomize
-KUSTOMIZE_VERSION=5.2.1
-# Reference: https://kubectl.docs.kubernetes.io/installation/kustomize/binaries/
-curl -s -O "https://raw.githubusercontent.com/\
-kubernetes-sigs/kustomize/master/hack/install_kustomize.sh"
-chmod +x install_kustomize.sh
-./install_kustomize.sh "${KUSTOMIZE_VERSION}" /usr/local/bin/
+# Add TMP to PATH
+PATH="$TMP:$PATH"
+pushd "${TMP}"
+
+# Install kustomize
+KUSTOMIZE_VERSION=5.2.1
+# Reference: https://github.com/kubernetes-sigs/kustomize/releases/tag/kustomize%2Fv5.2.1
+curl -s -LO "https://github.com/kubernetes-sigs/kustomize/releases/download/kustomize%2Fv${KUSTOMIZE_VERSION}/kustomize_v${KUSTOMIZE_VERSION}_linux_amd64.tar.gz"
+tar -xzf kustomize_v${KUSTOMIZE_VERSION}_linux_amd64.tar.gz
+chmod +x kustomize
+
+# Install yq
# Reference: https://github.com/mikefarah/yq/releases/tag/3.4.1
curl -s -LO "https://github.com/mikefarah/yq/releases/download/3.4.1/yq_linux_amd64"
chmod +x yq_linux_amd64
-mv yq_linux_amd64 /usr/local/bin/yq
-popd
+mv yq_linux_amd64 yq
-# kpt and kubectl should already be installed in gcr.io/google.com/cloudsdktool/cloud-sdk:latest
-# so we do not need to install them here
+# Install kpt
+KPT_VERSION=1.0.0-beta.54
+# Reference: https://github.com/kptdev/kpt/releases/tag/v1.0.0-beta.54
+curl -s -LO "https://github.com/kptdev/kpt/releases/download/v${KPT_VERSION}/kpt_linux_amd64"
+chmod +x kpt_linux_amd64
+mv kpt_linux_amd64 kpt
+popd
# trigger real unit tests
${DIR}/test.sh
diff --git a/charts/kubeflow/apps/pipeline/upstream/hack/release.sh b/charts/kubeflow/apps/pipeline/upstream/hack/release.sh
index 14a2c53..bbe9894 100755
--- a/charts/kubeflow/apps/pipeline/upstream/hack/release.sh
+++ b/charts/kubeflow/apps/pipeline/upstream/hack/release.sh
@@ -40,3 +40,14 @@ do
done
yq w -i "${MANIFEST_DIR}/base/installs/generic/pipeline-install-config.yaml" data.appVersion "$TAG_NAME"
+
+## Driver & Launcher images are added as environment variables
+API_SERVER_MANIFEST="${MANIFEST_DIR}/base/pipeline/ml-pipeline-apiserver-deployment.yaml"
+
+yq w -i ${API_SERVER_MANIFEST} \
+ "spec.template.spec.containers.(name==ml-pipeline-api-server).env.(name==V2_LAUNCHER_IMAGE).value" \
+ "ghcr.io/kubeflow/kfp-launcher:${TAG_NAME}"
+
+yq w -i ${API_SERVER_MANIFEST} \
+ "spec.template.spec.containers.(name==ml-pipeline-api-server).env.(name==V2_DRIVER_IMAGE).value" \
+ "ghcr.io/kubeflow/kfp-driver:${TAG_NAME}"
diff --git a/charts/kubeflow/apps/pipeline/upstream/sample/README.md b/charts/kubeflow/apps/pipeline/upstream/sample/README.md
index c4bfe95..4bdd6cb 100644
--- a/charts/kubeflow/apps/pipeline/upstream/sample/README.md
+++ b/charts/kubeflow/apps/pipeline/upstream/sample/README.md
@@ -63,11 +63,11 @@ gsutil mb -p myProjectId gs://myBucketName/
6. Install
```
-kubectl apply -k sample/cluster-scoped-resources/
+kustomize build sample/cluster-scoped-resources/ | kubectl apply -f -
kubectl wait crd/applications.app.k8s.io --for condition=established --timeout=60s
-kubectl apply -k sample/
+kustomize build sample/ | kubectl apply -f -
# If upper one action got failed, e.x. you used wrong value, try delete, fix and apply again
# kubectl delete -k sample/
diff --git a/charts/kubeflow/apps/pipeline/upstream/sample/cluster-scoped-resources/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/sample/cluster-scoped-resources/kustomization.yaml
index 8b4d2b8..4c174af 100644
--- a/charts/kubeflow/apps/pipeline/upstream/sample/cluster-scoped-resources/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/sample/cluster-scoped-resources/kustomization.yaml
@@ -6,5 +6,5 @@ kind: Kustomization
namespace: kubeflow
resources:
- # Or github.com/kubeflow/pipelines/manifests/kustomize/cluster-scoped-resources?ref=1.0.0
- - ../../cluster-scoped-resources
+# Or github.com/kubeflow/pipelines/manifests/kustomize/cluster-scoped-resources?ref=1.0.0
+- ../../cluster-scoped-resources
diff --git a/charts/kubeflow/apps/pipeline/upstream/sample/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/sample/kustomization.yaml
index e8bf361..2302b30 100644
--- a/charts/kubeflow/apps/pipeline/upstream/sample/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/sample/kustomization.yaml
@@ -3,7 +3,7 @@ kind: Kustomization
resources:
# Or github.com/kubeflow/pipelines/manifests/kustomize/env/gcp?ref=1.0.0
- - ../env/gcp
+- ../env/gcp
# Kubeflow Pipelines servers are capable of collecting Prometheus metrics.
# If you want to monitor your Kubeflow Pipelines servers with those metrics, you'll need a Prometheus server in your Kubeflow Pipelines cluster.
# If you don't already have a Prometheus server up, you can uncomment the following configuration files for Prometheus.
@@ -11,28 +11,28 @@ resources:
# - ../third_party/prometheus
# - ../third_party/grafana
-# Identifier for application manager to apply ownerReference.
-# The ownerReference ensures the resources get garbage collected
-# when application is deleted.
-commonLabels:
- application-crd-id: kubeflow-pipelines
# Used by Kustomize
configMapGenerator:
- - name: pipeline-install-config
- env: params.env
- behavior: merge
+- behavior: merge
+ envs:
+ - params.env
+ name: pipeline-install-config
secretGenerator:
- - name: mysql-secret
- env: params-db-secret.env
- behavior: merge
+- behavior: merge
+ envs:
+ - params-db-secret.env
+ name: mysql-secret
# !!! If you want to customize the namespace,
# please also update sample/cluster-scoped-resources/kustomization.yaml's namespace field to the same value
namespace: kubeflow
-#### Customization ###
-# 1. Change values in params.env file
-# 2. Change values in params-db-secret.env file for CloudSQL username and password
-# 3. kubectl apply -k ./
-####
+
+# Identifier for application manager to apply ownerReference.
+# The ownerReference ensures the resources get garbage collected
+# when application is deleted.
+labels:
+- includeSelectors: true
+ pairs:
+ application-crd-id: kubeflow-pipelines
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/application/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/application/kustomization.yaml
index c35e3ee..df84c78 100644
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/application/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/third-party/application/kustomization.yaml
@@ -2,8 +2,8 @@ apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- - application-controller-deployment.yaml
- - application-controller-role.yaml
- - application-controller-rolebinding.yaml
- - application-controller-sa.yaml
- - application-controller-service.yaml
+- application-controller-deployment.yaml
+- application-controller-role.yaml
+- application-controller-rolebinding.yaml
+- application-controller-sa.yaml
+- application-controller-service.yaml
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/base/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/base/kustomization.yaml
index 023efc5..f835175 100644
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/base/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/base/kustomization.yaml
@@ -2,13 +2,13 @@ apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- - ../upstream/manifests/base/workflow-controller
+- ../upstream/manifests/base/workflow-controller
patches:
- - path: workflow-controller-deployment-patch.yaml
- - path: workflow-controller-configmap-patch.yaml
+- path: workflow-controller-deployment-patch.yaml
+- path: workflow-controller-configmap-patch.yaml
# Allow Kustomize vars to replace fields defined in params.yaml.
# The vars can be defined anywhere.
configurations:
- - params.yaml
+- params.yaml
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/base/workflow-controller-configmap-patch.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/base/workflow-controller-configmap-patch.yaml
index 21a08fc..782e2c6 100644
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/base/workflow-controller-configmap-patch.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/base/workflow-controller-configmap-patch.yaml
@@ -4,9 +4,9 @@ metadata:
name: workflow-controller-configmap
data:
# References:
- # * https://github.com/argoproj/argo-workflows/blob/v3.4.16/config/config.go
- # * https://github.com/argoproj/argo-workflows/blob/v3.4.16/docs/workflow-controller-configmap.md
- # * https://github.com/argoproj/argo-workflows/blob/v3.4.16/docs/workflow-controller-configmap.yaml
+ # * https://github.com/argoproj/argo-workflows/blob/v3.5.14/config/config.go
+ # * https://github.com/argoproj/argo-workflows/blob/v3.5.14/docs/workflow-controller-configmap.md
+ # * https://github.com/argoproj/argo-workflows/blob/v3.5.14/docs/workflow-controller-configmap.yaml
# In artifactRepository.s3.endpoint, $(kfp-namespace) is needed, because in multi-user mode, pipelines may run in other namespaces.
artifactRepository: |
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/base/workflow-controller-deployment-patch.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/base/workflow-controller-deployment-patch.yaml
index 7b0b5db..4724bb4 100644
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/base/workflow-controller-deployment-patch.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/base/workflow-controller-deployment-patch.yaml
@@ -7,12 +7,16 @@ spec:
spec:
containers:
- name: workflow-controller
- image: gcr.io/ml-pipeline/workflow-controller:v3.4.16-license-compliance
+ image: quay.io/argoproj/workflow-controller:v3.5.14
args:
- --configmap
- workflow-controller-configmap
- --executor-image
- - gcr.io/ml-pipeline/argoexec:v3.4.16-license-compliance
+ - quay.io/argoproj/argoexec:v3.5.14
+ securityContext:
+ seccompProfile:
+ type: RuntimeDefault
+ runAsNonRoot: true
resources:
requests:
cpu: 100m
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/installs/namespace/cluster-scoped/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/installs/namespace/cluster-scoped/kustomization.yaml
index 3a04030..91b2fb9 100644
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/installs/namespace/cluster-scoped/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/installs/namespace/cluster-scoped/kustomization.yaml
@@ -1,5 +1,5 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- # Minimal CRDs omit schema validation, recommended for production cluster.
- - ../../../upstream/manifests/base/crds/minimal
+# Minimal CRDs omit schema validation, recommended for production cluster.
+- ../../../upstream/manifests/base/crds/minimal
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/installs/namespace/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/installs/namespace/kustomization.yaml
index 20b823b..55eb284 100644
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/installs/namespace/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/installs/namespace/kustomization.yaml
@@ -7,12 +7,12 @@ kind: Kustomization
# * this separates cluster-scoped resources to its own folder.
resources:
- - ../../base
- - ../../upstream/manifests/namespace-install/workflow-controller-rbac
+- ../../base
+- ../../upstream/manifests/namespace-install/workflow-controller-rbac
patches:
- - path: workflow-controller-deployment-patch.json
- target:
- group: apps
- kind: Deployment
- name: workflow-controller
- version: v1
+- path: workflow-controller-deployment-patch.json
+ target:
+ group: apps
+ kind: Deployment
+ name: workflow-controller
+ version: v1
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/Kptfile b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/Kptfile
index d7222e1..7859465 100644
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/Kptfile
+++ b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/Kptfile
@@ -7,12 +7,12 @@ upstream:
git:
repo: https://github.com/argoproj/argo-workflows
directory: /manifests
- ref: v3.4.16
+ ref: v3.5.14
updateStrategy: resource-merge
upstreamLock:
type: git
git:
repo: https://github.com/argoproj/argo-workflows
directory: /manifests
- ref: v3.4.16
- commit: 910a9aabce5de6568b54350c181a431f8263605a
+ ref: v3.5.14
+ commit: d94c214176716ece96974fd98ac5107c38d61344
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_clusterworkflowtemplates.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_clusterworkflowtemplates.yaml
index 62892b9..8175562 100644
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_clusterworkflowtemplates.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_clusterworkflowtemplates.yaml
@@ -798,6 +798,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -827,6 +829,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -936,6 +949,8 @@ spec:
type: object
artifactGC:
properties:
+ forceFinalizerRemoval:
+ type: boolean
podMetadata:
properties:
annotations:
@@ -947,6 +962,8 @@ spec:
type: string
type: object
type: object
+ podSpecPatch:
+ type: string
serviceAccountName:
type: string
strategy:
@@ -1408,6 +1425,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -1437,6 +1456,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -1593,6 +1623,8 @@ spec:
type: object
gauge:
properties:
+ operation:
+ type: string
realtime:
type: boolean
value:
@@ -1686,6 +1718,8 @@ spec:
type: object
podGC:
properties:
+ deleteDelayDuration:
+ type: string
labelSelector:
properties:
matchExpressions:
@@ -1840,6 +1874,8 @@ spec:
properties:
name:
type: string
+ namespace:
+ type: string
type: object
semaphore:
properties:
@@ -1854,6 +1890,8 @@ spec:
required:
- key
type: object
+ namespace:
+ type: string
type: object
type: object
templateDefaults:
@@ -2573,6 +2611,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -2598,6 +2638,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -4284,6 +4335,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -4313,6 +4366,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -4846,6 +4910,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -4875,6 +4941,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -5459,6 +5536,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -5488,6 +5567,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -6622,6 +6712,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -6651,6 +6743,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -6810,6 +6913,8 @@ spec:
type: object
gauge:
properties:
+ operation:
+ type: string
realtime:
type: boolean
value:
@@ -7272,6 +7377,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -7301,6 +7408,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -7845,6 +7963,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -7874,6 +7994,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -9229,6 +9360,8 @@ spec:
properties:
name:
type: string
+ namespace:
+ type: string
type: object
semaphore:
properties:
@@ -9243,6 +9376,8 @@ spec:
required:
- key
type: object
+ namespace:
+ type: string
type: object
type: object
timeout:
@@ -10662,6 +10797,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -10687,6 +10824,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -12373,6 +12521,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -12402,6 +12552,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -12935,6 +13096,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -12964,6 +13127,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -13548,6 +13722,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -13577,6 +13753,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -14711,6 +14898,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -14740,6 +14929,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -14899,6 +15099,8 @@ spec:
type: object
gauge:
properties:
+ operation:
+ type: string
realtime:
type: boolean
value:
@@ -15361,6 +15563,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -15390,6 +15594,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -15934,6 +16149,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -15963,6 +16180,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -17318,6 +17546,8 @@ spec:
properties:
name:
type: string
+ namespace:
+ type: string
type: object
semaphore:
properties:
@@ -17332,6 +17562,8 @@ spec:
required:
- key
type: object
+ namespace:
+ type: string
type: object
type: object
timeout:
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_cronworkflows.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_cronworkflows.yaml
index bcb408d..0949d08 100644
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_cronworkflows.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_cronworkflows.yaml
@@ -819,6 +819,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -848,6 +850,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -957,6 +970,8 @@ spec:
type: object
artifactGC:
properties:
+ forceFinalizerRemoval:
+ type: boolean
podMetadata:
properties:
annotations:
@@ -968,6 +983,8 @@ spec:
type: string
type: object
type: object
+ podSpecPatch:
+ type: string
serviceAccountName:
type: string
strategy:
@@ -1429,6 +1446,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -1458,6 +1477,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -1614,6 +1644,8 @@ spec:
type: object
gauge:
properties:
+ operation:
+ type: string
realtime:
type: boolean
value:
@@ -1707,6 +1739,8 @@ spec:
type: object
podGC:
properties:
+ deleteDelayDuration:
+ type: string
labelSelector:
properties:
matchExpressions:
@@ -1861,6 +1895,8 @@ spec:
properties:
name:
type: string
+ namespace:
+ type: string
type: object
semaphore:
properties:
@@ -1875,6 +1911,8 @@ spec:
required:
- key
type: object
+ namespace:
+ type: string
type: object
type: object
templateDefaults:
@@ -2594,6 +2632,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -2619,6 +2659,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -4305,6 +4356,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -4334,6 +4387,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -4867,6 +4931,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -4896,6 +4962,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -5480,6 +5557,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -5509,6 +5588,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -6643,6 +6733,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -6672,6 +6764,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -6831,6 +6934,8 @@ spec:
type: object
gauge:
properties:
+ operation:
+ type: string
realtime:
type: boolean
value:
@@ -7293,6 +7398,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -7322,6 +7429,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -7866,6 +7984,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -7895,6 +8015,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -9250,6 +9381,8 @@ spec:
properties:
name:
type: string
+ namespace:
+ type: string
type: object
semaphore:
properties:
@@ -9264,6 +9397,8 @@ spec:
required:
- key
type: object
+ namespace:
+ type: string
type: object
type: object
timeout:
@@ -10683,6 +10818,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -10708,6 +10845,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -12394,6 +12542,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -12423,6 +12573,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -12956,6 +13117,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -12985,6 +13148,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -13569,6 +13743,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -13598,6 +13774,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -14732,6 +14919,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -14761,6 +14950,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -14920,6 +15120,8 @@ spec:
type: object
gauge:
properties:
+ operation:
+ type: string
realtime:
type: boolean
value:
@@ -15382,6 +15584,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -15411,6 +15615,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -15955,6 +16170,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -15984,6 +16201,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -17339,6 +17567,8 @@ spec:
properties:
name:
type: string
+ namespace:
+ type: string
type: object
semaphore:
properties:
@@ -17353,6 +17583,8 @@ spec:
required:
- key
type: object
+ namespace:
+ type: string
type: object
type: object
timeout:
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workflowartifactgctasks.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workflowartifactgctasks.yaml
index 7db0a5d..f3308c9 100644
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workflowartifactgctasks.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workflowartifactgctasks.yaml
@@ -387,6 +387,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -412,6 +414,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -870,6 +883,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -899,6 +914,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workfloweventbindings.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workfloweventbindings.yaml
index 2af4033..4259d24 100644
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workfloweventbindings.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workfloweventbindings.yaml
@@ -447,6 +447,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -476,6 +478,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workflows.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workflows.yaml
index 90d5dc3..b048baa 100644
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workflows.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workflows.yaml
@@ -811,6 +811,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -840,6 +842,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -949,6 +962,8 @@ spec:
type: object
artifactGC:
properties:
+ forceFinalizerRemoval:
+ type: boolean
podMetadata:
properties:
annotations:
@@ -960,6 +975,8 @@ spec:
type: string
type: object
type: object
+ podSpecPatch:
+ type: string
serviceAccountName:
type: string
strategy:
@@ -1421,6 +1438,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -1450,6 +1469,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -1606,6 +1636,8 @@ spec:
type: object
gauge:
properties:
+ operation:
+ type: string
realtime:
type: boolean
value:
@@ -1699,6 +1731,8 @@ spec:
type: object
podGC:
properties:
+ deleteDelayDuration:
+ type: string
labelSelector:
properties:
matchExpressions:
@@ -1853,6 +1887,8 @@ spec:
properties:
name:
type: string
+ namespace:
+ type: string
type: object
semaphore:
properties:
@@ -1867,6 +1903,8 @@ spec:
required:
- key
type: object
+ namespace:
+ type: string
type: object
type: object
templateDefaults:
@@ -2586,6 +2624,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -2611,6 +2651,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -4297,6 +4348,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -4326,6 +4379,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -4859,6 +4923,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -4888,6 +4954,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -5472,6 +5549,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -5501,6 +5580,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -6635,6 +6725,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -6664,6 +6756,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -6823,6 +6926,8 @@ spec:
type: object
gauge:
properties:
+ operation:
+ type: string
realtime:
type: boolean
value:
@@ -7285,6 +7390,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -7314,6 +7421,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -7858,6 +7976,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -7887,6 +8007,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -9242,6 +9373,8 @@ spec:
properties:
name:
type: string
+ namespace:
+ type: string
type: object
semaphore:
properties:
@@ -9256,6 +9389,8 @@ spec:
required:
- key
type: object
+ namespace:
+ type: string
type: object
type: object
timeout:
@@ -10675,6 +10810,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -10700,6 +10837,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -12386,6 +12534,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -12415,6 +12565,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -12948,6 +13109,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -12977,6 +13140,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -13561,6 +13735,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -13590,6 +13766,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -14724,6 +14911,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -14753,6 +14942,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -14912,6 +15112,8 @@ spec:
type: object
gauge:
properties:
+ operation:
+ type: string
realtime:
type: boolean
value:
@@ -15374,6 +15576,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -15403,6 +15607,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -15947,6 +16162,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -15976,6 +16193,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -17331,6 +17559,8 @@ spec:
properties:
name:
type: string
+ namespace:
+ type: string
type: object
semaphore:
properties:
@@ -17345,6 +17575,8 @@ spec:
required:
- key
type: object
+ namespace:
+ type: string
type: object
type: object
timeout:
@@ -18950,6 +19182,8 @@ spec:
type: boolean
artifactory:
properties:
+ keyFormat:
+ type: string
passwordSecret:
properties:
key:
@@ -19113,6 +19347,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
type: object
s3:
properties:
@@ -19129,6 +19365,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -19642,6 +19889,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -19671,6 +19920,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -19795,6 +20055,13 @@ spec:
type: string
name:
type: string
+ nodeFlag:
+ properties:
+ hooked:
+ type: boolean
+ retried:
+ type: boolean
+ type: object
outboundNodes:
items:
type: string
@@ -20209,6 +20476,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -20238,6 +20507,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -20801,6 +21081,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -20830,6 +21112,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -22351,6 +22644,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -22376,6 +22671,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -24062,6 +24368,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -24091,6 +24399,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -24624,6 +24943,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -24653,6 +24974,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -25237,6 +25569,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -25266,6 +25600,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -26400,6 +26745,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -26429,6 +26776,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -26588,6 +26946,8 @@ spec:
type: object
gauge:
properties:
+ operation:
+ type: string
realtime:
type: boolean
value:
@@ -27050,6 +27410,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -27079,6 +27441,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -27623,6 +27996,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -27652,6 +28027,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -29007,6 +29393,8 @@ spec:
properties:
name:
type: string
+ namespace:
+ type: string
type: object
semaphore:
properties:
@@ -29021,6 +29409,8 @@ spec:
required:
- key
type: object
+ namespace:
+ type: string
type: object
type: object
timeout:
@@ -30494,6 +30884,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -30523,6 +30915,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -30632,6 +31035,8 @@ spec:
type: object
artifactGC:
properties:
+ forceFinalizerRemoval:
+ type: boolean
podMetadata:
properties:
annotations:
@@ -30643,6 +31048,8 @@ spec:
type: string
type: object
type: object
+ podSpecPatch:
+ type: string
serviceAccountName:
type: string
strategy:
@@ -31104,6 +31511,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -31133,6 +31542,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -31289,6 +31709,8 @@ spec:
type: object
gauge:
properties:
+ operation:
+ type: string
realtime:
type: boolean
value:
@@ -31382,6 +31804,8 @@ spec:
type: object
podGC:
properties:
+ deleteDelayDuration:
+ type: string
labelSelector:
properties:
matchExpressions:
@@ -31536,6 +31960,8 @@ spec:
properties:
name:
type: string
+ namespace:
+ type: string
type: object
semaphore:
properties:
@@ -31550,6 +31976,8 @@ spec:
required:
- key
type: object
+ namespace:
+ type: string
type: object
type: object
templateDefaults:
@@ -32269,6 +32697,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -32294,6 +32724,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -33980,6 +34421,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -34009,6 +34452,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -34542,6 +34996,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -34571,6 +35027,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -35155,6 +35622,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -35184,6 +35653,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -36318,6 +36798,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -36347,6 +36829,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -36506,6 +36999,8 @@ spec:
type: object
gauge:
properties:
+ operation:
+ type: string
realtime:
type: boolean
value:
@@ -36968,6 +37463,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -36997,6 +37494,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -37541,6 +38049,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -37570,6 +38080,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -38925,6 +39446,8 @@ spec:
properties:
name:
type: string
+ namespace:
+ type: string
type: object
semaphore:
properties:
@@ -38939,6 +39462,8 @@ spec:
required:
- key
type: object
+ namespace:
+ type: string
type: object
type: object
timeout:
@@ -40358,6 +40883,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -40383,6 +40910,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -42069,6 +42607,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -42098,6 +42638,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -42631,6 +43182,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -42660,6 +43213,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -43244,6 +43808,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -43273,6 +43839,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -44407,6 +44984,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -44436,6 +45015,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -44595,6 +45185,8 @@ spec:
type: object
gauge:
properties:
+ operation:
+ type: string
realtime:
type: boolean
value:
@@ -45057,6 +45649,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -45086,6 +45680,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -45630,6 +46235,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -45659,6 +46266,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -47014,6 +47632,8 @@ spec:
properties:
name:
type: string
+ namespace:
+ type: string
type: object
semaphore:
properties:
@@ -47028,6 +47648,8 @@ spec:
required:
- key
type: object
+ namespace:
+ type: string
type: object
type: object
timeout:
@@ -48663,6 +49285,10 @@ spec:
type: array
type: object
type: object
+ taskResultsCompletionStatus:
+ additionalProperties:
+ type: boolean
+ type: object
type: object
required:
- metadata
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workflowtaskresults.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workflowtaskresults.yaml
index 6569140..4d3f86a 100644
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workflowtaskresults.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workflowtaskresults.yaml
@@ -436,6 +436,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -465,6 +467,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workflowtasksets.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workflowtasksets.yaml
index 1d08cc5..ddaecf6 100644
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workflowtasksets.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workflowtasksets.yaml
@@ -746,6 +746,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -771,6 +773,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -2457,6 +2470,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -2486,6 +2501,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -3019,6 +3045,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -3048,6 +3076,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -3632,6 +3671,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -3661,6 +3702,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -4795,6 +4847,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -4824,6 +4878,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -4983,6 +5048,8 @@ spec:
type: object
gauge:
properties:
+ operation:
+ type: string
realtime:
type: boolean
value:
@@ -5445,6 +5512,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -5474,6 +5543,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -6018,6 +6098,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -6047,6 +6129,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -7402,6 +7495,8 @@ spec:
properties:
name:
type: string
+ namespace:
+ type: string
type: object
semaphore:
properties:
@@ -7416,6 +7511,8 @@ spec:
required:
- key
type: object
+ namespace:
+ type: string
type: object
type: object
timeout:
@@ -8536,6 +8633,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -8565,6 +8664,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workflowtemplates.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workflowtemplates.yaml
index 110e171..c7d7e34 100644
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workflowtemplates.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/base/crds/full/argoproj.io_workflowtemplates.yaml
@@ -797,6 +797,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -826,6 +828,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -935,6 +948,8 @@ spec:
type: object
artifactGC:
properties:
+ forceFinalizerRemoval:
+ type: boolean
podMetadata:
properties:
annotations:
@@ -946,6 +961,8 @@ spec:
type: string
type: object
type: object
+ podSpecPatch:
+ type: string
serviceAccountName:
type: string
strategy:
@@ -1407,6 +1424,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -1436,6 +1455,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -1592,6 +1622,8 @@ spec:
type: object
gauge:
properties:
+ operation:
+ type: string
realtime:
type: boolean
value:
@@ -1685,6 +1717,8 @@ spec:
type: object
podGC:
properties:
+ deleteDelayDuration:
+ type: string
labelSelector:
properties:
matchExpressions:
@@ -1839,6 +1873,8 @@ spec:
properties:
name:
type: string
+ namespace:
+ type: string
type: object
semaphore:
properties:
@@ -1853,6 +1889,8 @@ spec:
required:
- key
type: object
+ namespace:
+ type: string
type: object
type: object
templateDefaults:
@@ -2572,6 +2610,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -2597,6 +2637,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -4283,6 +4334,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -4312,6 +4365,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -4845,6 +4909,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -4874,6 +4940,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -5458,6 +5535,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -5487,6 +5566,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -6621,6 +6711,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -6650,6 +6742,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -6809,6 +6912,8 @@ spec:
type: object
gauge:
properties:
+ operation:
+ type: string
realtime:
type: boolean
value:
@@ -7271,6 +7376,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -7300,6 +7407,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -7844,6 +7962,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -7873,6 +7993,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -9228,6 +9359,8 @@ spec:
properties:
name:
type: string
+ namespace:
+ type: string
type: object
semaphore:
properties:
@@ -9242,6 +9375,8 @@ spec:
required:
- key
type: object
+ namespace:
+ type: string
type: object
type: object
timeout:
@@ -10661,6 +10796,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -10686,6 +10823,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -12372,6 +12520,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -12401,6 +12551,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -12934,6 +13095,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -12963,6 +13126,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -13547,6 +13721,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -13576,6 +13752,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -14710,6 +14897,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -14739,6 +14928,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -14898,6 +15098,8 @@ spec:
type: object
gauge:
properties:
+ operation:
+ type: string
realtime:
type: boolean
value:
@@ -15360,6 +15562,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -15389,6 +15593,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -15933,6 +16148,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -15962,6 +16179,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
@@ -17317,6 +17545,8 @@ spec:
properties:
name:
type: string
+ namespace:
+ type: string
type: object
semaphore:
properties:
@@ -17331,6 +17561,8 @@ spec:
required:
- key
type: object
+ namespace:
+ type: string
type: object
type: object
timeout:
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/base/crds/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/base/crds/kustomization.yaml
index 25ffbec..7f3724b 100644
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/base/crds/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/base/crds/kustomization.yaml
@@ -1,4 +1,4 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- - minimal
+- minimal
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/base/crds/minimal/argoproj.io_workflowtaskresults.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/base/crds/minimal/argoproj.io_workflowtaskresults.yaml
index 2fd4150..7b4327d 100644
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/base/crds/minimal/argoproj.io_workflowtaskresults.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/base/crds/minimal/argoproj.io_workflowtaskresults.yaml
@@ -435,6 +435,8 @@ spec:
type: object
securityToken:
type: string
+ useSDKCreds:
+ type: boolean
required:
- key
type: object
@@ -464,6 +466,17 @@ spec:
type: object
bucket:
type: string
+ caSecret:
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ optional:
+ type: boolean
+ required:
+ - key
+ type: object
createBucketIfNotPresent:
properties:
objectLocking:
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/cluster-install/workflow-controller-rbac/workflow-controller-clusterrole.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/cluster-install/workflow-controller-rbac/workflow-controller-clusterrole.yaml
index 5330571..a654067 100644
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/cluster-install/workflow-controller-rbac/workflow-controller-clusterrole.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/cluster-install/workflow-controller-rbac/workflow-controller-clusterrole.yaml
@@ -105,3 +105,11 @@ rules:
- create
- get
- delete
+- apiGroups:
+ - ""
+ resources:
+ - secrets
+ verbs:
+ - get
+ resourceNames:
+ - argo-workflows-agent-ca-certificates
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/namespace-install/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/namespace-install/kustomization.yaml
index 4692dbd..f45d0e3 100644
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/namespace-install/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/namespace-install/kustomization.yaml
@@ -1,19 +1,19 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- - ../base
- - ./argo-server-rbac
- - ./workflow-controller-rbac
+- ../base
+- ./argo-server-rbac
+- ./workflow-controller-rbac
patches:
- - path: ./overlays/workflow-controller-deployment.yaml
- target:
- group: apps
- kind: Deployment
- name: workflow-controller
- version: v1
- - path: ./overlays/argo-server-deployment.yaml
- target:
- group: apps
- kind: Deployment
- name: argo-server
- version: v1
+- path: ./overlays/workflow-controller-deployment.yaml
+ target:
+ group: apps
+ kind: Deployment
+ name: workflow-controller
+ version: v1
+- path: ./overlays/argo-server-deployment.yaml
+ target:
+ group: apps
+ kind: Deployment
+ name: argo-server
+ version: v1
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/base/agent-role.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/base/agent-role.yaml
index 3796d22..d9be185 100644
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/base/agent-role.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/base/agent-role.yaml
@@ -1,4 +1,4 @@
-# https://argo-workflows.readthedocs.io/en/release-3.4/workflow-rbac/
+# https://argo-workflows.readthedocs.io/en/release-3.5/workflow-rbac/
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata: # kpt-merge: /agent
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/base/artifactgc-role.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/base/artifactgc-role.yaml
index 4121aaa..8052a2c 100644
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/base/artifactgc-role.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/base/artifactgc-role.yaml
@@ -1,4 +1,4 @@
-# https://argo-workflows.readthedocs.io/en/release-3.4/workflow-rbac/
+# https://argo-workflows.readthedocs.io/en/release-3.5/workflow-rbac/
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata: # kpt-merge: /artifactgc
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/base/httpbin/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/base/httpbin/kustomization.yaml
index 5e7a06a..b5c1f84 100644
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/base/httpbin/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/base/httpbin/kustomization.yaml
@@ -1,6 +1,6 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- - httpbin-deploy.yaml
- - httpbin-service.yaml
- - my-httpbin-cred-secret.yaml
+- httpbin-deploy.yaml
+- httpbin-service.yaml
+- my-httpbin-cred-secret.yaml
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/base/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/base/kustomization.yaml
index 23f1652..8560cf9 100644
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/base/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/base/kustomization.yaml
@@ -1,24 +1,24 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- - ../../namespace-install
- - minio
- - httpbin
- - webhooks
- - default.service-account-token-secret.yaml
- - argo-server-sso-secret.yaml
- - executor/emissary/executor-role.yaml
- - executor-default-rolebinding.yaml
- - pod-manager-role.yaml
- - pod-manager-default-rolebinding.yaml
- - workflow-manager-role.yaml
- - workflow-manager-default-rolebinding.yaml
- - agent-role.yaml
- - agent-default-rolebinding.yaml
- - artifactgc-role.yaml
- - artifactgc-default-rolebinding.yaml
- - cluster-workflow-template-rbac.yaml
- - artifact-repositories-configmap.yaml
+- ../../cluster-install
+- minio
+- httpbin
+- webhooks
+- default.service-account-token-secret.yaml
+- argo-server-sso-secret.yaml
+- executor/emissary/executor-role.yaml
+- executor-default-rolebinding.yaml
+- pod-manager-role.yaml
+- pod-manager-default-rolebinding.yaml
+- workflow-manager-role.yaml
+- workflow-manager-default-rolebinding.yaml
+- agent-role.yaml
+- agent-default-rolebinding.yaml
+- artifactgc-role.yaml
+- artifactgc-default-rolebinding.yaml
+- cluster-workflow-template-rbac.yaml
+- artifact-repositories-configmap.yaml
patches:
- - path: overlays/workflow-controller-configmap.yaml
- - path: overlays/argo-server-deployment.yaml
+- path: overlays/workflow-controller-configmap.yaml
+- path: overlays/argo-server-deployment.yaml
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/base/minio/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/base/minio/kustomization.yaml
index 1199d38..6b8e240 100644
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/base/minio/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/base/minio/kustomization.yaml
@@ -1,6 +1,6 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- - minio-deploy.yaml
- - minio-service.yaml
- - my-minio-cred-secret.yaml
+- minio-deploy.yaml
+- minio-service.yaml
+- my-minio-cred-secret.yaml
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/base/overlays/argo-server-deployment.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/base/overlays/argo-server-deployment.yaml
index ccc1b04..f76326f 100644
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/base/overlays/argo-server-deployment.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/base/overlays/argo-server-deployment.yaml
@@ -11,7 +11,6 @@ spec:
- name: argo-server
args:
- server
- - --namespaced
- --auth-mode
- server
- --auth-mode
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/base/prometheus/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/base/prometheus/kustomization.yaml
index 32db823..17eb100 100644
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/base/prometheus/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/base/prometheus/kustomization.yaml
@@ -1,6 +1,6 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- - prometheus-deployment.yaml
- - prometheus-config-cluster.yaml
- - prometheus-service.yaml
+- prometheus-deployment.yaml
+- prometheus-config-cluster.yaml
+- prometheus-service.yaml
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/base/prometheus/prometheus-deployment.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/base/prometheus/prometheus-deployment.yaml
index d1ea2cf..7aa9858 100644
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/base/prometheus/prometheus-deployment.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/base/prometheus/prometheus-deployment.yaml
@@ -5,7 +5,7 @@
# localhost:9091/graph
#
# Note: this assumes the workflow-controller is emitting metrics in the default port (9090). This will need to
-# be modified if the default is overriden.
+# be modified if the default is overridden.
apiVersion: apps/v1
kind: Deployment
metadata: # kpt-merge: /prometheus
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/base/webhooks/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/base/webhooks/kustomization.yaml
index 290e7cb..07699b4 100644
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/base/webhooks/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/base/webhooks/kustomization.yaml
@@ -1,8 +1,8 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- - submit-workflow-template-role.yaml
- - github.com-sa.yaml
- - github.com-secret.yaml
- - github.com-rolebinding.yaml
- - argo-workflows-webhook-clients-secret.yaml
+- submit-workflow-template-role.yaml
+- github.com-sa.yaml
+- github.com-secret.yaml
+- github.com-rolebinding.yaml
+- argo-workflows-webhook-clients-secret.yaml
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/minimal/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/minimal/kustomization.yaml
index 00b4d98..8a924f2 100644
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/minimal/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/minimal/kustomization.yaml
@@ -1,6 +1,6 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- - ../base
+- ../base
patches:
- - path: overlays/workflow-controller-configmap.yaml
+- path: overlays/workflow-controller-configmap.yaml
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/mysql/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/mysql/kustomization.yaml
index cf0cdb1..b6979ae 100644
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/mysql/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/mysql/kustomization.yaml
@@ -1,9 +1,9 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- - ../base
- - argo-mysql-config-secret.yaml
- - mysql-deployment.yaml
- - mysql-service.yaml
+- ../base
+- argo-mysql-config-secret.yaml
+- mysql-deployment.yaml
+- mysql-service.yaml
patches:
- - path: overlays/workflow-controller-configmap.yaml
+- path: overlays/workflow-controller-configmap.yaml
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/postgres/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/postgres/kustomization.yaml
index 531c029..669aa22 100644
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/postgres/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/postgres/kustomization.yaml
@@ -1,9 +1,9 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- - ../base
- - argo-postgres-config-secret.yaml
- - postgres-deployment.yaml
- - postgres-service.yaml
+- ../base
+- argo-postgres-config-secret.yaml
+- postgres-deployment.yaml
+- postgres-service.yaml
patches:
- - path: overlays/workflow-controller-configmap.yaml
+- path: overlays/workflow-controller-configmap.yaml
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/sso/dex/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/sso/dex/kustomization.yaml
index 8ea85c1..045eb10 100644
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/sso/dex/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/sso/dex/kustomization.yaml
@@ -1,11 +1,13 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
-commonLabels:
- "app.kubernetes.io/part-of": "dex"
+labels:
+- includeSelectors: true
+ pairs:
+ app.kubernetes.io/part-of: dex
resources:
- - dex-cm.yaml
- - dex-role.yaml
- - dex-sa.yaml
- - dex-rb.yaml
- - dex-deploy.yaml
- - dev-svc.yaml
+- dex-cm.yaml
+- dex-role.yaml
+- dex-sa.yaml
+- dex-rb.yaml
+- dex-deploy.yaml
+- dev-svc.yaml
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/sso/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/sso/kustomization.yaml
index ce3d3aa..12cf0b3 100644
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/sso/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/third-party/argo/upstream/manifests/quick-start/sso/kustomization.yaml
@@ -1,8 +1,8 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- - ../base
- - dex
+- ../base
+- dex
patches:
- - path: overlays/workflow-controller-configmap.yaml
- - path: overlays/argo-server-sa.yaml
+- path: overlays/workflow-controller-configmap.yaml
+- path: overlays/argo-server-sa.yaml
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/grafana/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/grafana/kustomization.yaml
index fd1cf02..c6afe8d 100644
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/grafana/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/third-party/grafana/kustomization.yaml
@@ -7,5 +7,5 @@ resources:
- grafana-sa.yaml
- grafana-rolebinding.yaml
images:
- - name: grafana/grafana
- newTag: 5.3.4
+- name: grafana/grafana
+ newTag: 5.3.4
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/metacontroller/base/cluster-role-binding.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/metacontroller/base/cluster-role-binding.yaml
index dc9c732..60717b2 100644
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/metacontroller/base/cluster-role-binding.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/third-party/metacontroller/base/cluster-role-binding.yaml
@@ -5,7 +5,7 @@ metadata:
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
- name: cluster-admin
+ name: kubeflow-metacontroller
subjects:
- kind: ServiceAccount
name: meta-controller-service
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/metacontroller/base/cluster-role.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/metacontroller/base/cluster-role.yaml
new file mode 100644
index 0000000..1dd5e4e
--- /dev/null
+++ b/charts/kubeflow/apps/pipeline/upstream/third-party/metacontroller/base/cluster-role.yaml
@@ -0,0 +1,32 @@
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
+metadata:
+ name: kubeflow-metacontroller
+rules:
+- apiGroups: [""]
+ resources: ["namespaces"]
+ verbs: ["get", "list", "watch", "update"]
+- apiGroups: [""]
+ resources: ["namespaces/status"]
+ verbs: ["get", "list", "watch", "update", "patch"]
+- apiGroups: [""]
+ resources: ["secrets", "configmaps"]
+ verbs: ["get", "list", "watch", "create", "update", "patch", "delete"]
+- apiGroups: ["apps"]
+ resources: ["deployments"]
+ verbs: ["get", "list", "watch", "create", "update", "patch", "delete"]
+- apiGroups: [""]
+ resources: ["services"]
+ verbs: ["get", "list", "watch", "create", "update", "patch", "delete"]
+- apiGroups: ["networking.istio.io"]
+ resources: ["destinationrules"]
+ verbs: ["get", "list", "watch", "create", "update", "patch", "delete"]
+- apiGroups: ["security.istio.io"]
+ resources: ["authorizationpolicies"]
+ verbs: ["get", "list", "watch", "create", "update", "patch", "delete"]
+- apiGroups: ["metacontroller.k8s.io"]
+ resources: ["compositecontrollers", "controllerrevisions", "decoratorcontrollers"]
+ verbs: ["get", "list", "watch"]
+- apiGroups: [""]
+ resources: ["events"]
+ verbs: ["create", "patch"]
\ No newline at end of file
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/metacontroller/base/crd.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/metacontroller/base/crd.yaml
index a2825fb..a544466 100644
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/metacontroller/base/crd.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/third-party/metacontroller/base/crd.yaml
@@ -3,7 +3,8 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
- "api-approved.kubernetes.io": "unapproved, request not yet submitted"
+ api-approved.kubernetes.io: unapproved, request not yet submitted
+ controller-gen.kubebuilder.io/version: v0.13.0
name: compositecontrollers.metacontroller.k8s.io
spec:
group: metacontroller.k8s.io
@@ -20,12 +21,17 @@ spec:
- name: v1alpha1
schema:
openAPIV3Schema:
+ description: CompositeController
properties:
apiVersion:
- description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
+ description: 'APIVersion defines the versioned schema of this representation
+ of an object. Servers should convert recognized schemas to the latest
+ internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
type: string
kind:
- description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
+ description: 'Kind is a string value representing the REST resource this
+ object represents. Servers may infer this from the endpoint the client
+ submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
type: string
metadata:
type: object
@@ -41,6 +47,12 @@ spec:
updateStrategy:
properties:
method:
+ enum:
+ - OnDelete
+ - Recreate
+ - InPlace
+ - RollingRecreate
+ - RollingInPlace
type: string
statusChecks:
properties:
@@ -70,10 +82,35 @@ spec:
properties:
customize:
properties:
+ version:
+ default: v1
+ enum:
+ - v1
+ - v2
+ type: string
webhook:
properties:
+ etag:
+ properties:
+ cacheCleanupSeconds:
+ format: int32
+ type: integer
+ cacheTimeoutSeconds:
+ format: int32
+ type: integer
+ enabled:
+ type: boolean
+ type: object
path:
type: string
+ responseUnMarshallMode:
+ description: Sets the json unmarshall mode. One of the
+ 'loose' or 'strict'. In 'strict' mode additional checks
+ are performed to detect unknown and duplicated fields.
+ enum:
+ - loose
+ - strict
+ type: string
service:
properties:
name:
@@ -90,6 +127,7 @@ spec:
- namespace
type: object
timeout:
+ format: duration
type: string
url:
type: string
@@ -97,10 +135,35 @@ spec:
type: object
finalize:
properties:
+ version:
+ default: v1
+ enum:
+ - v1
+ - v2
+ type: string
webhook:
properties:
+ etag:
+ properties:
+ cacheCleanupSeconds:
+ format: int32
+ type: integer
+ cacheTimeoutSeconds:
+ format: int32
+ type: integer
+ enabled:
+ type: boolean
+ type: object
path:
type: string
+ responseUnMarshallMode:
+ description: Sets the json unmarshall mode. One of the
+ 'loose' or 'strict'. In 'strict' mode additional checks
+ are performed to detect unknown and duplicated fields.
+ enum:
+ - loose
+ - strict
+ type: string
service:
properties:
name:
@@ -117,6 +180,7 @@ spec:
- namespace
type: object
timeout:
+ format: duration
type: string
url:
type: string
@@ -124,10 +188,35 @@ spec:
type: object
postUpdateChild:
properties:
+ version:
+ default: v1
+ enum:
+ - v1
+ - v2
+ type: string
webhook:
properties:
+ etag:
+ properties:
+ cacheCleanupSeconds:
+ format: int32
+ type: integer
+ cacheTimeoutSeconds:
+ format: int32
+ type: integer
+ enabled:
+ type: boolean
+ type: object
path:
type: string
+ responseUnMarshallMode:
+ description: Sets the json unmarshall mode. One of the
+ 'loose' or 'strict'. In 'strict' mode additional checks
+ are performed to detect unknown and duplicated fields.
+ enum:
+ - loose
+ - strict
+ type: string
service:
properties:
name:
@@ -144,6 +233,7 @@ spec:
- namespace
type: object
timeout:
+ format: duration
type: string
url:
type: string
@@ -151,10 +241,35 @@ spec:
type: object
preUpdateChild:
properties:
+ version:
+ default: v1
+ enum:
+ - v1
+ - v2
+ type: string
webhook:
properties:
+ etag:
+ properties:
+ cacheCleanupSeconds:
+ format: int32
+ type: integer
+ cacheTimeoutSeconds:
+ format: int32
+ type: integer
+ enabled:
+ type: boolean
+ type: object
path:
type: string
+ responseUnMarshallMode:
+ description: Sets the json unmarshall mode. One of the
+ 'loose' or 'strict'. In 'strict' mode additional checks
+ are performed to detect unknown and duplicated fields.
+ enum:
+ - loose
+ - strict
+ type: string
service:
properties:
name:
@@ -171,6 +286,7 @@ spec:
- namespace
type: object
timeout:
+ format: duration
type: string
url:
type: string
@@ -178,10 +294,35 @@ spec:
type: object
sync:
properties:
+ version:
+ default: v1
+ enum:
+ - v1
+ - v2
+ type: string
webhook:
properties:
+ etag:
+ properties:
+ cacheCleanupSeconds:
+ format: int32
+ type: integer
+ cacheTimeoutSeconds:
+ format: int32
+ type: integer
+ enabled:
+ type: boolean
+ type: object
path:
type: string
+ responseUnMarshallMode:
+ description: Sets the json unmarshall mode. One of the
+ 'loose' or 'strict'. In 'strict' mode additional checks
+ are performed to detect unknown and duplicated fields.
+ enum:
+ - loose
+ - strict
+ type: string
service:
properties:
name:
@@ -198,6 +339,7 @@ spec:
- namespace
type: object
timeout:
+ format: duration
type: string
url:
type: string
@@ -208,6 +350,54 @@ spec:
properties:
apiVersion:
type: string
+ labelSelector:
+ description: A label selector is a label query over a set of resources.
+ The result of matchLabels and matchExpressions are ANDed. An
+ empty label selector matches all objects. A null label selector
+ matches no objects.
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label selector
+ requirements. The requirements are ANDed.
+ items:
+ description: A label selector requirement is a selector
+ that contains values, a key, and an operator that relates
+ the key and values.
+ properties:
+ key:
+ description: key is the label key that the selector
+ applies to.
+ type: string
+ operator:
+ description: operator represents a key's relationship
+ to a set of values. Valid operators are In, NotIn,
+ Exists and DoesNotExist.
+ type: string
+ values:
+ description: values is an array of string values. If
+ the operator is In or NotIn, the values array must
+ be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced
+ during a strategic merge patch.
+ items:
+ type: string
+ type: array
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: matchLabels is a map of {key,value} pairs. A
+ single {key,value} in the matchLabels map is equivalent
+ to an element of matchExpressions, whose key field is "key",
+ the operator is "In", and the values array contains only
+ "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
resource:
type: string
revisionHistory:
@@ -237,19 +427,13 @@ spec:
storage: true
subresources:
status: {}
-status:
- acceptedNames:
- kind: ""
- plural: ""
- conditions: []
- storedVersions: []
-
---
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
- "api-approved.kubernetes.io": "unapproved, request not yet submitted"
+ api-approved.kubernetes.io: unapproved, request not yet submitted
+ controller-gen.kubebuilder.io/version: v0.13.0
name: controllerrevisions.metacontroller.k8s.io
spec:
group: metacontroller.k8s.io
@@ -263,9 +447,12 @@ spec:
- name: v1alpha1
schema:
openAPIV3Schema:
+ description: ControllerRevision
properties:
apiVersion:
- description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
+ description: 'APIVersion defines the versioned schema of this representation
+ of an object. Servers should convert recognized schemas to the latest
+ internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
type: string
children:
items:
@@ -285,12 +472,15 @@ spec:
type: object
type: array
kind:
- description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
+ description: 'Kind is a string value representing the REST resource this
+ object represents. Servers may infer this from the endpoint the client
+ submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
type: string
metadata:
type: object
parentPatch:
type: object
+ x-kubernetes-preserve-unknown-fields: true
required:
- metadata
- parentPatch
@@ -299,19 +489,13 @@ spec:
storage: true
subresources:
status: {}
-status:
- acceptedNames:
- kind: ""
- plural: ""
- conditions: []
- storedVersions: []
-
---
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
- "api-approved.kubernetes.io": "unapproved, request not yet submitted"
+ api-approved.kubernetes.io: unapproved, request not yet submitted
+ controller-gen.kubebuilder.io/version: v0.13.0
name: decoratorcontrollers.metacontroller.k8s.io
spec:
group: metacontroller.k8s.io
@@ -328,12 +512,17 @@ spec:
- name: v1alpha1
schema:
openAPIV3Schema:
+ description: DecoratorController
properties:
apiVersion:
- description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
+ description: 'APIVersion defines the versioned schema of this representation
+ of an object. Servers should convert recognized schemas to the latest
+ internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
type: string
kind:
- description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
+ description: 'Kind is a string value representing the REST resource this
+ object represents. Servers may infer this from the endpoint the client
+ submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
type: string
metadata:
type: object
@@ -349,6 +538,12 @@ spec:
updateStrategy:
properties:
method:
+ enum:
+ - OnDelete
+ - Recreate
+ - InPlace
+ - RollingRecreate
+ - RollingInPlace
type: string
type: object
required:
@@ -360,10 +555,35 @@ spec:
properties:
customize:
properties:
+ version:
+ default: v1
+ enum:
+ - v1
+ - v2
+ type: string
webhook:
properties:
+ etag:
+ properties:
+ cacheCleanupSeconds:
+ format: int32
+ type: integer
+ cacheTimeoutSeconds:
+ format: int32
+ type: integer
+ enabled:
+ type: boolean
+ type: object
path:
type: string
+ responseUnMarshallMode:
+ description: Sets the json unmarshall mode. One of the
+ 'loose' or 'strict'. In 'strict' mode additional checks
+ are performed to detect unknown and duplicated fields.
+ enum:
+ - loose
+ - strict
+ type: string
service:
properties:
name:
@@ -380,6 +600,7 @@ spec:
- namespace
type: object
timeout:
+ format: duration
type: string
url:
type: string
@@ -387,10 +608,35 @@ spec:
type: object
finalize:
properties:
+ version:
+ default: v1
+ enum:
+ - v1
+ - v2
+ type: string
webhook:
properties:
+ etag:
+ properties:
+ cacheCleanupSeconds:
+ format: int32
+ type: integer
+ cacheTimeoutSeconds:
+ format: int32
+ type: integer
+ enabled:
+ type: boolean
+ type: object
path:
type: string
+ responseUnMarshallMode:
+ description: Sets the json unmarshall mode. One of the
+ 'loose' or 'strict'. In 'strict' mode additional checks
+ are performed to detect unknown and duplicated fields.
+ enum:
+ - loose
+ - strict
+ type: string
service:
properties:
name:
@@ -407,6 +653,7 @@ spec:
- namespace
type: object
timeout:
+ format: duration
type: string
url:
type: string
@@ -414,10 +661,35 @@ spec:
type: object
sync:
properties:
+ version:
+ default: v1
+ enum:
+ - v1
+ - v2
+ type: string
webhook:
properties:
+ etag:
+ properties:
+ cacheCleanupSeconds:
+ format: int32
+ type: integer
+ cacheTimeoutSeconds:
+ format: int32
+ type: integer
+ enabled:
+ type: boolean
+ type: object
path:
type: string
+ responseUnMarshallMode:
+ description: Sets the json unmarshall mode. One of the
+ 'loose' or 'strict'. In 'strict' mode additional checks
+ are performed to detect unknown and duplicated fields.
+ enum:
+ - loose
+ - strict
+ type: string
service:
properties:
name:
@@ -434,6 +706,7 @@ spec:
- namespace
type: object
timeout:
+ format: duration
type: string
url:
type: string
@@ -451,16 +724,25 @@ spec:
type: object
matchExpressions:
items:
- description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
+ description: A label selector requirement is a selector
+ that contains values, a key, and an operator that relates
+ the key and values.
properties:
key:
- description: key is the label key that the selector applies to.
+ description: key is the label key that the selector
+ applies to.
type: string
operator:
- description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
+ description: operator represents a key's relationship
+ to a set of values. Valid operators are In, NotIn,
+ Exists and DoesNotExist.
type: string
values:
- description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
+ description: values is an array of string values.
+ If the operator is In or NotIn, the values array
+ must be non-empty. If the operator is Exists or
+ DoesNotExist, the values array must be empty. This
+ array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -473,21 +755,34 @@ spec:
apiVersion:
type: string
labelSelector:
- description: A label selector is a label query over a set of resources. The result of matchLabels and matchExpressions are ANDed. An empty label selector matches all objects. A null label selector matches no objects.
+ description: A label selector is a label query over a set of
+ resources. The result of matchLabels and matchExpressions
+ are ANDed. An empty label selector matches all objects. A
+ null label selector matches no objects.
properties:
matchExpressions:
- description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
+ description: matchExpressions is a list of label selector
+ requirements. The requirements are ANDed.
items:
- description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
+ description: A label selector requirement is a selector
+ that contains values, a key, and an operator that relates
+ the key and values.
properties:
key:
- description: key is the label key that the selector applies to.
+ description: key is the label key that the selector
+ applies to.
type: string
operator:
- description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
+ description: operator represents a key's relationship
+ to a set of values. Valid operators are In, NotIn,
+ Exists and DoesNotExist.
type: string
values:
- description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
+ description: values is an array of string values.
+ If the operator is In or NotIn, the values array
+ must be non-empty. If the operator is Exists or
+ DoesNotExist, the values array must be empty. This
+ array is replaced during a strategic merge patch.
items:
type: string
type: array
@@ -499,9 +794,14 @@ spec:
matchLabels:
additionalProperties:
type: string
- description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
+ description: matchLabels is a map of {key,value} pairs.
+ A single {key,value} in the matchLabels map is equivalent
+ to an element of matchExpressions, whose key field is
+ "key", the operator is "In", and the values array contains
+ only "value". The requirements are ANDed.
type: object
type: object
+ x-kubernetes-map-type: atomic
resource:
type: string
required:
@@ -524,10 +824,4 @@ spec:
served: true
storage: true
subresources:
- status: {}
-status:
- acceptedNames:
- kind: ""
- plural: ""
- conditions: []
- storedVersions: []
\ No newline at end of file
+ status: {}
\ No newline at end of file
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/metacontroller/base/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/metacontroller/base/kustomization.yaml
index 9b16b60..1f66770 100644
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/metacontroller/base/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/third-party/metacontroller/base/kustomization.yaml
@@ -2,13 +2,16 @@ apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
namespace: kubeflow
resources:
+- cluster-role.yaml
- cluster-role-binding.yaml
- crd.yaml
- service-account.yaml
- stateful-set.yaml
-commonLabels:
- kustomize.component: metacontroller
+labels:
+- includeSelectors: true
+ pairs:
+ kustomize.component: metacontroller
# Update metacontroller CRD:
# Copy the upstream file to crd.yaml in this folder.
-# Upstream file: https://github.com/metacontroller/metacontroller/blob/master/manifests/production/metacontroller-crds-v1.yaml
\ No newline at end of file
+# Upstream file: https://github.com/metacontroller/metacontroller/blob/master/manifests/production/metacontroller-crds-v1.yaml
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/metacontroller/base/stateful-set.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/metacontroller/base/stateful-set.yaml
index b0ca007..09a34a4 100644
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/metacontroller/base/stateful-set.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/third-party/metacontroller/base/stateful-set.yaml
@@ -14,7 +14,6 @@ spec:
metadata:
labels:
app: metacontroller
- annotations:
sidecar.istio.io/inject: "false"
spec:
containers:
@@ -25,11 +24,21 @@ spec:
requests:
cpu: 100m
memory: 256Mi
- command:
- - /usr/bin/metacontroller
- - --zap-log-level=4
- - '--discovery-interval=3600s' # less insane than 10 seconds
+ command: ["/usr/bin/metacontroller"]
+ args:
+ - --zap-log-level=4
+ - --discovery-interval=3600s
+ livenessProbe:
+ httpGet:
+ port: 8081
+ path: /healthz
+ readinessProbe:
+ httpGet:
+ port: 8081
+ path: /readyz
securityContext:
+ seccompProfile:
+ type: RuntimeDefault
capabilities:
drop:
- ALL
@@ -39,7 +48,7 @@ spec:
privileged: false
allowPrivilegeEscalation: false
name: metacontroller
- image: 'docker.io/metacontrollerio/metacontroller:v2.0.4'
+ image: 'ghcr.io/metacontroller/metacontroller:v4.11.22'
serviceAccountName: meta-controller-service
# Workaround for https://github.com/kubernetes-sigs/kustomize/issues/677
volumeClaimTemplates: []
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/minio/base/minio-deployment.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/minio/base/minio-deployment.yaml
index a1bd963..e42f490 100644
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/minio/base/minio-deployment.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/third-party/minio/base/minio-deployment.yaml
@@ -15,6 +15,11 @@ spec:
labels:
app: minio
spec:
+ securityContext:
+ fsGroup: 1000
+ fsGroupChangePolicy: "OnRootMismatch"
+ seccompProfile:
+ type: RuntimeDefault
containers:
- args:
- server
@@ -34,6 +39,16 @@ spec:
name: minio
ports:
- containerPort: 9000
+ securityContext:
+ allowPrivilegeEscalation: false
+ seccompProfile:
+ type: RuntimeDefault
+ runAsNonRoot: true
+ runAsUser: 1000
+ runAsGroup: 0
+ capabilities:
+ drop:
+ - ALL
volumeMounts:
- mountPath: /data
name: data
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/mysql/base/mysql-deployment.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/mysql/base/mysql-deployment.yaml
index 570fe03..1eea4bc 100644
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/mysql/base/mysql-deployment.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/third-party/mysql/base/mysql-deployment.yaml
@@ -53,13 +53,26 @@ spec:
ports:
- containerPort: 3306
name: mysql
+ securityContext:
+ allowPrivilegeEscalation: false
+ runAsNonRoot: true
+ runAsUser: 999
+ runAsGroup: 999
+ capabilities:
+ drop:
+ - ALL
volumeMounts:
- mountPath: /var/lib/mysql
name: mysql-persistent-storage
resources:
- requests:
- cpu: 100m
- memory: 800Mi
+ requests:
+ cpu: 100m
+ memory: 800Mi
+ securityContext:
+ fsGroup: 999
+ fsGroupChangePolicy: OnRootMismatch
+ seccompProfile:
+ type: RuntimeDefault
volumes:
- name: mysql-persistent-storage
persistentVolumeClaim:
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/openshift-pipelines-custom-task/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/openshift-pipelines-custom-task/kustomization.yaml
deleted file mode 100644
index 73c3478..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/openshift-pipelines-custom-task/kustomization.yaml
+++ /dev/null
@@ -1,58 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
- - ../tekton-custom-task
-
-namespace: openshift-pipelines
-
-patches:
-- patch: |-
- - op: remove
- path: /spec/template/spec/containers/0/securityContext/runAsUser
- target:
- group: apps
- kind: Deployment
- name: tekton-pipelineloop-controller
-- patch: |-
- - op: remove
- path: /spec/template/spec/containers/0/securityContext/runAsUser
- target:
- group: apps
- kind: Deployment
- name: tekton-pipelineloop-webhook
-- patch: |-
- - op: remove
- path: /spec/template/spec/containers/0/securityContext/runAsUser
- target:
- group: apps
- kind: Deployment
- name: kfp-driver
-- patch: |-
- - op: remove
- path: /spec/template/spec/containers/0/securityContext/runAsUser
- target:
- group: apps
- kind: Deployment
- name: kfp-exithandler-controller
-- patch: |-
- - op: remove
- path: /spec/template/spec/containers/0/securityContext/runAsUser
- target:
- group: apps
- kind: Deployment
- name: kfp-exithandler-webhook
-- patch: |-
- - op: remove
- path: /spec/template/spec/containers/0/securityContext/runAsUser
- target:
- group: apps
- kind: Deployment
- name: kfptask-controller
-- patch: |-
- - op: remove
- path: /spec/template/spec/containers/0/securityContext/runAsUser
- target:
- group: apps
- kind: Deployment
- name: kfptask-webhook
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/openshift/standalone/anyuid-scc.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/openshift/standalone/anyuid-scc.yaml
deleted file mode 100644
index c7c3e13..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/openshift/standalone/anyuid-scc.yaml
+++ /dev/null
@@ -1,64 +0,0 @@
-apiVersion: security.openshift.io/v1
-kind: SecurityContextConstraints
-metadata:
- annotations:
- kubernetes.io/description: kubeflow-anyuid provides all features of the restricted SCC
- but allows users to run with any UID and any GID.
- name: kubeflow-anyuid-kfp-tekton
-allowHostDirVolumePlugin: false
-allowHostIPC: false
-allowHostNetwork: false
-allowHostPID: false
-allowHostPorts: false
-allowPrivilegeEscalation: true
-allowPrivilegedContainer: true
-allowedCapabilities: null
-defaultAddCapabilities: null
-fsGroup:
- type: RunAsAny
-groups:
-- system:cluster-admins
-priority: 10
-readOnlyRootFilesystem: false
-requiredDropCapabilities:
-- MKNOD
-runAsUser:
- type: RunAsAny
-seLinuxContext:
- type: MustRunAs
-supplementalGroups:
- type: RunAsAny
-users:
-#Metadata DB accesses files owned by root
-- system:serviceaccount:kubeflow:metadatadb
-#Minio accesses files owned by root
-- system:serviceaccount:kubeflow:minio
-#Katib injects container into pods which does not run as non-root user, trying to find Dockerfile for that image and fix it
-- system:serviceaccount:kubeflow:default
-- system:serviceaccount:kubeflow:pipeline-runner
-- system:serviceaccount:kubeflow:kubeflow-pipelines-cache
-- system:serviceaccount:kubeflow:kubeflow-pipelines-cache-deployer-sa
-- system:serviceaccount:kubeflow:metadata-grpc-server
-- system:serviceaccount:kubeflow:kubeflow-pipelines-metadata-writer
-- system:serviceaccount:kubeflow:ml-pipeline
-- system:serviceaccount:kubeflow:ml-pipeline-persistenceagent
-- system:serviceaccount:kubeflow:ml-pipeline-scheduledworkflow
-- system:serviceaccount:kubeflow:ml-pipeline-ui
-- system:serviceaccount:kubeflow:ml-pipeline-viewer-crd-service-account
-- system:serviceaccount:kubeflow:ml-pipeline-visualizationserver
-- system:serviceaccount:kubeflow:mysql
-- system:serviceaccount:kubeflow:kfp-csi-s3
-- system:serviceaccount:kubeflow:kfp-csi-attacher
-- system:serviceaccount:kubeflow:kfp-csi-provisioner
-- system:serviceaccount:openshift-pipelines:kfp-driver
-- system:serviceaccount:openshift-pipelines:kfp-exithandler-controller
-- system:serviceaccount:openshift-pipelines:kfp-exithandler-webhook
-- system:serviceaccount:openshift-pipelines:tekton-pipelineloop-controller
-- system:serviceaccount:openshift-pipelines:tekton-pipelineloop-webhook
-volumes:
-- configMap
-- downwardAPI
-- emptyDir
-- persistentVolumeClaim
-- projected
-- secret
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/openshift/standalone/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/openshift/standalone/kustomization.yaml
deleted file mode 100644
index 707e8b8..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/openshift/standalone/kustomization.yaml
+++ /dev/null
@@ -1,6 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
- - anyuid-scc.yaml
- - privileged-scc.yaml
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/openshift/standalone/privileged-scc.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/openshift/standalone/privileged-scc.yaml
deleted file mode 100644
index 84b0ceb..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/openshift/standalone/privileged-scc.yaml
+++ /dev/null
@@ -1,65 +0,0 @@
-apiVersion: security.openshift.io/v1
-kind: SecurityContextConstraints
-metadata:
- annotations:
- kubernetes.io/description: kubeflow-anyuid provides all features of the restricted SCC
- but allows users to run with any UID and any GID.
- name: kubeflow-privileged-kfp-tekton
-allowHostDirVolumePlugin: true
-allowHostIPC: false
-allowHostNetwork: false
-allowHostPID: false
-allowHostPorts: false
-allowPrivilegeEscalation: true
-allowPrivilegedContainer: true
-allowedCapabilities: null
-defaultAddCapabilities: null
-fsGroup:
- type: RunAsAny
-groups:
-- system:cluster-admins
-priority: 10
-readOnlyRootFilesystem: false
-requiredDropCapabilities:
-- MKNOD
-runAsUser:
- type: RunAsAny
-seLinuxContext:
- type: MustRunAs
-supplementalGroups:
- type: RunAsAny
-users:
-#Metadata DB accesses files owned by root
-- system:serviceaccount:kubeflow:metadatadb
-#Minio accesses files owned by root
-- system:serviceaccount:kubeflow:minio
-#Katib injects container into pods which does not run as non-root user, trying to find Dockerfile for that image and fix it
-- system:serviceaccount:kubeflow:default
-- system:serviceaccount:kubeflow:pipeline-runner
-- system:serviceaccount:kubeflow:kubeflow-pipelines-cache
-- system:serviceaccount:kubeflow:kubeflow-pipelines-cache-deployer-sa
-- system:serviceaccount:kubeflow:metadata-grpc-server
-- system:serviceaccount:kubeflow:kubeflow-pipelines-metadata-writer
-- system:serviceaccount:kubeflow:ml-pipeline
-- system:serviceaccount:kubeflow:ml-pipeline-persistenceagent
-- system:serviceaccount:kubeflow:ml-pipeline-scheduledworkflow
-- system:serviceaccount:kubeflow:ml-pipeline-ui
-- system:serviceaccount:kubeflow:ml-pipeline-viewer-crd-service-account
-- system:serviceaccount:kubeflow:ml-pipeline-visualizationserver
-- system:serviceaccount:kubeflow:mysql
-- system:serviceaccount:kubeflow:kfp-csi-s3
-- system:serviceaccount:kubeflow:kfp-csi-attacher
-- system:serviceaccount:kubeflow:kfp-csi-provisioner
-- system:serviceaccount:openshift-pipelines:kfp-driver
-- system:serviceaccount:openshift-pipelines:kfp-exithandler-controller
-- system:serviceaccount:openshift-pipelines:kfp-exithandler-webhook
-- system:serviceaccount:openshift-pipelines:tekton-pipelineloop-controller
-- system:serviceaccount:openshift-pipelines:tekton-pipelineloop-webhook
-volumes:
-- configMap
-- downwardAPI
-- emptyDir
-- persistentVolumeClaim
-- projected
-- secret
-- hostPath
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/prometheus/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/prometheus/kustomization.yaml
index 9b2d54e..7fab600 100644
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/prometheus/kustomization.yaml
+++ b/charts/kubeflow/apps/pipeline/upstream/third-party/prometheus/kustomization.yaml
@@ -8,4 +8,4 @@ resources:
- prometheus-service.yaml
- prometheus-deployment.yaml
images:
- - name: prom/prometheus
+- name: prom/prometheus
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/exit-handler/200-serviceaccount.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/exit-handler/200-serviceaccount.yaml
deleted file mode 100644
index d0c47df..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/exit-handler/200-serviceaccount.yaml
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 2023 kubeflow.org
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: kfp-exithandler-controller
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
----
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: kfp-exithandler-webhook
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
\ No newline at end of file
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/exit-handler/201-clusterrole.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/exit-handler/201-clusterrole.yaml
deleted file mode 100644
index 567e7bd..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/exit-handler/201-clusterrole.yaml
+++ /dev/null
@@ -1,109 +0,0 @@
-# Copyright 2023 kubeflow.org
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: kfp-exithandler-controller-cluster-access
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
-rules:
- # Controller needs cluster access to all of the CRDs that it is responsible for managing.
- - apiGroups: ["tekton.dev"]
- resources: ["runs", "customruns", "taskruns", "pipelineruns"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
- - apiGroups: ["tekton.dev"]
- resources: ["runs/status", "customruns/status", "taskruns/status", "pipelineruns/status", "runs/finalizers", "customruns/finalizers",]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
- - apiGroups: ["custom.tekton.dev"]
- resources: ["exithandlers"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
- - apiGroups: ["apps"]
- resources: ["deployments", "deployments/finalizers"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
----
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- # This is the access that the controller needs on a per-namespace basis.
- name: kfp-exithandler-controller-tenant-access
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
-rules:
- - apiGroups: [""]
- resources: ["events"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
----
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: kfp-exithandler-webhook-cluster-access
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
-rules:
- # The webhook needs to be able to list and update customresourcedefinitions,
- # mainly to update the webhook certificates.
- - apiGroups: ["apiextensions.k8s.io"]
- resources: ["customresourcedefinitions", "customresourcedefinitions/status"]
- verbs: ["get", "list", "update", "patch", "watch"]
- - apiGroups: [""]
- resources: ["namespaces"]
- verbs: ["get", "list", "update", "patch", "watch"]
- - apiGroups: ["admissionregistration.k8s.io"]
- # The webhook performs a reconciliation on these two resources and continuously
- # updates configuration.
- resources: ["mutatingwebhookconfigurations", "validatingwebhookconfigurations"]
- # knative starts informers on these things, which is why we need get, list and watch.
- verbs: ["list", "watch"]
- - apiGroups: ["admissionregistration.k8s.io"]
- resources: ["mutatingwebhookconfigurations"]
- # This mutating webhook is responsible for applying defaults to tekton objects
- # as they are received.
- resourceNames: ["webhook.exithandler.custom.tekton.dev"]
- # When there are changes to the configs or secrets, knative updates the mutatingwebhook config
- # with the updated certificates or the refreshed set of rules.
- verbs: ["get", "update"]
- - apiGroups: ["apps"]
- resources: ["deployments", "deployments/finalizers"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
- - apiGroups: ["admissionregistration.k8s.io"]
- resources: ["validatingwebhookconfigurations"]
- # validation.webhook.exithandler.custom.tekton.dev performs schema validation when you, for example, create ExitHandlers.
- resourceNames: ["validation.webhook.exithandler.custom.tekton.dev"]
- # When there are changes to the configs or secrets, knative updates the validatingwebhook config
- # with the updated certificates or the refreshed set of rules.
- verbs: ["get", "update"]
- - apiGroups: ["policy"]
- resources: ["podsecuritypolicies"]
- resourceNames: ["tekton-pipelines", "openshift-pipelines"]
- verbs: ["use"]
----
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: kfp-exithandler-leader-election
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
-rules:
- # We uses leases for leaderelection
- - apiGroups: ["coordination.k8s.io"]
- resources: ["leases"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/exit-handler/201-role.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/exit-handler/201-role.yaml
deleted file mode 100644
index b22ced5..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/exit-handler/201-role.yaml
+++ /dev/null
@@ -1,68 +0,0 @@
-# Copyright 2023 kubeflow.org
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-kind: Role
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: kfp-exithandler-controller
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
-rules:
- - apiGroups: [""]
- resources: ["configmaps"]
- verbs: ["list", "watch"]
- - apiGroups: [""]
- resources: ["configmaps"]
- verbs: ["get"]
- resourceNames: ["config-leader-election", "config-logging", "config-observability", "object-store-config", "cache-config"]
- - apiGroups: ["policy"]
- resources: ["podsecuritypolicies"]
- resourceNames: ["tekton-pipelines", "openshift-pipelines"]
- verbs: ["use"]
----
-kind: Role
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: kfp-exithandler-webhook
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
-rules:
- - apiGroups: [""]
- resources: ["configmaps"]
- verbs: ["list", "watch"]
- # The webhook needs access to these configmaps for logging information.
- - apiGroups: [""]
- resources: ["configmaps"]
- verbs: ["get"]
- resourceNames: ["config-logging", "config-observability", "config-leader-election", "object-store-config", "cache-config"]
- - apiGroups: [""]
- resources: ["secrets"]
- verbs: ["list", "watch"]
- # The webhook daemon makes a reconciliation loop on kfp-exithandler-webhook-certs. Whenever
- # the secret changes it updates the webhook configurations with the certificates
- # stored in the secret.
- - apiGroups: [""]
- resources: ["secrets"]
- verbs: ["get", "update"]
- resourceNames: ["kfp-exithandler-webhook-certs"]
- - apiGroups: ["policy"]
- resources: ["podsecuritypolicies"]
- resourceNames: ["tekton-pipelines", "openshift-pipelines"]
- verbs: ["use"]
\ No newline at end of file
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/exit-handler/201-rolebinding.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/exit-handler/201-rolebinding.yaml
deleted file mode 100644
index f4ab606..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/exit-handler/201-rolebinding.yaml
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 2023 kubeflow.org
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: kfp-exithandler-controller
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
-subjects:
- - kind: ServiceAccount
- name: kfp-exithandler-controller
- namespace: tekton-pipelines
-roleRef:
- kind: Role
- name: kfp-exithandler-controller
- apiGroup: rbac.authorization.k8s.io
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: kfp-exithandler-webhook
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
-subjects:
- - kind: ServiceAccount
- name: kfp-exithandler-webhook
- namespace: tekton-pipelines
-roleRef:
- kind: Role
- name: kfp-exithandler-webhook
- apiGroup: rbac.authorization.k8s.io
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/exit-handler/202-clusterrolebinding.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/exit-handler/202-clusterrolebinding.yaml
deleted file mode 100644
index d2bae5c..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/exit-handler/202-clusterrolebinding.yaml
+++ /dev/null
@@ -1,102 +0,0 @@
-# Copyright 2020 The Knative Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: kfp-exithandler-controller-cluster-access
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
-subjects:
- - kind: ServiceAccount
- name: kfp-exithandler-controller
- namespace: tekton-pipelines
-roleRef:
- kind: ClusterRole
- name: kfp-exithandler-controller-cluster-access
- apiGroup: rbac.authorization.k8s.io
----
-# If this ClusterRoleBinding is replaced with a RoleBinding
-# then the ClusterRole would be namespaced. The access described by
-# the kfp-exithandler-controller-tenant-access ClusterRole would
-# be scoped to individual tenant namespaces.
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: kfp-exithandler-controller-tenant-access
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
-subjects:
- - kind: ServiceAccount
- name: kfp-exithandler-controller
- namespace: tekton-pipelines
-roleRef:
- kind: ClusterRole
- name: kfp-exithandler-controller-tenant-access
- apiGroup: rbac.authorization.k8s.io
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: kfp-exithandler-controller-leaderelection
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
-subjects:
- - kind: ServiceAccount
- name: kfp-exithandler-controller
- namespace: tekton-pipelines
-roleRef:
- kind: ClusterRole
- name: kfp-exithandler-leader-election
- apiGroup: rbac.authorization.k8s.io
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: kfp-exithandler-webhook-cluster-access
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
-subjects:
- - kind: ServiceAccount
- name: kfp-exithandler-webhook
- namespace: tekton-pipelines
-roleRef:
- kind: ClusterRole
- name: kfp-exithandler-webhook-cluster-access
- apiGroup: rbac.authorization.k8s.io
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: kfp-exithandler-webhook-leaderelection
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
-subjects:
- - kind: ServiceAccount
- name: kfp-exithandler-webhook
- namespace: tekton-pipelines
-roleRef:
- kind: ClusterRole
- name: kfp-exithandler-leader-election
- apiGroup: rbac.authorization.k8s.io
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/exit-handler/300-exithandler-crd.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/exit-handler/300-exithandler-crd.yaml
deleted file mode 100644
index cec9357..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/exit-handler/300-exithandler-crd.yaml
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 2023 kubeflow.org
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- name: exithandlers.custom.tekton.dev
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
- pipeline.tekton.dev/release: "devel"
- version: "devel"
-spec:
- group: custom.tekton.dev
- versions:
- - name: v1alpha1
- served: true
- storage: true
- # Opt into the status subresource so metadata.generation
- # starts to increment
- subresources:
- status: {}
- schema:
- openAPIV3Schema:
- type: object
- # One can use x-kubernetes-preserve-unknown-fields: true
- # at the root of the schema (and inside any properties, additionalProperties)
- # to get the traditional CRD behaviour that nothing is pruned, despite
- # setting spec.preserveUnknownProperties: false.
- #
- # See https://kubernetes.io/blog/2019/06/20/crd-structural-schema/
- # See issue: https://github.com/knative/serving/issues/912
- x-kubernetes-preserve-unknown-fields: true
- names:
- kind: ExitHandler
- plural: exithandlers
- categories:
- - tekton
- - tekton-pipelines
- - openshift-pipelines
- scope: Namespaced
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/exit-handler/500-controller.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/exit-handler/500-controller.yaml
deleted file mode 100644
index e150a4f..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/exit-handler/500-controller.yaml
+++ /dev/null
@@ -1,79 +0,0 @@
-# Copyright 2023 kubeflow.org
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: kfp-exithandler-controller
- labels:
- app.kubernetes.io/name: controller
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "devel"
- app.kubernetes.io/part-of: kfp-tekton
- # tekton.dev/release value replaced with inputs.params.versionTag in pipeline/tekton/publish.yaml
- pipeline.tekton.dev/release: "devel"
- # labels below are related to istio and should not be used for resource lookup
- version: "devel"
-spec:
- replicas: 1
- selector:
- matchLabels:
- app.kubernetes.io/name: controller
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
- template:
- metadata:
- annotations:
- cluster-autoscaler.kubernetes.io/safe-to-evict: "false"
- labels:
- app.kubernetes.io/name: controller
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "devel"
- app.kubernetes.io/part-of: kfp-tekton
- # tekton.dev/release value replaced with inputs.params.versionTag in pipeline/tekton/publish.yaml
- pipeline.tekton.dev/release: "devel"
- # labels below are related to istio and should not be used for resource lookup
- app: kfp-exithandler-controller
- version: "devel"
- spec:
- serviceAccountName: kfp-exithandler-controller
- containers:
- - name: kfp-exithandler-controller
- image: tekton-exithandler-controller:dummy
- env:
- - name: SYSTEM_NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- - name: CONFIG_LEADERELECTION_NAME
- value: config-leader-election
- - name: CONFIG_LOGGING_NAME
- value: config-logging
- - name: CONFIG_OBSERVABILITY_NAME
- value: config-observability
- - name: METRICS_DOMAIN
- value: tekton.dev/pipeline
- securityContext:
- allowPrivilegeEscalation: false
- capabilities:
- drop:
- - ALL
- runAsNonRoot: true
- runAsGroup: 65532
- runAsUser: 65532
- seccompProfile:
- type: RuntimeDefault
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/exit-handler/500-webhook-configuration.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/exit-handler/500-webhook-configuration.yaml
deleted file mode 100644
index 345c57d..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/exit-handler/500-webhook-configuration.yaml
+++ /dev/null
@@ -1,68 +0,0 @@
-# Copyright 2023 kubeflow.org
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: Secret
-metadata:
- name: kfp-exithandler-webhook-certs
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
- pipeline.tekton.dev/release: "devel"
-# The data is populated at install time.
-
----
-apiVersion: admissionregistration.k8s.io/v1
-kind: ValidatingWebhookConfiguration
-metadata:
- name: validation.webhook.exithandler.custom.tekton.dev
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
- pipeline.tekton.dev/release: "devel"
-webhooks:
-- admissionReviewVersions:
- - v1beta1
- clientConfig:
- service:
- name: kfp-exithandler-webhook
- namespace: tekton-pipelines
- failurePolicy: Fail
- sideEffects: None
- name: validation.webhook.exithandler.custom.tekton.dev
-
----
-apiVersion: admissionregistration.k8s.io/v1
-kind: MutatingWebhookConfiguration
-metadata:
- name: webhook.exithandler.custom.tekton.dev
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
- pipeline.tekton.dev/release: "devel"
-webhooks:
-- admissionReviewVersions:
- - v1beta1
- clientConfig:
- service:
- name: kfp-exithandler-webhook
- namespace: tekton-pipelines
- failurePolicy: Fail
- sideEffects: None
- name: webhook.exithandler.custom.tekton.dev
-
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/exit-handler/500-webhook.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/exit-handler/500-webhook.yaml
deleted file mode 100644
index 2f8a394..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/exit-handler/500-webhook.yaml
+++ /dev/null
@@ -1,122 +0,0 @@
-# Copyright 2023 kubeflow.org
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: kfp-exithandler-webhook
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "devel"
- app.kubernetes.io/part-of: kfp-tekton
- pipeline.tekton.dev/release: "devel"
- version: "devel"
-spec:
- replicas: 1
- selector:
- matchLabels:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
- template:
- metadata:
- annotations:
- cluster-autoscaler.kubernetes.io/safe-to-evict: "false"
- labels:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "devel"
- app.kubernetes.io/part-of: kfp-tekton
- pipeline.tekton.dev/release: "devel"
- app: tekton-pipelines-webhook
- version: "devel"
- spec:
- serviceAccountName: kfp-exithandler-webhook
- containers:
- - name: webhook
- image: tekton-exithandler-webhook:dummy
- env:
- - name: SYSTEM_NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- # If you are changing these names, you will also need to update
- # the webhook's Role in 200-role.yaml to include the new
- # values in the "configmaps" "get" rule.
- - name: CONFIG_LOGGING_NAME
- value: config-logging
- - name: CONFIG_OBSERVABILITY_NAME
- value: config-observability
- - name: CONFIG_LEADERELECTION_NAME
- value: config-leader-election
- - name: WEBHOOK_SERVICE_NAME
- value: kfp-exithandler-webhook
- - name: WEBHOOK_SECRET_NAME
- value: kfp-exithandler-webhook-certs
- - name: METRICS_DOMAIN
- value: tekton.dev/pipeline
- ports:
- - name: metrics
- containerPort: 9090
- - name: profiling
- containerPort: 8008
- - name: https-webhook
- containerPort: 8443
- securityContext:
- allowPrivilegeEscalation: false
- capabilities:
- drop:
- - ALL
- runAsNonRoot: true
- runAsGroup: 65532
- runAsUser: 65532
- seccompProfile:
- type: RuntimeDefault
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "devel"
- app.kubernetes.io/part-of: kfp-tekton
- pipeline.tekton.dev/release: "devel"
- app: tekton-pipelines-webhook
- version: "devel"
- name: kfp-exithandler-webhook
- namespace: tekton-pipelines
-spec:
- ports:
- # Define metrics and profiling for them to be accessible within service meshes.
- - name: http-metrics
- port: 9090
- targetPort: 9090
- - name: http-profiling
- port: 8008
- targetPort: 8008
- - name: https-webhook
- port: 443
- targetPort: 8443
- selector:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/exit-handler/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/exit-handler/kustomization.yaml
deleted file mode 100644
index e9cd598..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/exit-handler/kustomization.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
- - 200-serviceaccount.yaml
- - 201-clusterrole.yaml
- - 201-role.yaml
- - 201-rolebinding.yaml
- - 202-clusterrolebinding.yaml
- - 300-exithandler-crd.yaml
- - 500-controller.yaml
- - 500-webhook-configuration.yaml
- - 500-webhook.yaml
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/kfptask/200-serviceaccount.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/kfptask/200-serviceaccount.yaml
deleted file mode 100644
index d9e470e..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/kfptask/200-serviceaccount.yaml
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 2023 kubeflow.org
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: kfptask-controller
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
----
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: kfptask-webhook
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
\ No newline at end of file
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/kfptask/201-clusterrole.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/kfptask/201-clusterrole.yaml
deleted file mode 100644
index d8da4a5..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/kfptask/201-clusterrole.yaml
+++ /dev/null
@@ -1,122 +0,0 @@
-# Copyright 2023 kubeflow.org
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: kfptask-controller-cluster-access
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
-rules:
- # Controller needs cluster access to all of the CRDs that it is responsible for managing.
- - apiGroups: ["tekton.dev"]
- resources: ["runs", "customruns", "taskruns", "pipelineruns"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
- - apiGroups: ["tekton.dev"]
- resources: ["runs/status", "customruns/status", "taskruns/status", "pipelineruns/status", "runs/finalizers", "customruns/finalizers",]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
- - apiGroups: ["custom.tekton.dev"]
- resources: ["kfptasks"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
- - apiGroups: ["apps"]
- resources: ["deployments", "deployments/finalizers"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
- - apiGroups: [""]
- resources: ["persistentvolumes", "persistentvolumeclaims"]
- verbs: ["*"]
-
- # Controller needs permission to emit events associated with Run CRs.
- - apiGroups: [""]
- resources: ["events"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
-
- # driver needs to access configmaps to get configuration
- - apiGroups: [""]
- resources: ["configmaps"]
- verbs: ["get", "watch", "list"]
----
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- # This is the access that the controller needs on a per-namespace basis.
- name: kfptask-controller-tenant-access
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
-rules:
- - apiGroups: [""]
- resources: ["events"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
----
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: kfptask-webhook-cluster-access
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
-rules:
- # The webhook needs to be able to list and update customresourcedefinitions,
- # mainly to update the webhook certificates.
- - apiGroups: ["apiextensions.k8s.io"]
- resources: ["customresourcedefinitions", "customresourcedefinitions/status"]
- verbs: ["get", "list", "update", "patch", "watch"]
- - apiGroups: [""]
- resources: ["namespaces"]
- verbs: ["get", "list", "update", "patch", "watch"]
- - apiGroups: ["admissionregistration.k8s.io"]
- # The webhook performs a reconciliation on these two resources and continuously
- # updates configuration.
- resources: ["mutatingwebhookconfigurations", "validatingwebhookconfigurations"]
- # knative starts informers on these things, which is why we need get, list and watch.
- verbs: ["list", "watch"]
- - apiGroups: ["admissionregistration.k8s.io"]
- resources: ["mutatingwebhookconfigurations"]
- # This mutating webhook is responsible for applying defaults to tekton objects
- # as they are received.
- resourceNames: ["webhook.kfptask.custom.tekton.dev"]
- # When there are changes to the configs or secrets, knative updates the mutatingwebhook config
- # with the updated certificates or the refreshed set of rules.
- verbs: ["get", "update"]
- - apiGroups: ["apps"]
- resources: ["deployments", "deployments/finalizers"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
- - apiGroups: ["admissionregistration.k8s.io"]
- resources: ["validatingwebhookconfigurations"]
- # validation.webhook.kfptask.custom.tekton.dev performs schema validation when you, for example, create KfpTasks.
- resourceNames: ["validation.webhook.kfptask.custom.tekton.dev"]
- # When there are changes to the configs or secrets, knative updates the validatingwebhook config
- # with the updated certificates or the refreshed set of rules.
- verbs: ["get", "update"]
- - apiGroups: ["policy"]
- resources: ["podsecuritypolicies"]
- resourceNames: ["tekton-pipelines", "openshift-pipelines"]
- verbs: ["use"]
----
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: kfptask-leader-election
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
-rules:
- # We uses leases for leaderelection
- - apiGroups: ["coordination.k8s.io"]
- resources: ["leases"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/kfptask/201-role.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/kfptask/201-role.yaml
deleted file mode 100644
index 757ec7c..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/kfptask/201-role.yaml
+++ /dev/null
@@ -1,96 +0,0 @@
-# Copyright 2023 kubeflow.org
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-kind: Role
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: kfptask-controller
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
-rules:
- - apiGroups: [""]
- resources: ["configmaps"]
- verbs: ["list", "watch"]
- - apiGroups: [""]
- resources: ["configmaps"]
- verbs: ["get"]
- resourceNames: ["config-leader-election", "config-logging", "config-observability", "object-store-config", "cache-config"]
- - apiGroups: ["policy"]
- resources: ["podsecuritypolicies"]
- resourceNames: ["tekton-pipelines", "openshift-pipelines"]
- verbs: ["use"]
- - apiGroups: [""]
- resources: ["secrets"]
- verbs: ["get"]
- - apiGroups: [""]
- resources: ["persistentvolumes", persistentvolumeclaims]
- verbs: ["*"]
- - apiGroups: ["snapshot.storage.k8s.io"]
- resources: ["volumesnapshots"]
- verbs: ["create", "delete", "get"]
- - apiGroups: [""]
- resources: ["pods", "pods/exec", "pods/log", "services"]
- verbs: ["*"]
- - apiGroups: ["", "apps", "extensions"]
- resources: ["deployments", "replicasets"]
- verbs: ["*"]
- - apiGroups: ["kubeflow.org"]
- resources: ["*"]
- verbs: ["*"]
- - apiGroups: ["batch"]
- resources: ["jobs"]
- verbs: ["*"]
- - apiGroups: ["machinelearning.seldon.io"]
- resources: ["seldondeployments"]
- verbs: ["*"]
- - apiGroups: ["policy"]
- resources: ["podsecuritypolicies"]
- resourceNames: ["tekton-pipelines", "openshift-pipelines"]
- verbs: ["use"]
----
-kind: Role
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: kfptask-webhook
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
-rules:
- - apiGroups: [""]
- resources: ["configmaps"]
- verbs: ["list", "watch"]
- # The webhook needs access to these configmaps for logging information.
- - apiGroups: [""]
- resources: ["configmaps"]
- verbs: ["get"]
- resourceNames: ["config-logging", "config-observability", "config-leader-election", "object-store-config", "cache-config"]
- - apiGroups: [""]
- resources: ["secrets"]
- verbs: ["list", "watch"]
- # The webhook daemon makes a reconciliation loop on kfptask-webhook-certs. Whenever
- # the secret changes it updates the webhook configurations with the certificates
- # stored in the secret.
- - apiGroups: [""]
- resources: ["secrets"]
- verbs: ["get", "update"]
- resourceNames: ["kfptask-webhook-certs"]
- - apiGroups: ["policy"]
- resources: ["podsecuritypolicies"]
- resourceNames: ["tekton-pipelines", "openshift-pipelines"]
- verbs: ["use"]
\ No newline at end of file
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/kfptask/201-rolebinding.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/kfptask/201-rolebinding.yaml
deleted file mode 100644
index d8aa0c8..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/kfptask/201-rolebinding.yaml
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 2023 kubeflow.org
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: kfptask-controller
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
-subjects:
- - kind: ServiceAccount
- name: kfptask-controller
- namespace: tekton-pipelines
-roleRef:
- kind: Role
- name: kfptask-controller
- apiGroup: rbac.authorization.k8s.io
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: kfptask-webhook
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
-subjects:
- - kind: ServiceAccount
- name: kfptask-webhook
- namespace: tekton-pipelines
-roleRef:
- kind: Role
- name: kfptask-webhook
- apiGroup: rbac.authorization.k8s.io
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/kfptask/202-clusterrolebinding.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/kfptask/202-clusterrolebinding.yaml
deleted file mode 100644
index 166e0be..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/kfptask/202-clusterrolebinding.yaml
+++ /dev/null
@@ -1,102 +0,0 @@
-# Copyright 2020 The Knative Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: kfptask-controller-cluster-access
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
-subjects:
- - kind: ServiceAccount
- name: kfptask-controller
- namespace: tekton-pipelines
-roleRef:
- kind: ClusterRole
- name: kfptask-controller-cluster-access
- apiGroup: rbac.authorization.k8s.io
----
-# If this ClusterRoleBinding is replaced with a RoleBinding
-# then the ClusterRole would be namespaced. The access described by
-# the kfptask-controller-tenant-access ClusterRole would
-# be scoped to individual tenant namespaces.
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: kfptask-controller-tenant-access
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
-subjects:
- - kind: ServiceAccount
- name: kfptask-controller
- namespace: tekton-pipelines
-roleRef:
- kind: ClusterRole
- name: kfptask-controller-tenant-access
- apiGroup: rbac.authorization.k8s.io
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: kfptask-controller-leaderelection
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
-subjects:
- - kind: ServiceAccount
- name: kfptask-controller
- namespace: tekton-pipelines
-roleRef:
- kind: ClusterRole
- name: kfptask-leader-election
- apiGroup: rbac.authorization.k8s.io
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: kfptask-webhook-cluster-access
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
-subjects:
- - kind: ServiceAccount
- name: kfptask-webhook
- namespace: tekton-pipelines
-roleRef:
- kind: ClusterRole
- name: kfptask-webhook-cluster-access
- apiGroup: rbac.authorization.k8s.io
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: kfptask-webhook-leaderelection
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
-subjects:
- - kind: ServiceAccount
- name: kfptask-webhook
- namespace: tekton-pipelines
-roleRef:
- kind: ClusterRole
- name: kfptask-leader-election
- apiGroup: rbac.authorization.k8s.io
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/kfptask/300-kfptask-crd.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/kfptask/300-kfptask-crd.yaml
deleted file mode 100644
index 3c97edc..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/kfptask/300-kfptask-crd.yaml
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 2023 kubeflow.org
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- name: kfptasks.custom.tekton.dev
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
- pipeline.tekton.dev/release: "devel"
- version: "devel"
-spec:
- group: custom.tekton.dev
- versions:
- - name: v1alpha1
- served: true
- storage: true
- # Opt into the status subresource so metadata.generation
- # starts to increment
- subresources:
- status: {}
- schema:
- openAPIV3Schema:
- type: object
- # One can use x-kubernetes-preserve-unknown-fields: true
- # at the root of the schema (and inside any properties, additionalProperties)
- # to get the traditional CRD behaviour that nothing is pruned, despite
- # setting spec.preserveUnknownProperties: false.
- #
- # See https://kubernetes.io/blog/2019/06/20/crd-structural-schema/
- # See issue: https://github.com/knative/serving/issues/912
- x-kubernetes-preserve-unknown-fields: true
- names:
- kind: KfpTask
- plural: kfptasks
- categories:
- - tekton
- - tekton-pipelines
- - openshift-pipelines
- scope: Namespaced
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/kfptask/500-controller.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/kfptask/500-controller.yaml
deleted file mode 100644
index 8a09a87..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/kfptask/500-controller.yaml
+++ /dev/null
@@ -1,79 +0,0 @@
-# Copyright 2023 kubeflow.org
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: kfptask-controller
- labels:
- app.kubernetes.io/name: controller
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "devel"
- app.kubernetes.io/part-of: kfp-tekton
- # tekton.dev/release value replaced with inputs.params.versionTag in pipeline/tekton/publish.yaml
- pipeline.tekton.dev/release: "devel"
- # labels below are related to istio and should not be used for resource lookup
- version: "devel"
-spec:
- replicas: 1
- selector:
- matchLabels:
- app.kubernetes.io/name: controller
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
- template:
- metadata:
- annotations:
- cluster-autoscaler.kubernetes.io/safe-to-evict: "false"
- labels:
- app.kubernetes.io/name: controller
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "devel"
- app.kubernetes.io/part-of: kfp-tekton
- # tekton.dev/release value replaced with inputs.params.versionTag in pipeline/tekton/publish.yaml
- pipeline.tekton.dev/release: "devel"
- # labels below are related to istio and should not be used for resource lookup
- app: kfptask-controller
- version: "devel"
- spec:
- serviceAccountName: kfptask-controller
- containers:
- - name: kfptask-controller
- image: tekton-kfptask-controller:dummy
- env:
- - name: SYSTEM_NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- - name: CONFIG_LEADERELECTION_NAME
- value: config-leader-election
- - name: CONFIG_LOGGING_NAME
- value: config-logging
- - name: CONFIG_OBSERVABILITY_NAME
- value: config-observability
- - name: METRICS_DOMAIN
- value: tekton.dev/pipeline
- securityContext:
- allowPrivilegeEscalation: false
- capabilities:
- drop:
- - ALL
- runAsNonRoot: true
- runAsGroup: 65532
- runAsUser: 65532
- seccompProfile:
- type: RuntimeDefault
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/kfptask/500-webhook-configuration.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/kfptask/500-webhook-configuration.yaml
deleted file mode 100644
index 8391100..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/kfptask/500-webhook-configuration.yaml
+++ /dev/null
@@ -1,68 +0,0 @@
-# Copyright 2023 kubeflow.org
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: Secret
-metadata:
- name: kfptask-webhook-certs
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
- pipeline.tekton.dev/release: "devel"
-# The data is populated at install time.
-
----
-apiVersion: admissionregistration.k8s.io/v1
-kind: ValidatingWebhookConfiguration
-metadata:
- name: validation.webhook.kfptask.custom.tekton.dev
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
- pipeline.tekton.dev/release: "devel"
-webhooks:
-- admissionReviewVersions:
- - v1beta1
- clientConfig:
- service:
- name: kfptask-webhook
- namespace: tekton-pipelines
- failurePolicy: Fail
- sideEffects: None
- name: validation.webhook.kfptask.custom.tekton.dev
-
----
-apiVersion: admissionregistration.k8s.io/v1
-kind: MutatingWebhookConfiguration
-metadata:
- name: webhook.kfptask.custom.tekton.dev
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
- pipeline.tekton.dev/release: "devel"
-webhooks:
-- admissionReviewVersions:
- - v1beta1
- clientConfig:
- service:
- name: kfptask-webhook
- namespace: tekton-pipelines
- failurePolicy: Fail
- sideEffects: None
- name: webhook.kfptask.custom.tekton.dev
-
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/kfptask/500-webhook.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/kfptask/500-webhook.yaml
deleted file mode 100644
index 966eb46..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/kfptask/500-webhook.yaml
+++ /dev/null
@@ -1,122 +0,0 @@
-# Copyright 2023 kubeflow.org
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: kfptask-webhook
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "devel"
- app.kubernetes.io/part-of: kfp-tekton
- pipeline.tekton.dev/release: "devel"
- version: "devel"
-spec:
- replicas: 1
- selector:
- matchLabels:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
- template:
- metadata:
- annotations:
- cluster-autoscaler.kubernetes.io/safe-to-evict: "false"
- labels:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "devel"
- app.kubernetes.io/part-of: kfp-tekton
- pipeline.tekton.dev/release: "devel"
- app: tekton-pipelines-webhook
- version: "devel"
- spec:
- serviceAccountName: kfptask-webhook
- containers:
- - name: webhook
- image: tekton-kfptask-webhook:dummy
- env:
- - name: SYSTEM_NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- # If you are changing these names, you will also need to update
- # the webhook's Role in 200-role.yaml to include the new
- # values in the "configmaps" "get" rule.
- - name: CONFIG_LOGGING_NAME
- value: config-logging
- - name: CONFIG_OBSERVABILITY_NAME
- value: config-observability
- - name: CONFIG_LEADERELECTION_NAME
- value: config-leader-election
- - name: WEBHOOK_SERVICE_NAME
- value: kfptask-webhook
- - name: WEBHOOK_SECRET_NAME
- value: kfptask-webhook-certs
- - name: METRICS_DOMAIN
- value: tekton.dev/pipeline
- ports:
- - name: metrics
- containerPort: 9090
- - name: profiling
- containerPort: 8008
- - name: https-webhook
- containerPort: 8443
- securityContext:
- allowPrivilegeEscalation: false
- capabilities:
- drop:
- - ALL
- runAsNonRoot: true
- runAsGroup: 65532
- runAsUser: 65532
- seccompProfile:
- type: RuntimeDefault
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "devel"
- app.kubernetes.io/part-of: kfp-tekton
- pipeline.tekton.dev/release: "devel"
- app: tekton-pipelines-webhook
- version: "devel"
- name: kfptask-webhook
- namespace: tekton-pipelines
-spec:
- ports:
- # Define metrics and profiling for them to be accessible within service meshes.
- - name: http-metrics
- port: 9090
- targetPort: 9090
- - name: http-profiling
- port: 8008
- targetPort: 8008
- - name: https-webhook
- port: 443
- targetPort: 8443
- selector:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: kfp-tekton
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/kfptask/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/kfptask/kustomization.yaml
deleted file mode 100644
index de29e86..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/kfptask/kustomization.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
- - 200-serviceaccount.yaml
- - 201-clusterrole.yaml
- - 201-role.yaml
- - 201-rolebinding.yaml
- - 202-clusterrolebinding.yaml
- - 300-kfptask-crd.yaml
- - 500-controller.yaml
- - 500-webhook-configuration.yaml
- - 500-webhook.yaml
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/kustomization.yaml
deleted file mode 100644
index 3af66de..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/kustomization.yaml
+++ /dev/null
@@ -1,33 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
-- pipeline-loops
-- exit-handler
-- kfptask
-# Deprecated controller
-# - driver-controller
-
-namespace: tekton-pipelines
-
-images:
- - name: quay.io/aipipeline/pipelineloop-controller
- newTag: 1.9.2
- - name: quay.io/aipipeline/pipelineloop-webhook
- newTag: 1.9.2
- - name: tekton-exithandler-controller
- newName: quay.io/aipipeline/tekton-exithandler-controller
- newTag: 2.0.5
- - name: tekton-exithandler-webhook
- newName: quay.io/aipipeline/tekton-exithandler-webhook
- newTag: 2.0.5
- - name: tekton-kfptask-controller
- newName: quay.io/aipipeline/tekton-kfptask-controller
- newTag: 2.0.5
- - name: tekton-kfptask-webhook
- newName: quay.io/aipipeline/tekton-kfptask-webhook
- newTag: 2.0.5
- # Deprecated controller
- # - name: kfp-v2-dev-driver-controller
- # newName: quay.io/aipipeline/tekton-driver
- # newTag: 2.0.3
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/pipeline-loops/200-serviceaccount.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/pipeline-loops/200-serviceaccount.yaml
deleted file mode 100644
index c995e80..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/pipeline-loops/200-serviceaccount.yaml
+++ /dev/null
@@ -1,19 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: tekton-pipelineloop-controller
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
----
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: tekton-pipelineloop-webhook
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/pipeline-loops/201-clusterrole.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/pipeline-loops/201-clusterrole.yaml
deleted file mode 100644
index 34281f8..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/pipeline-loops/201-clusterrole.yaml
+++ /dev/null
@@ -1,95 +0,0 @@
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: tekton-pipelineloop-controller-cluster-access
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
-rules:
- # Controller needs cluster access to all of the CRDs that it is responsible for managing.
- - apiGroups: ["tekton.dev"]
- resources: ["runs", "customruns", "taskruns", "pipelineruns"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
- - apiGroups: ["tekton.dev"]
- resources: ["runs/status", "customruns/status", "taskruns/status", "pipelineruns/status", "runs/finalizers", "customruns/finalizers",]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
- - apiGroups: ["custom.tekton.dev"]
- resources: ["pipelineloops", "kfptasks"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
- - apiGroups: ["apps"]
- resources: ["deployments", "deployments/finalizers"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
----
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- # This is the access that the controller needs on a per-namespace basis.
- name: tekton-pipelineloop-controller-tenant-access
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
-rules:
- - apiGroups: [""]
- resources: ["events"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
----
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: tekton-pipelineloop-webhook-cluster-access
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
-rules:
- # The webhook needs to be able to list and update customresourcedefinitions,
- # mainly to update the webhook certificates.
- - apiGroups: ["apiextensions.k8s.io"]
- resources: ["customresourcedefinitions", "customresourcedefinitions/status"]
- verbs: ["get", "list", "update", "patch", "watch"]
- - apiGroups: [""]
- resources: ["namespaces"]
- verbs: ["get", "list", "update", "patch", "watch"]
- - apiGroups: ["admissionregistration.k8s.io"]
- # The webhook performs a reconciliation on these two resources and continuously
- # updates configuration.
- resources: ["mutatingwebhookconfigurations", "validatingwebhookconfigurations"]
- # knative starts informers on these things, which is why we need get, list and watch.
- verbs: ["list", "watch"]
- - apiGroups: ["admissionregistration.k8s.io"]
- resources: ["mutatingwebhookconfigurations"]
- # This mutating webhook is responsible for applying defaults to tekton objects
- # as they are received.
- resourceNames: ["webhook.pipelineloop.custom.tekton.dev"]
- # When there are changes to the configs or secrets, knative updates the mutatingwebhook config
- # with the updated certificates or the refreshed set of rules.
- verbs: ["get", "update"]
- - apiGroups: ["apps"]
- resources: ["deployments", "deployments/finalizers"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
- - apiGroups: ["admissionregistration.k8s.io"]
- resources: ["validatingwebhookconfigurations"]
- # validation.webhook.pipelineloop.custom.tekton.dev performs schema validation when you, for example, create PipelineLoops.
- resourceNames: ["validation.webhook.pipelineloop.custom.tekton.dev"]
- # When there are changes to the configs or secrets, knative updates the validatingwebhook config
- # with the updated certificates or the refreshed set of rules.
- verbs: ["get", "update"]
- - apiGroups: ["policy"]
- resources: ["podsecuritypolicies"]
- resourceNames: ["tekton-pipelines", "openshift-pipelines"]
- verbs: ["use"]
----
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: tekton-pipelineloop-leader-election
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
-rules:
- # We uses leases for leaderelection
- - apiGroups: ["coordination.k8s.io"]
- resources: ["leases"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/pipeline-loops/201-role.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/pipeline-loops/201-role.yaml
deleted file mode 100644
index 04b47b2..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/pipeline-loops/201-role.yaml
+++ /dev/null
@@ -1,54 +0,0 @@
-kind: Role
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: tekton-pipelineloop-controller
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
-rules:
- - apiGroups: [""]
- resources: ["configmaps"]
- verbs: ["list", "watch"]
- - apiGroups: [""]
- resources: ["configmaps"]
- verbs: ["get"]
- resourceNames: ["config-leader-election", "config-logging", "config-observability", "object-store-config"]
- - apiGroups: ["policy"]
- resources: ["podsecuritypolicies"]
- resourceNames: ["tekton-pipelines", "openshift-pipelines"]
- verbs: ["use"]
----
-kind: Role
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: tekton-pipelineloop-webhook
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
-rules:
- - apiGroups: [""]
- resources: ["configmaps"]
- verbs: ["list", "watch"]
- # The webhook needs access to these configmaps for logging information.
- - apiGroups: [""]
- resources: ["configmaps"]
- verbs: ["get"]
- resourceNames: ["config-logging", "config-observability", "config-leader-election", "object-store-config"]
- - apiGroups: [""]
- resources: ["secrets"]
- verbs: ["list", "watch"]
- # The webhook daemon makes a reconciliation loop on tekton-pipelineloop-webhook-certs. Whenever
- # the secret changes it updates the webhook configurations with the certificates
- # stored in the secret.
- - apiGroups: [""]
- resources: ["secrets"]
- verbs: ["get", "update"]
- resourceNames: ["tekton-pipelineloop-webhook-certs"]
- - apiGroups: ["policy"]
- resources: ["podsecuritypolicies"]
- resourceNames: ["tekton-pipelines", "openshift-pipelines"]
- verbs: ["use"]
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/pipeline-loops/201-rolebinding.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/pipeline-loops/201-rolebinding.yaml
deleted file mode 100644
index 0d00408..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/pipeline-loops/201-rolebinding.yaml
+++ /dev/null
@@ -1,35 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: tekton-pipelineloop-controller
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
-subjects:
- - kind: ServiceAccount
- name: tekton-pipelineloop-controller
- namespace: tekton-pipelines
-roleRef:
- kind: Role
- name: tekton-pipelineloop-controller
- apiGroup: rbac.authorization.k8s.io
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: tekton-pipelineloop-webhook
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
-subjects:
- - kind: ServiceAccount
- name: tekton-pipelineloop-webhook
- namespace: tekton-pipelines
-roleRef:
- kind: Role
- name: tekton-pipelineloop-webhook
- apiGroup: rbac.authorization.k8s.io
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/pipeline-loops/202-clusterrolebinding.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/pipeline-loops/202-clusterrolebinding.yaml
deleted file mode 100644
index 9a8e8bc..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/pipeline-loops/202-clusterrolebinding.yaml
+++ /dev/null
@@ -1,88 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: tekton-pipelineloop-controller-cluster-access
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
-subjects:
- - kind: ServiceAccount
- name: tekton-pipelineloop-controller
- namespace: tekton-pipelines
-roleRef:
- kind: ClusterRole
- name: tekton-pipelineloop-controller-cluster-access
- apiGroup: rbac.authorization.k8s.io
----
-# If this ClusterRoleBinding is replaced with a RoleBinding
-# then the ClusterRole would be namespaced. The access described by
-# the tekton-pipelineloop-controller-tenant-access ClusterRole would
-# be scoped to individual tenant namespaces.
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: tekton-pipelineloop-controller-tenant-access
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
-subjects:
- - kind: ServiceAccount
- name: tekton-pipelineloop-controller
- namespace: tekton-pipelines
-roleRef:
- kind: ClusterRole
- name: tekton-pipelineloop-controller-tenant-access
- apiGroup: rbac.authorization.k8s.io
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: tekton-pipelineloop-controller-leaderelection
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
-subjects:
- - kind: ServiceAccount
- name: tekton-pipelineloop-controller
- namespace: tekton-pipelines
-roleRef:
- kind: ClusterRole
- name: tekton-pipelineloop-leader-election
- apiGroup: rbac.authorization.k8s.io
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: tekton-pipelineloop-webhook-cluster-access
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
-subjects:
- - kind: ServiceAccount
- name: tekton-pipelineloop-webhook
- namespace: tekton-pipelines
-roleRef:
- kind: ClusterRole
- name: tekton-pipelineloop-webhook-cluster-access
- apiGroup: rbac.authorization.k8s.io
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: tekton-pipelineloop-webhook-leaderelection
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
-subjects:
- - kind: ServiceAccount
- name: tekton-pipelineloop-webhook
- namespace: tekton-pipelines
-roleRef:
- kind: ClusterRole
- name: tekton-pipelineloop-leader-election
- apiGroup: rbac.authorization.k8s.io
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/pipeline-loops/203-object-store-config.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/pipeline-loops/203-object-store-config.yaml
deleted file mode 100644
index 967b9ad..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/pipeline-loops/203-object-store-config.yaml
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 2020 The Knative Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: object-store-config
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines-loops
-data:
- enable: "false"
- defaultBucketName: "pipelineloop-logs"
- ibmStyleCredentials: "false"
- region: "us-south"
- accessKey: "minio"
- secretKey: "minio123"
- # Below are IBM cloud specific credentials, available if the flag ibmStyleCredentials is true.
- apiKey: ""
- serviceInstanceID: "crn:v1:bluemix:public:cloud-object-storage:global:a/ID-dummy-1231231231-123abcdefgh:dummy-values::"
- serviceEndpoint: "http://minio-service.kubeflow:9000"
- authEndpoint: "https://iam.cloud.ibm.com/identity/token"
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/pipeline-loops/204-cache-config.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/pipeline-loops/204-cache-config.yaml
deleted file mode 100644
index b64ca72..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/pipeline-loops/204-cache-config.yaml
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 2020 The Knative Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: cache-config
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines-loops
-data:
- disabled: "true"
- driver: "mysql"
- host: "mysql.kubeflow.svc.cluster.local"
- port: "3306"
- dbName: "cachedb"
- user: "root"
- password: ""
- timeout: "6m"
- extraParams: ""
- mysqlDBGroupConcatMaxLen: "4194304"
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/pipeline-loops/300-pipelineloop.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/pipeline-loops/300-pipelineloop.yaml
deleted file mode 100644
index de3b3ef..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/pipeline-loops/300-pipelineloop.yaml
+++ /dev/null
@@ -1,38 +0,0 @@
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- name: pipelineloops.custom.tekton.dev
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
- pipeline.tekton.dev/release: "devel"
- version: "devel"
-spec:
- group: custom.tekton.dev
- versions:
- - name: v1alpha1
- served: true
- storage: true
- # Opt into the status subresource so metadata.generation
- # starts to increment
- subresources:
- status: {}
- schema:
- openAPIV3Schema:
- type: object
- # One can use x-kubernetes-preserve-unknown-fields: true
- # at the root of the schema (and inside any properties, additionalProperties)
- # to get the traditional CRD behaviour that nothing is pruned, despite
- # setting spec.preserveUnknownProperties: false.
- #
- # See https://kubernetes.io/blog/2019/06/20/crd-structural-schema/
- # See issue: https://github.com/knative/serving/issues/912
- x-kubernetes-preserve-unknown-fields: true
- names:
- kind: PipelineLoop
- plural: pipelineloops
- categories:
- - tekton
- - tekton-pipelines
- - openshift-pipelines
- scope: Namespaced
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/pipeline-loops/301-breaktask.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/pipeline-loops/301-breaktask.yaml
deleted file mode 100644
index 4efdfe4..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/pipeline-loops/301-breaktask.yaml
+++ /dev/null
@@ -1,51 +0,0 @@
-# Copyright 2020 The Knative Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- name: breaktasks.custom.tekton.dev
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
- pipeline.tekton.dev/release: "devel"
- version: "devel"
-spec:
- group: custom.tekton.dev
- versions:
- - name: v1alpha1
- served: true
- storage: true
- # Opt into the status subresource so metadata.generation
- # starts to increment
- subresources:
- status: {}
- schema:
- openAPIV3Schema:
- type: object
- # One can use x-kubernetes-preserve-unknown-fields: true
- # at the root of the schema (and inside any properties, additionalProperties)
- # to get the traditional CRD behaviour that nothing is pruned, despite
- # setting spec.preserveUnknownProperties: false.
- #
- # See https://kubernetes.io/blog/2019/06/20/crd-structural-schema/
- # See issue: https://github.com/knative/serving/issues/912
- x-kubernetes-preserve-unknown-fields: true
- names:
- kind: BreakTask
- plural: breaktasks
- categories:
- - tekton
- - tekton-pipelines
- scope: Namespaced
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/pipeline-loops/500-controller.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/pipeline-loops/500-controller.yaml
deleted file mode 100644
index e58fc23..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/pipeline-loops/500-controller.yaml
+++ /dev/null
@@ -1,68 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: tekton-pipelineloop-controller
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/name: controller
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "devel"
- app.kubernetes.io/part-of: tekton-pipeline-loops
- # tekton.dev/release value replaced with inputs.params.versionTag in pipeline/tekton/publish.yaml
- pipeline.tekton.dev/release: "devel"
- # labels below are related to istio and should not be used for resource lookup
- version: "devel"
-spec:
- replicas: 1
- selector:
- matchLabels:
- app.kubernetes.io/name: controller
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
- template:
- metadata:
- annotations:
- cluster-autoscaler.kubernetes.io/safe-to-evict: "false"
- labels:
- app.kubernetes.io/name: controller
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "devel"
- app.kubernetes.io/part-of: tekton-pipeline-loops
- # tekton.dev/release value replaced with inputs.params.versionTag in pipeline/tekton/publish.yaml
- pipeline.tekton.dev/release: "devel"
- # labels below are related to istio and should not be used for resource lookup
- app: tekton-pipelineloop-controller
- version: "devel"
- spec:
- serviceAccountName: tekton-pipelineloop-controller
- containers:
- - name: tekton-pipelineloop-controller
- image: quay.io/aipipeline/pipelineloop-controller:nightly
- env:
- - name: KFPV2
- value: "true"
- - name: SYSTEM_NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- - name: CONFIG_LEADERELECTION_NAME
- value: config-leader-election
- - name: CONFIG_LOGGING_NAME
- value: config-logging
- - name: CONFIG_OBSERVABILITY_NAME
- value: config-observability
- - name: METRICS_DOMAIN
- value: tekton.dev/pipeline
- securityContext:
- allowPrivilegeEscalation: false
- capabilities:
- drop:
- - ALL
- runAsNonRoot: true
- runAsGroup: 65532
- runAsUser: 65532
- seccompProfile:
- type: RuntimeDefault
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/pipeline-loops/500-webhook-configuration.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/pipeline-loops/500-webhook-configuration.yaml
deleted file mode 100644
index 49e335b..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/pipeline-loops/500-webhook-configuration.yaml
+++ /dev/null
@@ -1,53 +0,0 @@
-apiVersion: v1
-kind: Secret
-metadata:
- name: tekton-pipelineloop-webhook-certs
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
- pipeline.tekton.dev/release: "devel"
-# The data is populated at install time.
-
----
-apiVersion: admissionregistration.k8s.io/v1
-kind: ValidatingWebhookConfiguration
-metadata:
- name: validation.webhook.pipelineloop.custom.tekton.dev
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
- pipeline.tekton.dev/release: "devel"
-webhooks:
-- admissionReviewVersions:
- - v1beta1
- clientConfig:
- service:
- name: tekton-pipelineloop-webhook
- namespace: tekton-pipelines
- failurePolicy: Fail
- sideEffects: None
- name: validation.webhook.pipelineloop.custom.tekton.dev
-
----
-apiVersion: admissionregistration.k8s.io/v1
-kind: MutatingWebhookConfiguration
-metadata:
- name: webhook.pipelineloop.custom.tekton.dev
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
- pipeline.tekton.dev/release: "devel"
-webhooks:
-- admissionReviewVersions:
- - v1beta1
- clientConfig:
- service:
- name: tekton-pipelineloop-webhook
- namespace: tekton-pipelines
- failurePolicy: Fail
- sideEffects: None
- name: webhook.pipelineloop.custom.tekton.dev
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/pipeline-loops/500-webhook.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/pipeline-loops/500-webhook.yaml
deleted file mode 100644
index ca53147..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/pipeline-loops/500-webhook.yaml
+++ /dev/null
@@ -1,108 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: tekton-pipelineloop-webhook
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "devel"
- app.kubernetes.io/part-of: tekton-pipeline-loops
- pipeline.tekton.dev/release: "devel"
- version: "devel"
-spec:
- replicas: 1
- selector:
- matchLabels:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
- template:
- metadata:
- annotations:
- cluster-autoscaler.kubernetes.io/safe-to-evict: "false"
- labels:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "devel"
- app.kubernetes.io/part-of: tekton-pipeline-loops
- pipeline.tekton.dev/release: "devel"
- app: tekton-pipelines-webhook
- version: "devel"
- spec:
- serviceAccountName: tekton-pipelineloop-webhook
- containers:
- - name: webhook
- image: quay.io/aipipeline/pipelineloop-webhook:nightly
- env:
- - name: SYSTEM_NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- # If you are changing these names, you will also need to update
- # the webhook's Role in 200-role.yaml to include the new
- # values in the "configmaps" "get" rule.
- - name: CONFIG_LOGGING_NAME
- value: config-logging
- - name: CONFIG_OBSERVABILITY_NAME
- value: config-observability
- - name: CONFIG_LEADERELECTION_NAME
- value: config-leader-election
- - name: WEBHOOK_SERVICE_NAME
- value: tekton-pipelineloop-webhook
- - name: WEBHOOK_SECRET_NAME
- value: tekton-pipelineloop-webhook-certs
- - name: METRICS_DOMAIN
- value: tekton.dev/pipeline
- ports:
- - name: metrics
- containerPort: 9090
- - name: profiling
- containerPort: 8008
- - name: https-webhook
- containerPort: 8443
- securityContext:
- allowPrivilegeEscalation: false
- capabilities:
- drop:
- - ALL
- runAsNonRoot: true
- runAsGroup: 65532
- runAsUser: 65532
- seccompProfile:
- type: RuntimeDefault
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "devel"
- app.kubernetes.io/part-of: tekton-pipeline-loops
- pipeline.tekton.dev/release: "devel"
- app: tekton-pipelines-webhook
- version: "devel"
- name: tekton-pipelineloop-webhook
- namespace: tekton-pipelines
-spec:
- ports:
- # Define metrics and profiling for them to be accessible within service meshes.
- - name: http-metrics
- port: 9090
- targetPort: 9090
- - name: http-profiling
- port: 8008
- targetPort: 8008
- - name: https-webhook
- port: 443
- targetPort: 8443
- selector:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipeline-loops
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/pipeline-loops/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/pipeline-loops/kustomization.yaml
deleted file mode 100644
index f888cfc..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton-custom-task/pipeline-loops/kustomization.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
- - 200-serviceaccount.yaml
- - 201-clusterrole.yaml
- - 201-role.yaml
- - 201-rolebinding.yaml
- - 202-clusterrolebinding.yaml
- - 203-object-store-config.yaml
- - 204-cache-config.yaml
- - 300-pipelineloop.yaml
- - 301-breaktask.yaml
- - 500-controller.yaml
- - 500-webhook-configuration.yaml
- - 500-webhook.yaml
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton/README.md b/charts/kubeflow/apps/pipeline/upstream/third-party/tekton/README.md
deleted file mode 100644
index 7ac8432..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton/README.md
+++ /dev/null
@@ -1,10 +0,0 @@
-# Tekton manifests
-
-## Upgrade the Tekton Manifest Release
-
-To upgrade the Tekton pipeline or Tekton dashboard manifest to the latest release, run the following commands in this directory
-
-```shell
-curl -L https://storage.googleapis.com/tekton-releases/pipeline/latest/release.yaml --output upstream/manifests/base/tektoncd-install/tekton-release.yaml
-curl -L https://storage.googleapis.com/tekton-releases/dashboard/latest/release.yaml --output upstream/manifests/base/tektoncd-dashboard/tekton-dashboard-release.yaml
-```
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton/base/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/tekton/base/kustomization.yaml
deleted file mode 100644
index 632bff2..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton/base/kustomization.yaml
+++ /dev/null
@@ -1,5 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-bases:
-- ../upstream/manifests/base/tektoncd-install
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton/installs/cluster/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/tekton/installs/cluster/kustomization.yaml
deleted file mode 100644
index 2e9e797..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton/installs/cluster/kustomization.yaml
+++ /dev/null
@@ -1,5 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-bases:
- - ../../base
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton/upstream/manifests/base/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/tekton/upstream/manifests/base/kustomization.yaml
deleted file mode 100644
index a654682..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton/upstream/manifests/base/kustomization.yaml
+++ /dev/null
@@ -1,6 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-
-resources:
-- tektoncd-install
-- tektoncd-dashboard
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton/upstream/manifests/base/tektoncd-dashboard/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/tekton/upstream/manifests/base/tektoncd-dashboard/kustomization.yaml
deleted file mode 100644
index 53e0782..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton/upstream/manifests/base/tektoncd-dashboard/kustomization.yaml
+++ /dev/null
@@ -1,5 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
-- tekton-dashboard-release.yaml
-namespace: tekton-pipelines
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton/upstream/manifests/base/tektoncd-dashboard/tekton-dashboard-release.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/tekton/upstream/manifests/base/tektoncd-dashboard/tekton-dashboard-release.yaml
deleted file mode 100644
index 0b7dd65..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton/upstream/manifests/base/tektoncd-dashboard/tekton-dashboard-release.yaml
+++ /dev/null
@@ -1,335 +0,0 @@
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- labels:
- app.kubernetes.io/component: dashboard
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-dashboard
- name: extensions.dashboard.tekton.dev
-spec:
- group: dashboard.tekton.dev
- names:
- categories:
- - tekton
- - tekton-dashboard
- kind: Extension
- plural: extensions
- shortNames:
- - ext
- - exts
- preserveUnknownFields: false
- scope: Namespaced
- versions:
- - additionalPrinterColumns:
- - jsonPath: .spec.apiVersion
- name: API version
- type: string
- - jsonPath: .spec.name
- name: Kind
- type: string
- - jsonPath: .spec.displayname
- name: Display name
- type: string
- - jsonPath: .metadata.creationTimestamp
- name: Age
- type: date
- name: v1alpha1
- schema:
- openAPIV3Schema:
- type: object
- x-kubernetes-preserve-unknown-fields: true
- served: true
- storage: true
- subresources:
- status: {}
----
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- labels:
- app.kubernetes.io/component: dashboard
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-dashboard
- name: tekton-dashboard
- namespace: tekton-pipelines
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata:
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-dashboard
- name: tekton-dashboard-info
- namespace: tekton-pipelines
-rules:
- - apiGroups:
- - ""
- resourceNames:
- - dashboard-info
- resources:
- - configmaps
- verbs:
- - get
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- labels:
- app.kubernetes.io/component: dashboard
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-dashboard
- name: tekton-dashboard-backend
-rules:
- - apiGroups:
- - apiextensions.k8s.io
- resources:
- - customresourcedefinitions
- verbs:
- - get
- - list
- - apiGroups:
- - security.openshift.io
- resources:
- - securitycontextconstraints
- verbs:
- - use
- - apiGroups:
- - tekton.dev
- resources:
- - clustertasks
- verbs:
- - get
- - list
- - watch
- - apiGroups:
- - triggers.tekton.dev
- resources:
- - clusterinterceptors
- - clustertriggerbindings
- verbs:
- - get
- - list
- - watch
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- labels:
- app.kubernetes.io/component: dashboard
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-dashboard
- name: tekton-dashboard-tenant
-rules:
- - apiGroups:
- - dashboard.tekton.dev
- resources:
- - extensions
- verbs:
- - get
- - list
- - watch
- - apiGroups:
- - ""
- resources:
- - events
- - namespaces
- - pods
- - pods/log
- verbs:
- - get
- - list
- - watch
- - apiGroups:
- - tekton.dev
- resources:
- - tasks
- - taskruns
- - pipelines
- - pipelineruns
- - customruns
- verbs:
- - get
- - list
- - watch
- - apiGroups:
- - triggers.tekton.dev
- resources:
- - eventlisteners
- - interceptors
- - triggerbindings
- - triggers
- - triggertemplates
- verbs:
- - get
- - list
- - watch
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-dashboard
- name: tekton-dashboard-info
- namespace: tekton-pipelines
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: tekton-dashboard-info
-subjects:
- - apiGroup: rbac.authorization.k8s.io
- kind: Group
- name: system:authenticated
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- labels:
- app.kubernetes.io/component: dashboard
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-dashboard
- rbac.dashboard.tekton.dev/subject: tekton-dashboard
- name: tekton-dashboard-backend
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: tekton-dashboard-backend
-subjects:
- - kind: ServiceAccount
- name: tekton-dashboard
- namespace: tekton-pipelines
----
-apiVersion: v1
-data:
- version: v0.41.0
-kind: ConfigMap
-metadata:
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-dashboard
- name: dashboard-info
- namespace: tekton-pipelines
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: tekton-dashboard
- app.kubernetes.io/component: dashboard
- app.kubernetes.io/instance: default
- app.kubernetes.io/name: dashboard
- app.kubernetes.io/part-of: tekton-dashboard
- app.kubernetes.io/version: v0.41.0
- dashboard.tekton.dev/release: v0.41.0
- version: v0.41.0
- name: tekton-dashboard
- namespace: tekton-pipelines
-spec:
- ports:
- - name: http
- port: 9097
- protocol: TCP
- targetPort: 9097
- selector:
- app.kubernetes.io/component: dashboard
- app.kubernetes.io/instance: default
- app.kubernetes.io/name: dashboard
- app.kubernetes.io/part-of: tekton-dashboard
----
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- labels:
- app: tekton-dashboard
- app.kubernetes.io/component: dashboard
- app.kubernetes.io/instance: default
- app.kubernetes.io/name: dashboard
- app.kubernetes.io/part-of: tekton-dashboard
- app.kubernetes.io/version: v0.41.0
- dashboard.tekton.dev/release: v0.41.0
- version: v0.41.0
- name: tekton-dashboard
- namespace: tekton-pipelines
-spec:
- replicas: 1
- selector:
- matchLabels:
- app.kubernetes.io/component: dashboard
- app.kubernetes.io/instance: default
- app.kubernetes.io/name: dashboard
- app.kubernetes.io/part-of: tekton-dashboard
- template:
- metadata:
- labels:
- app: tekton-dashboard
- app.kubernetes.io/component: dashboard
- app.kubernetes.io/instance: default
- app.kubernetes.io/name: dashboard
- app.kubernetes.io/part-of: tekton-dashboard
- app.kubernetes.io/version: v0.41.0
- name: tekton-dashboard
- spec:
- containers:
- - args:
- - --port=9097
- - --logout-url=
- - --pipelines-namespace=tekton-pipelines
- - --triggers-namespace=tekton-pipelines
- - --read-only=true
- - --log-level=info
- - --log-format=json
- - --namespace=
- - --namespaces=
- - --stream-logs=true
- - --external-logs=
- env:
- - name: INSTALLED_NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- image: gcr.io/tekton-releases/github.com/tektoncd/dashboard/cmd/dashboard:v0.41.0@sha256:698b458f98789177571182b8d092d49e44cd814ab8bbd3434e6ea66d538196c1
- livenessProbe:
- httpGet:
- path: /health
- port: 9097
- name: tekton-dashboard
- ports:
- - containerPort: 9097
- readinessProbe:
- httpGet:
- path: /readiness
- port: 9097
- securityContext:
- allowPrivilegeEscalation: false
- capabilities:
- drop:
- - ALL
- runAsGroup: 65532
- runAsNonRoot: true
- runAsUser: 65532
- seccompProfile:
- type: RuntimeDefault
- nodeSelector:
- kubernetes.io/os: linux
- serviceAccountName: tekton-dashboard
- volumes: []
-
----
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- labels:
- app.kubernetes.io/component: dashboard
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-dashboard
- rbac.dashboard.tekton.dev/subject: tekton-dashboard
- name: tekton-dashboard-tenant
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: tekton-dashboard-tenant
-subjects:
- - kind: ServiceAccount
- name: tekton-dashboard
- namespace: tekton-pipelines
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton/upstream/manifests/base/tektoncd-install/kustomization.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/tekton/upstream/manifests/base/tektoncd-install/kustomization.yaml
deleted file mode 100644
index 62fd8a4..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton/upstream/manifests/base/tektoncd-install/kustomization.yaml
+++ /dev/null
@@ -1,22 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
-- tekton-release.yaml
-patchesStrategicMerge:
-- tekton-config.yaml
-- tekton-default.yaml
-patchesJson6902:
-- target:
- group: apps
- version: v1
- kind: Deployment
- name: tekton-pipelines-controller
- namespace: tekton-pipelines
- path: tekton-controller.yaml
-images:
-- name: $(registry)/$(controller)
- newName: $(registry)/$(controller)
- newTag: latest
-- name: $(registry)/$(webhook)
- newName: $(registry)/$(webhook)
- newTag: latest
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton/upstream/manifests/base/tektoncd-install/tekton-config.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/tekton/upstream/manifests/base/tektoncd-install/tekton-config.yaml
deleted file mode 100644
index e66f1a5..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton/upstream/manifests/base/tektoncd-install/tekton-config.yaml
+++ /dev/null
@@ -1,10 +0,0 @@
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: feature-flags
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- running-in-environment-with-injected-sidecars: "false"
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton/upstream/manifests/base/tektoncd-install/tekton-controller.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/tekton/upstream/manifests/base/tektoncd-install/tekton-controller.yaml
deleted file mode 100644
index ddd4b74..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton/upstream/manifests/base/tektoncd-install/tekton-controller.yaml
+++ /dev/null
@@ -1,18 +0,0 @@
-- op: add
- path: /spec/template/spec/containers/0/args/0
- value: "4"
-- op: add
- path: /spec/template/spec/containers/0/args/0
- value: "-threads-per-controller"
-- op: add
- path: /spec/template/spec/containers/0/args/0
- value: "50"
-- op: add
- path: /spec/template/spec/containers/0/args/0
- value: "-kube-api-burst"
-- op: add
- path: /spec/template/spec/containers/0/args/0
- value: "50"
-- op: add
- path: /spec/template/spec/containers/0/args/0
- value: "-kube-api-qps"
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton/upstream/manifests/base/tektoncd-install/tekton-default.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/tekton/upstream/manifests/base/tektoncd-install/tekton-default.yaml
deleted file mode 100644
index 8755f6e..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton/upstream/manifests/base/tektoncd-install/tekton-default.yaml
+++ /dev/null
@@ -1,10 +0,0 @@
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: config-defaults
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- default-timeout-minutes: "0"
\ No newline at end of file
diff --git a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton/upstream/manifests/base/tektoncd-install/tekton-release.yaml b/charts/kubeflow/apps/pipeline/upstream/third-party/tekton/upstream/manifests/base/tektoncd-install/tekton-release.yaml
deleted file mode 100644
index aa826b6..0000000
--- a/charts/kubeflow/apps/pipeline/upstream/third-party/tekton/upstream/manifests/base/tektoncd-install/tekton-release.yaml
+++ /dev/null
@@ -1,3463 +0,0 @@
-# Copyright 2019 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: Namespace
-metadata:
- name: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- pod-security.kubernetes.io/enforce: restricted
-
----
-# Copyright 2020-2022 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: tekton-pipelines-controller-cluster-access
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-rules:
- - apiGroups: [""]
- # Controller needs to watch Pods created by TaskRuns to see them progress.
- resources: ["pods"]
- verbs: ["list", "watch"]
- - apiGroups: [""]
- # Controller needs to get the list of cordoned nodes over the course of a single run
- resources: ["nodes"]
- verbs: ["list"]
- # Controller needs cluster access to all of the CRDs that it is responsible for
- # managing.
- - apiGroups: ["tekton.dev"]
- resources: ["tasks", "clustertasks", "taskruns", "pipelines", "pipelineruns", "customruns", "stepactions"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
- - apiGroups: ["tekton.dev"]
- resources: ["verificationpolicies"]
- verbs: ["get", "list", "watch"]
- - apiGroups: ["tekton.dev"]
- resources: ["taskruns/finalizers", "pipelineruns/finalizers", "customruns/finalizers"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
- - apiGroups: ["tekton.dev"]
- resources: ["tasks/status", "clustertasks/status", "taskruns/status", "pipelines/status", "pipelineruns/status", "customruns/status", "verificationpolicies/status", "stepactions/status"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
- # resolution.tekton.dev
- - apiGroups: ["resolution.tekton.dev"]
- resources: ["resolutionrequests", "resolutionrequests/status"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
----
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- # This is the access that the controller needs on a per-namespace basis.
- name: tekton-pipelines-controller-tenant-access
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-rules:
- # Read-write access to create Pods and PVCs (for Workspaces)
- - apiGroups: [""]
- resources: ["pods", "persistentvolumeclaims"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
- # Write permissions to publish events.
- - apiGroups: [""]
- resources: ["events"]
- verbs: ["create", "update", "patch"]
- # Read-only access to these.
- - apiGroups: [""]
- resources: ["configmaps", "limitranges", "secrets", "serviceaccounts"]
- verbs: ["get", "list", "watch"]
- # Read-write access to StatefulSets for Affinity Assistant.
- - apiGroups: ["apps"]
- resources: ["statefulsets"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
----
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: tekton-pipelines-webhook-cluster-access
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-rules:
- # The webhook needs to be able to get and update customresourcedefinitions,
- # mainly to update the webhook certificates.
- - apiGroups: ["apiextensions.k8s.io"]
- resources: ["customresourcedefinitions", "customresourcedefinitions/status"]
- verbs: ["get", "update", "patch"]
- resourceNames:
- - pipelines.tekton.dev
- - pipelineruns.tekton.dev
- - tasks.tekton.dev
- - clustertasks.tekton.dev
- - taskruns.tekton.dev
- - resolutionrequests.resolution.tekton.dev
- - customruns.tekton.dev
- - verificationpolicies.tekton.dev
- - stepactions.tekton.dev
- # knative.dev/pkg needs list/watch permissions to set up informers for the webhook.
- - apiGroups: ["apiextensions.k8s.io"]
- resources: ["customresourcedefinitions"]
- verbs: ["list", "watch"]
- - apiGroups: ["admissionregistration.k8s.io"]
- # The webhook performs a reconciliation on these two resources and continuously
- # updates configuration.
- resources: ["mutatingwebhookconfigurations", "validatingwebhookconfigurations"]
- # knative starts informers on these things, which is why we need get, list and watch.
- verbs: ["list", "watch"]
- - apiGroups: ["admissionregistration.k8s.io"]
- resources: ["mutatingwebhookconfigurations"]
- # This mutating webhook is responsible for applying defaults to tekton objects
- # as they are received.
- resourceNames: ["webhook.pipeline.tekton.dev"]
- # When there are changes to the configs or secrets, knative updates the mutatingwebhook config
- # with the updated certificates or the refreshed set of rules.
- verbs: ["get", "update", "delete"]
- - apiGroups: ["admissionregistration.k8s.io"]
- resources: ["validatingwebhookconfigurations"]
- # validation.webhook.pipeline.tekton.dev performs schema validation when you, for example, create TaskRuns.
- # config.webhook.pipeline.tekton.dev validates the logging configuration against knative's logging structure
- resourceNames: ["validation.webhook.pipeline.tekton.dev", "config.webhook.pipeline.tekton.dev"]
- # When there are changes to the configs or secrets, knative updates the validatingwebhook config
- # with the updated certificates or the refreshed set of rules.
- verbs: ["get", "update", "delete"]
- - apiGroups: [""]
- resources: ["namespaces"]
- verbs: ["get"]
- # The webhook configured the namespace as the OwnerRef on various cluster-scoped resources,
- # which requires we can Get the system namespace.
- resourceNames: ["tekton-pipelines"]
- - apiGroups: [""]
- resources: ["namespaces/finalizers"]
- verbs: ["update"]
- # The webhook configured the namespace as the OwnerRef on various cluster-scoped resources,
- # which requires we can update the system namespace finalizers.
- resourceNames: ["tekton-pipelines"]
----
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: tekton-events-controller-cluster-access
- labels:
- app.kubernetes.io/component: events
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-rules:
- - apiGroups: ["tekton.dev"]
- resources: ["tasks", "clustertasks", "taskruns", "pipelines", "pipelineruns", "customruns"]
- verbs: ["get", "list", "watch"]
-
----
-# Copyright 2020 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-kind: Role
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: tekton-pipelines-controller
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-rules:
- - apiGroups: [""]
- resources: ["configmaps"]
- verbs: ["list", "watch"]
- # The controller needs access to these configmaps for logging information and runtime configuration.
- - apiGroups: [""]
- resources: ["configmaps"]
- verbs: ["get"]
- resourceNames: ["config-logging", "config-observability", "feature-flags", "config-leader-election-controller", "config-registry-cert"]
----
-kind: Role
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-rules:
- - apiGroups: [""]
- resources: ["configmaps"]
- verbs: ["list", "watch"]
- # The webhook needs access to these configmaps for logging information.
- - apiGroups: [""]
- resources: ["configmaps"]
- verbs: ["get"]
- resourceNames: ["config-logging", "config-observability", "config-leader-election-webhook", "feature-flags"]
- - apiGroups: [""]
- resources: ["secrets"]
- verbs: ["list", "watch"]
- # The webhook daemon makes a reconciliation loop on webhook-certs. Whenever
- # the secret changes it updates the webhook configurations with the certificates
- # stored in the secret.
- - apiGroups: [""]
- resources: ["secrets"]
- verbs: ["get", "update"]
- resourceNames: ["webhook-certs"]
----
-kind: Role
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: tekton-pipelines-events-controller
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: events
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-rules:
- - apiGroups: [""]
- resources: ["configmaps"]
- verbs: ["list", "watch"]
- # The controller needs access to these configmaps for logging information and runtime configuration.
- - apiGroups: [""]
- resources: ["configmaps"]
- verbs: ["get"]
- resourceNames: ["config-logging", "config-observability", "feature-flags", "config-leader-election-events", "config-registry-cert"]
----
-kind: Role
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: tekton-pipelines-leader-election
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-rules:
- # We uses leases for leaderelection
- - apiGroups: ["coordination.k8s.io"]
- resources: ["leases"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata:
- name: tekton-pipelines-info
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-rules:
- # All system:authenticated users needs to have access
- # of the pipelines-info ConfigMap even if they don't
- # have access to the other resources present in the
- # installed namespace.
- - apiGroups: [""]
- resources: ["configmaps"]
- resourceNames: ["pipelines-info"]
- verbs: ["get"]
-
----
-# Copyright 2019 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: tekton-pipelines-controller
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
----
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
----
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: tekton-events-controller
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: events
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-
----
-# Copyright 2019 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: tekton-pipelines-controller-cluster-access
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-subjects:
- - kind: ServiceAccount
- name: tekton-pipelines-controller
- namespace: tekton-pipelines
-roleRef:
- kind: ClusterRole
- name: tekton-pipelines-controller-cluster-access
- apiGroup: rbac.authorization.k8s.io
----
-# If this ClusterRoleBinding is replaced with a RoleBinding
-# then the ClusterRole would be namespaced. The access described by
-# the tekton-pipelines-controller-tenant-access ClusterRole would
-# be scoped to individual tenant namespaces.
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: tekton-pipelines-controller-tenant-access
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-subjects:
- - kind: ServiceAccount
- name: tekton-pipelines-controller
- namespace: tekton-pipelines
-roleRef:
- kind: ClusterRole
- name: tekton-pipelines-controller-tenant-access
- apiGroup: rbac.authorization.k8s.io
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: tekton-pipelines-webhook-cluster-access
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-subjects:
- - kind: ServiceAccount
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
-roleRef:
- kind: ClusterRole
- name: tekton-pipelines-webhook-cluster-access
- apiGroup: rbac.authorization.k8s.io
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: tekton-events-controller-cluster-access
- labels:
- app.kubernetes.io/component: events
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-subjects:
- - kind: ServiceAccount
- name: tekton-events-controller
- namespace: tekton-pipelines
-roleRef:
- kind: ClusterRole
- name: tekton-events-controller-cluster-access
- apiGroup: rbac.authorization.k8s.io
-
----
-# Copyright 2020 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: tekton-pipelines-controller
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-subjects:
- - kind: ServiceAccount
- name: tekton-pipelines-controller
- namespace: tekton-pipelines
-roleRef:
- kind: Role
- name: tekton-pipelines-controller
- apiGroup: rbac.authorization.k8s.io
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-subjects:
- - kind: ServiceAccount
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
-roleRef:
- kind: Role
- name: tekton-pipelines-webhook
- apiGroup: rbac.authorization.k8s.io
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: tekton-pipelines-controller-leaderelection
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-subjects:
- - kind: ServiceAccount
- name: tekton-pipelines-controller
- namespace: tekton-pipelines
-roleRef:
- kind: Role
- name: tekton-pipelines-leader-election
- apiGroup: rbac.authorization.k8s.io
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: tekton-pipelines-webhook-leaderelection
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-subjects:
- - kind: ServiceAccount
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
-roleRef:
- kind: Role
- name: tekton-pipelines-leader-election
- apiGroup: rbac.authorization.k8s.io
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: tekton-pipelines-info
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-subjects:
- # Giving all system:authenticated users the access of the
- # ConfigMap which contains version information.
- - kind: Group
- name: system:authenticated
- apiGroup: rbac.authorization.k8s.io
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: tekton-pipelines-info
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: tekton-pipelines-events-controller
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: events
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-subjects:
- - kind: ServiceAccount
- name: tekton-events-controller
- namespace: tekton-pipelines
-roleRef:
- kind: Role
- name: tekton-pipelines-events-controller
- apiGroup: rbac.authorization.k8s.io
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: tekton-events-controller-leaderelection
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: events
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-subjects:
- - kind: ServiceAccount
- name: tekton-events-controller
- namespace: tekton-pipelines
-roleRef:
- kind: Role
- name: tekton-pipelines-leader-election
- apiGroup: rbac.authorization.k8s.io
-
----
-# Copyright 2019 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- name: clustertasks.tekton.dev
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- pipeline.tekton.dev/release: "v0.53.2"
- version: "v0.53.2"
-spec:
- group: tekton.dev
- preserveUnknownFields: false
- versions:
- - name: v1beta1
- served: true
- storage: true
- schema:
- openAPIV3Schema:
- type: object
- # One can use x-kubernetes-preserve-unknown-fields: true
- # at the root of the schema (and inside any properties, additionalProperties)
- # to get the traditional CRD behaviour that nothing is pruned, despite
- # setting spec.preserveUnknownProperties: false.
- #
- # See https://kubernetes.io/blog/2019/06/20/crd-structural-schema/
- # See issue: https://github.com/knative/serving/issues/912
- x-kubernetes-preserve-unknown-fields: true
- # Opt into the status subresource so metadata.generation
- # starts to increment
- subresources:
- status: {}
- names:
- kind: ClusterTask
- plural: clustertasks
- singular: clustertask
- categories:
- - tekton
- - tekton-pipelines
- scope: Cluster
- conversion:
- strategy: Webhook
- webhook:
- conversionReviewVersions: ["v1beta1"]
- clientConfig:
- service:
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
-
----
-# Copyright 2020 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- name: customruns.tekton.dev
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- pipeline.tekton.dev/release: "v0.53.2"
- version: "v0.53.2"
-spec:
- group: tekton.dev
- preserveUnknownFields: false
- versions:
- - name: v1beta1
- served: true
- storage: true
- schema:
- openAPIV3Schema:
- type: object
- # One can use x-kubernetes-preserve-unknown-fields: true
- # at the root of the schema (and inside any properties, additionalProperties)
- # to get the traditional CRD behaviour that nothing is pruned, despite
- # setting spec.preserveUnknownProperties: false.
- #
- # See https://kubernetes.io/blog/2019/06/20/crd-structural-schema/
- # See issue: https://github.com/knative/serving/issues/912
- x-kubernetes-preserve-unknown-fields: true
- additionalPrinterColumns:
- - name: Succeeded
- type: string
- jsonPath: ".status.conditions[?(@.type==\"Succeeded\")].status"
- - name: Reason
- type: string
- jsonPath: ".status.conditions[?(@.type==\"Succeeded\")].reason"
- - name: StartTime
- type: date
- jsonPath: .status.startTime
- - name: CompletionTime
- type: date
- jsonPath: .status.completionTime
- # Opt into the status subresource so metadata.generation
- # starts to increment
- subresources:
- status: {}
- names:
- kind: CustomRun
- plural: customruns
- singular: customrun
- categories:
- - tekton
- - tekton-pipelines
- scope: Namespaced
-
----
-# Copyright 2019 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- name: pipelines.tekton.dev
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- pipeline.tekton.dev/release: "v0.53.2"
- version: "v0.53.2"
-spec:
- group: tekton.dev
- preserveUnknownFields: false
- versions:
- - name: v1beta1
- served: true
- storage: false
- subresources:
- status: {}
- schema:
- openAPIV3Schema:
- type: object
- # One can use x-kubernetes-preserve-unknown-fields: true
- # at the root of the schema (and inside any properties, additionalProperties)
- # to get the traditional CRD behaviour that nothing is pruned, despite
- # setting spec.preserveUnknownProperties: false.
- #
- # See https://kubernetes.io/blog/2019/06/20/crd-structural-schema/
- # See issue: https://github.com/knative/serving/issues/912
- x-kubernetes-preserve-unknown-fields: true
- - name: v1
- served: true
- storage: true
- schema:
- openAPIV3Schema:
- type: object
- # OpenAPIV3 schema allows Kubernetes to perform validation on the schema fields
- # and use the schema in tooling such as `kubectl explain`.
- # Using "x-kubernetes-preserve-unknown-fields: true"
- # at the root of the schema (or within it) allows arbitrary fields.
- # We currently perform our own validation separately.
- # See https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/#specifying-a-structural-schema
- # for more info.
- x-kubernetes-preserve-unknown-fields: true
- # Opt into the status subresource so metadata.generation
- # starts to increment
- subresources:
- status: {}
- names:
- kind: Pipeline
- plural: pipelines
- singular: pipeline
- categories:
- - tekton
- - tekton-pipelines
- scope: Namespaced
- conversion:
- strategy: Webhook
- webhook:
- conversionReviewVersions: ["v1beta1", "v1"]
- clientConfig:
- service:
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
-
----
-# Copyright 2019 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- name: pipelineruns.tekton.dev
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- pipeline.tekton.dev/release: "v0.53.2"
- version: "v0.53.2"
-spec:
- group: tekton.dev
- preserveUnknownFields: false
- versions:
- - name: v1beta1
- served: true
- storage: false
- schema:
- openAPIV3Schema:
- type: object
- # One can use x-kubernetes-preserve-unknown-fields: true
- # at the root of the schema (and inside any properties, additionalProperties)
- # to get the traditional CRD behaviour that nothing is pruned, despite
- # setting spec.preserveUnknownProperties: false.
- #
- # See https://kubernetes.io/blog/2019/06/20/crd-structural-schema/
- # See issue: https://github.com/knative/serving/issues/912
- x-kubernetes-preserve-unknown-fields: true
- additionalPrinterColumns:
- - name: Succeeded
- type: string
- jsonPath: ".status.conditions[?(@.type==\"Succeeded\")].status"
- - name: Reason
- type: string
- jsonPath: ".status.conditions[?(@.type==\"Succeeded\")].reason"
- - name: StartTime
- type: date
- jsonPath: .status.startTime
- - name: CompletionTime
- type: date
- jsonPath: .status.completionTime
- # Opt into the status subresource so metadata.generation
- # starts to increment
- subresources:
- status: {}
- - name: v1
- served: true
- storage: true
- schema:
- openAPIV3Schema:
- type: object
- # One can use x-kubernetes-preserve-unknown-fields: true
- # at the root of the schema (and inside any properties, additionalProperties)
- # to get the traditional CRD behaviour that nothing is pruned, despite
- # setting spec.preserveUnknownProperties: false.
- #
- # See https://kubernetes.io/blog/2019/06/20/crd-structural-schema/
- # See issue: https://github.com/knative/serving/issues/912
- x-kubernetes-preserve-unknown-fields: true
- additionalPrinterColumns:
- - name: Succeeded
- type: string
- jsonPath: ".status.conditions[?(@.type==\"Succeeded\")].status"
- - name: Reason
- type: string
- jsonPath: ".status.conditions[?(@.type==\"Succeeded\")].reason"
- - name: StartTime
- type: date
- jsonPath: .status.startTime
- - name: CompletionTime
- type: date
- jsonPath: .status.completionTime
- # Opt into the status subresource so metadata.generation
- # starts to increment
- subresources:
- status: {}
- names:
- kind: PipelineRun
- plural: pipelineruns
- singular: pipelinerun
- categories:
- - tekton
- - tekton-pipelines
- shortNames:
- - pr
- - prs
- scope: Namespaced
- conversion:
- strategy: Webhook
- webhook:
- conversionReviewVersions: ["v1beta1", "v1"]
- clientConfig:
- service:
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
-
----
-# Copyright 2022 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- name: resolutionrequests.resolution.tekton.dev
- labels:
- resolution.tekton.dev/release: devel
-spec:
- group: resolution.tekton.dev
- scope: Namespaced
- names:
- kind: ResolutionRequest
- plural: resolutionrequests
- singular: resolutionrequest
- categories:
- - tekton
- - tekton-pipelines
- shortNames:
- - resolutionrequest
- - resolutionrequests
- versions:
- - name: v1alpha1
- served: true
- deprecated: true
- storage: false
- subresources:
- status: {}
- schema:
- openAPIV3Schema:
- type: object
- # One can use x-kubernetes-preserve-unknown-fields: true
- # at the root of the schema (and inside any properties, additionalProperties)
- # to get the traditional CRD behaviour that nothing is pruned, despite
- # setting spec.preserveUnknownProperties: false.
- #
- # See https://kubernetes.io/blog/2019/06/20/crd-structural-schema/
- # See issue: https://github.com/knative/serving/issues/912
- x-kubernetes-preserve-unknown-fields: true
- additionalPrinterColumns:
- - name: Succeeded
- type: string
- jsonPath: ".status.conditions[?(@.type=='Succeeded')].status"
- - name: Reason
- type: string
- jsonPath: ".status.conditions[?(@.type=='Succeeded')].reason"
- - name: v1beta1
- served: true
- storage: true
- subresources:
- status: {}
- schema:
- openAPIV3Schema:
- type: object
- # One can use x-kubernetes-preserve-unknown-fields: true
- # at the root of the schema (and inside any properties, additionalProperties)
- # to get the traditional CRD behaviour that nothing is pruned, despite
- # setting spec.preserveUnknownProperties: false.
- #
- # See https://kubernetes.io/blog/2019/06/20/crd-structural-schema/
- # See issue: https://github.com/knative/serving/issues/912
- x-kubernetes-preserve-unknown-fields: true
- additionalPrinterColumns:
- - name: OwnerKind
- type: string
- jsonPath: ".metadata.ownerReferences[0].kind"
- - name: Owner
- type: string
- jsonPath: ".metadata.ownerReferences[0].name"
- - name: Succeeded
- type: string
- jsonPath: ".status.conditions[?(@.type=='Succeeded')].status"
- - name: Reason
- type: string
- jsonPath: ".status.conditions[?(@.type=='Succeeded')].reason"
- - name: StartTime
- type: string
- jsonPath: .metadata.creationTimestamp
- - name: EndTime
- type: string
- jsonPath: .status.conditions[?(@.type=='Succeeded')].lastTransitionTime
- conversion:
- strategy: Webhook
- webhook:
- conversionReviewVersions: ["v1alpha1", "v1beta1"]
- clientConfig:
- service:
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
-
----
-# Copyright 2023 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- name: stepactions.tekton.dev
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- pipeline.tekton.dev/release: "v0.53.2"
- version: "v0.53.2"
-spec:
- group: tekton.dev
- preserveUnknownFields: false
- versions:
- - name: v1alpha1
- served: true
- storage: true
- schema:
- openAPIV3Schema:
- type: object
- # One can use x-kubernetes-preserve-unknown-fields: true
- # at the root of the schema (and inside any properties, additionalProperties)
- # to get the traditional CRD behaviour that nothing is pruned, despite
- # setting spec.preserveUnknownProperties: false.
- #
- # See https://kubernetes.io/blog/2019/06/20/crd-structural-schema/
- # See issue: https://github.com/knative/serving/issues/912
- x-kubernetes-preserve-unknown-fields: true
- # Opt into the status subresource so metadata.generation
- # starts to increment
- subresources:
- status: {}
- names:
- kind: StepAction
- plural: stepactions
- singular: stepaction
- categories:
- - tekton
- - tekton-pipelines
- scope: Namespaced
-
----
-# Copyright 2019 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- name: tasks.tekton.dev
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- pipeline.tekton.dev/release: "v0.53.2"
- version: "v0.53.2"
-spec:
- group: tekton.dev
- preserveUnknownFields: false
- versions:
- - name: v1beta1
- served: true
- storage: false
- schema:
- openAPIV3Schema:
- type: object
- # One can use x-kubernetes-preserve-unknown-fields: true
- # at the root of the schema (and inside any properties, additionalProperties)
- # to get the traditional CRD behaviour that nothing is pruned, despite
- # setting spec.preserveUnknownProperties: false.
- #
- # See https://kubernetes.io/blog/2019/06/20/crd-structural-schema/
- # See issue: https://github.com/knative/serving/issues/912
- x-kubernetes-preserve-unknown-fields: true
- # Opt into the status subresource so metadata.generation
- # starts to increment
- subresources:
- status: {}
- - name: v1
- served: true
- storage: true
- schema:
- openAPIV3Schema:
- type: object
- # TODO(#1461): Add OpenAPIV3 schema
- # OpenAPIV3 schema allows Kubernetes to perform validation on the schema fields
- # and use the schema in tooling such as `kubectl explain`.
- # Using "x-kubernetes-preserve-unknown-fields: true"
- # at the root of the schema (or within it) allows arbitrary fields.
- # We currently perform our own validation separately.
- # See https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/#specifying-a-structural-schema
- # for more info.
- x-kubernetes-preserve-unknown-fields: true
- # Opt into the status subresource so metadata.generation
- # starts to increment
- subresources:
- status: {}
- names:
- kind: Task
- plural: tasks
- singular: task
- categories:
- - tekton
- - tekton-pipelines
- scope: Namespaced
- conversion:
- strategy: Webhook
- webhook:
- conversionReviewVersions: ["v1beta1", "v1"]
- clientConfig:
- service:
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
-
----
-# Copyright 2019 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- name: taskruns.tekton.dev
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- pipeline.tekton.dev/release: "v0.53.2"
- version: "v0.53.2"
-spec:
- group: tekton.dev
- preserveUnknownFields: false
- versions:
- - name: v1beta1
- served: true
- storage: false
- schema:
- openAPIV3Schema:
- type: object
- # One can use x-kubernetes-preserve-unknown-fields: true
- # at the root of the schema (and inside any properties, additionalProperties)
- # to get the traditional CRD behaviour that nothing is pruned, despite
- # setting spec.preserveUnknownProperties: false.
- #
- # See https://kubernetes.io/blog/2019/06/20/crd-structural-schema/
- # See issue: https://github.com/knative/serving/issues/912
- x-kubernetes-preserve-unknown-fields: true
- additionalPrinterColumns:
- - name: Succeeded
- type: string
- jsonPath: ".status.conditions[?(@.type==\"Succeeded\")].status"
- - name: Reason
- type: string
- jsonPath: ".status.conditions[?(@.type==\"Succeeded\")].reason"
- - name: StartTime
- type: date
- jsonPath: .status.startTime
- - name: CompletionTime
- type: date
- jsonPath: .status.completionTime
- # Opt into the status subresource so metadata.generation
- # starts to increment
- subresources:
- status: {}
- - name: v1
- served: true
- storage: true
- schema:
- openAPIV3Schema:
- type: object
- # One can use x-kubernetes-preserve-unknown-fields: true
- # at the root of the schema (and inside any properties, additionalProperties)
- # to get the traditional CRD behaviour that nothing is pruned, despite
- # setting spec.preserveUnknownProperties: false.
- #
- # See https://kubernetes.io/blog/2019/06/20/crd-structural-schema/
- # See issue: https://github.com/knative/serving/issues/912
- x-kubernetes-preserve-unknown-fields: true
- additionalPrinterColumns:
- - name: Succeeded
- type: string
- jsonPath: ".status.conditions[?(@.type==\"Succeeded\")].status"
- - name: Reason
- type: string
- jsonPath: ".status.conditions[?(@.type==\"Succeeded\")].reason"
- - name: StartTime
- type: date
- jsonPath: .status.startTime
- - name: CompletionTime
- type: date
- jsonPath: .status.completionTime
- # Opt into the status subresource so metadata.generation
- # starts to increment
- subresources:
- status: {}
- names:
- kind: TaskRun
- plural: taskruns
- singular: taskrun
- categories:
- - tekton
- - tekton-pipelines
- shortNames:
- - tr
- - trs
- scope: Namespaced
- conversion:
- strategy: Webhook
- webhook:
- conversionReviewVersions: ["v1beta1", "v1"]
- clientConfig:
- service:
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
-
----
-# Copyright 2022 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- name: verificationpolicies.tekton.dev
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- pipeline.tekton.dev/release: "v0.53.2"
- version: "v0.53.2"
-spec:
- group: tekton.dev
- versions:
- - name: v1alpha1
- served: true
- storage: true
- schema:
- openAPIV3Schema:
- type: object
- # One can use x-kubernetes-preserve-unknown-fields: true
- # at the root of the schema (and inside any properties, additionalProperties)
- # to get the traditional CRD behaviour that nothing is pruned, despite
- # setting spec.preserveUnknownProperties: false.
- #
- # See https://kubernetes.io/blog/2019/06/20/crd-structural-schema/
- # See issue: https://github.com/knative/serving/issues/912
- x-kubernetes-preserve-unknown-fields: true
- names:
- kind: VerificationPolicy
- plural: verificationpolicies
- singular: verificationpolicy
- categories:
- - tekton
- - tekton-pipelines
- scope: Namespaced
-
----
-# Copyright 2020 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: Secret
-metadata:
- name: webhook-certs
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- pipeline.tekton.dev/release: "v0.53.2"
-# The data is populated at install time.
----
-apiVersion: admissionregistration.k8s.io/v1
-kind: ValidatingWebhookConfiguration
-metadata:
- name: validation.webhook.pipeline.tekton.dev
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- pipeline.tekton.dev/release: "v0.53.2"
-webhooks:
- - admissionReviewVersions: ["v1"]
- clientConfig:
- service:
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
- failurePolicy: Fail
- sideEffects: None
- name: validation.webhook.pipeline.tekton.dev
----
-apiVersion: admissionregistration.k8s.io/v1
-kind: MutatingWebhookConfiguration
-metadata:
- name: webhook.pipeline.tekton.dev
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- pipeline.tekton.dev/release: "v0.53.2"
-webhooks:
- - admissionReviewVersions: ["v1"]
- clientConfig:
- service:
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
- failurePolicy: Fail
- sideEffects: None
- name: webhook.pipeline.tekton.dev
----
-apiVersion: admissionregistration.k8s.io/v1
-kind: ValidatingWebhookConfiguration
-metadata:
- name: config.webhook.pipeline.tekton.dev
- labels:
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- pipeline.tekton.dev/release: "v0.53.2"
-webhooks:
- - admissionReviewVersions: ["v1"]
- clientConfig:
- service:
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
- failurePolicy: Fail
- sideEffects: None
- name: config.webhook.pipeline.tekton.dev
- objectSelector:
- matchLabels:
- app.kubernetes.io/part-of: tekton-pipelines
-
----
-# Copyright 2019-2022 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- name: tekton-aggregate-edit
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- rbac.authorization.k8s.io/aggregate-to-edit: "true"
- rbac.authorization.k8s.io/aggregate-to-admin: "true"
-rules:
- - apiGroups:
- - tekton.dev
- resources:
- - tasks
- - taskruns
- - pipelines
- - pipelineruns
- - runs
- - customruns
- - stepactions
- verbs:
- - create
- - delete
- - deletecollection
- - get
- - list
- - patch
- - update
- - watch
-
----
-# Copyright 2019-2022 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- name: tekton-aggregate-view
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- rbac.authorization.k8s.io/aggregate-to-view: "true"
-rules:
- - apiGroups:
- - tekton.dev
- resources:
- - tasks
- - taskruns
- - pipelines
- - pipelineruns
- - runs
- - customruns
- - stepactions
- verbs:
- - get
- - list
- - watch
-
----
-# Copyright 2019 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: config-defaults
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- _example: |
- ################################
- # #
- # EXAMPLE CONFIGURATION #
- # #
- ################################
-
- # This block is not actually functional configuration,
- # but serves to illustrate the available configuration
- # options and document them in a way that is accessible
- # to users that `kubectl edit` this config map.
- #
- # These sample configuration options may be copied out of
- # this example block and unindented to be in the data block
- # to actually change the configuration.
-
- # default-timeout-minutes contains the default number of
- # minutes to use for TaskRun and PipelineRun, if none is specified.
- default-timeout-minutes: "60" # 60 minutes
-
- # default-service-account contains the default service account name
- # to use for TaskRun and PipelineRun, if none is specified.
- default-service-account: "default"
-
- # default-managed-by-label-value contains the default value given to the
- # "app.kubernetes.io/managed-by" label applied to all Pods created for
- # TaskRuns. If a user's requested TaskRun specifies another value for this
- # label, the user's request supercedes.
- default-managed-by-label-value: "tekton-pipelines"
-
- # default-pod-template contains the default pod template to use for
- # TaskRun and PipelineRun. If a pod template is specified on the
- # PipelineRun, the default-pod-template is merged with that one.
- # default-pod-template:
-
- # default-affinity-assistant-pod-template contains the default pod template
- # to use for affinity assistant pods. If a pod template is specified on the
- # PipelineRun, the default-affinity-assistant-pod-template is merged with
- # that one.
- # default-affinity-assistant-pod-template:
-
- # default-cloud-events-sink contains the default CloudEvents sink to be
- # used for TaskRun and PipelineRun, when no sink is specified.
- # Note that right now it is still not possible to set a PipelineRun or
- # TaskRun specific sink, so the default is the only option available.
- # If no sink is specified, no CloudEvent is generated
- # default-cloud-events-sink:
-
- # default-task-run-workspace-binding contains the default workspace
- # configuration provided for any Workspaces that a Task declares
- # but that a TaskRun does not explicitly provide.
- # default-task-run-workspace-binding: |
- # emptyDir: {}
-
- # default-max-matrix-combinations-count contains the default maximum number
- # of combinations from a Matrix, if none is specified.
- default-max-matrix-combinations-count: "256"
-
- # default-forbidden-env contains comma seperated environment variables that cannot be
- # overridden by podTemplate.
- default-forbidden-env:
-
- # default-resolver-type contains the default resolver type to be used in the cluster,
- # no default-resolver-type is specified by default
- default-resolver-type:
-
----
-# Copyright 2023 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: config-events
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- _example: |
- ################################
- # #
- # EXAMPLE CONFIGURATION #
- # #
- ################################
-
- # This block is not actually functional configuration,
- # but serves to illustrate the available configuration
- # options and document them in a way that is accessible
- # to users that `kubectl edit` this config map.
- #
- # These sample configuration options may be copied out of
- # this example block and unindented to be in the data block
- # to actually change the configuration.
-
- # formats contains a comma seperated list of event formats to be used
- # the only format supported today is "tektonv1". An empty string is not
- # a valid configuration. To disable events, do not specify the sink.
- formats: "tektonv1"
-
- # sink contains the event sink to be used for TaskRun, PipelineRun and
- # CustomRun. If no sink is specified, no CloudEvent is generated.
- # This setting supercedes the "default-cloud-events-sink" from the
- # "config-defaults" config map
- sink: "https://events.sink/cdevents"
-
----
-# Copyright 2019 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: feature-flags
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- # Setting this flag to "true" will prevent Tekton to create an
- # Affinity Assistant for every TaskRun sharing a PVC workspace
- #
- # The default behaviour is for Tekton to create Affinity Assistants
- #
- # See more in the Affinity Assistant documentation
- # https://github.com/tektoncd/pipeline/blob/main/docs/affinityassistants.md
- # or https://github.com/tektoncd/pipeline/pull/2630 for more info.
- #
- # Note: This feature flag is deprecated and will be removed in release v0.60. Consider using `coschedule` feature flag to configure Affinity Assistant behavior.
- disable-affinity-assistant: "false"
- # Setting this flag will determine how PipelineRun Pods are scheduled with Affinity Assistant.
- # Acceptable values are "workspaces" (default), "pipelineruns", "isolate-pipelinerun", or "disabled".
- #
- # Setting it to "workspaces" will schedule all the taskruns sharing the same PVC-based workspace in a pipelinerun to the same node.
- # Setting it to "pipelineruns" will schedule all the taskruns in a pipelinerun to the same node.
- # Setting it to "isolate-pipelinerun" will schedule all the taskruns in a pipelinerun to the same node,
- # and only allows one pipelinerun to run on a node at a time.
- # Setting it to "disabled" will not apply any coschedule policy.
- #
- # See more in the Affinity Assistant documentation
- # https://github.com/tektoncd/pipeline/blob/main/docs/affinityassistants.md
- coschedule: "workspaces"
- # Setting this flag to "true" will prevent Tekton scanning attached
- # service accounts and injecting any credentials it finds into your
- # Steps.
- #
- # The default behaviour currently is for Tekton to search service
- # accounts for secrets matching a specified format and automatically
- # mount those into your Steps.
- #
- # Note: setting this to "true" will prevent PipelineResources from
- # working.
- #
- # See https://github.com/tektoncd/pipeline/issues/2791 for more
- # info.
- disable-creds-init: "false"
- # Setting this flag to "false" will stop Tekton from waiting for a
- # TaskRun's sidecar containers to be running before starting the first
- # step. This will allow Tasks to be run in environments that don't
- # support the DownwardAPI volume type, but may lead to unintended
- # behaviour if sidecars are used.
- #
- # See https://github.com/tektoncd/pipeline/issues/4937 for more info.
- await-sidecar-readiness: "true"
- # This option should be set to false when Pipelines is running in a
- # cluster that does not use injected sidecars such as Istio. Setting
- # it to false should decrease the time it takes for a TaskRun to start
- # running. For clusters that use injected sidecars, setting this
- # option to false can lead to unexpected behavior.
- #
- # See https://github.com/tektoncd/pipeline/issues/2080 for more info.
- running-in-environment-with-injected-sidecars: "true"
- # Setting this flag to "true" will require that any Git SSH Secret
- # offered to Tekton must have known_hosts included.
- #
- # See https://github.com/tektoncd/pipeline/issues/2981 for more
- # info.
- require-git-ssh-secret-known-hosts: "false"
- # Setting this flag to "true" enables the use of Tekton OCI bundle.
- # This is an experimental feature and thus should still be considered
- # an alpha feature.
- enable-tekton-oci-bundles: "false"
- # Setting this flag will determine which gated features are enabled.
- # Acceptable values are "stable", "beta", or "alpha".
- enable-api-fields: "beta"
- # Setting this flag to "true" enables CloudEvents for CustomRuns and Runs, as long as a
- # CloudEvents sink is configured in the config-defaults config map
- send-cloudevents-for-runs: "false"
- # This flag affects the behavior of taskruns and pipelineruns in cases where no VerificationPolicies match them.
- # If it is set to "fail", TaskRuns and PipelineRuns will fail verification if no matching policies are found.
- # If it is set to "warn", TaskRuns and PipelineRuns will run to completion if no matching policies are found, and an error will be logged.
- # If it is set to "ignore", TaskRuns and PipelineRuns will run to completion if no matching policies are found, and no error will be logged.
- trusted-resources-verification-no-match-policy: "ignore"
- # Setting this flag to "true" enables populating the "provenance" field in TaskRun
- # and PipelineRun status. This field contains metadata about resources used
- # in the TaskRun/PipelineRun such as the source from where a remote Task/Pipeline
- # definition was fetched.
- enable-provenance-in-status: "true"
- # Setting this flag will determine how Tekton pipelines will handle non-falsifiable provenance.
- # If set to "spire", then SPIRE will be used to ensure non-falsifiable provenance.
- # If set to "none", then Tekton will not have non-falsifiable provenance.
- # This is an experimental feature and thus should still be considered an alpha feature.
- enforce-nonfalsifiability: "none"
- # Setting this flag will determine how Tekton pipelines will handle extracting results from the task.
- # Acceptable values are "termination-message" or "sidecar-logs".
- # "sidecar-logs" is an experimental feature and thus should still be considered
- # an alpha feature.
- results-from: "termination-message"
- # Setting this flag will determine the upper limit of each task result
- # This flag is optional and only associated with the previous flag, results-from
- # When results-from is set to "sidecar-logs", this flag can be used to configure the upper limit of a task result
- # max-result-size: "4096"
- # Setting this flag to "true" will limit privileges for containers injected by Tekton into TaskRuns.
- # This allows TaskRuns to run in namespaces with "restricted" pod security standards.
- # Not all Kubernetes implementations support this option.
- set-security-context: "false"
- # Setting this flag to "true" will keep pod on cancellation
- # allowing examination of the logs on the pods from cancelled taskruns
- keep-pod-on-cancel: "false"
- # Setting this flag to "true" will enable the CEL evaluation in WhenExpression
- enable-cel-in-whenexpression: "false"
- # Setting this flag to "true" will enable the use of StepActions in Steps
- # This feature is in preview mode and not implemented yet. Please check #7259 for updates.
- enable-step-actions: "false"
-
----
-# Copyright 2021 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: pipelines-info
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- # Contains pipelines version which can be queried by external
- # tools such as CLI. Elevated permissions are already given to
- # this ConfigMap such that even if we don't have access to
- # other resources in the namespace we still can have access to
- # this ConfigMap.
- version: "v0.53.2"
-
----
-# Copyright 2020 Tekton Authors LLC
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: config-leader-election-controller
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- _example: |
- ################################
- # #
- # EXAMPLE CONFIGURATION #
- # #
- ################################
- # This block is not actually functional configuration,
- # but serves to illustrate the available configuration
- # options and document them in a way that is accessible
- # to users that `kubectl edit` this config map.
- #
- # These sample configuration options may be copied out of
- # this example block and unindented to be in the data block
- # to actually change the configuration.
- # lease-duration is how long non-leaders will wait to try to acquire the
- # lock; 15 seconds is the value used by core kubernetes controllers.
- lease-duration: "60s"
- # renew-deadline is how long a leader will try to renew the lease before
- # giving up; 10 seconds is the value used by core kubernetes controllers.
- renew-deadline: "40s"
- # retry-period is how long the leader election client waits between tries of
- # actions; 2 seconds is the value used by core kubernetes controllers.
- retry-period: "10s"
- # buckets is the number of buckets used to partition key space of each
- # Reconciler. If this number is M and the replica number of the controller
- # is N, the N replicas will compete for the M buckets. The owner of a
- # bucket will take care of the reconciling for the keys partitioned into
- # that bucket.
- buckets: "1"
-
----
-# Copyright 2023 Tekton Authors LLC
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: config-leader-election-events
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- _example: |
- ################################
- # #
- # EXAMPLE CONFIGURATION #
- # #
- ################################
- # This block is not actually functional configuration,
- # but serves to illustrate the available configuration
- # options and document them in a way that is accessible
- # to users that `kubectl edit` this config map.
- #
- # These sample configuration options may be copied out of
- # this example block and unindented to be in the data block
- # to actually change the configuration.
- # lease-duration is how long non-leaders will wait to try to acquire the
- # lock; 15 seconds is the value used by core kubernetes controllers.
- lease-duration: "60s"
- # renew-deadline is how long a leader will try to renew the lease before
- # giving up; 10 seconds is the value used by core kubernetes controllers.
- renew-deadline: "40s"
- # retry-period is how long the leader election client waits between tries of
- # actions; 2 seconds is the value used by core kubernetes controllers.
- retry-period: "10s"
- # buckets is the number of buckets used to partition key space of each
- # Reconciler. If this number is M and the replica number of the controller
- # is N, the N replicas will compete for the M buckets. The owner of a
- # bucket will take care of the reconciling for the keys partitioned into
- # that bucket.
- buckets: "1"
-
----
-# Copyright 2023 Tekton Authors LLC
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: config-leader-election-webhook
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- _example: |
- ################################
- # #
- # EXAMPLE CONFIGURATION #
- # #
- ################################
- # This block is not actually functional configuration,
- # but serves to illustrate the available configuration
- # options and document them in a way that is accessible
- # to users that `kubectl edit` this config map.
- #
- # These sample configuration options may be copied out of
- # this example block and unindented to be in the data block
- # to actually change the configuration.
- # lease-duration is how long non-leaders will wait to try to acquire the
- # lock; 15 seconds is the value used by core kubernetes controllers.
- lease-duration: "60s"
- # renew-deadline is how long a leader will try to renew the lease before
- # giving up; 10 seconds is the value used by core kubernetes controllers.
- renew-deadline: "40s"
- # retry-period is how long the leader election client waits between tries of
- # actions; 2 seconds is the value used by core kubernetes controllers.
- retry-period: "10s"
- # buckets is the number of buckets used to partition key space of each
- # Reconciler. If this number is M and the replica number of the controller
- # is N, the N replicas will compete for the M buckets. The owner of a
- # bucket will take care of the reconciling for the keys partitioned into
- # that bucket.
- buckets: "1"
-
----
-# Copyright 2019 Tekton Authors LLC
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: config-logging
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- zap-logger-config: |
- {
- "level": "info",
- "development": false,
- "sampling": {
- "initial": 100,
- "thereafter": 100
- },
- "outputPaths": ["stdout"],
- "errorOutputPaths": ["stderr"],
- "encoding": "json",
- "encoderConfig": {
- "timeKey": "timestamp",
- "levelKey": "severity",
- "nameKey": "logger",
- "callerKey": "caller",
- "messageKey": "message",
- "stacktraceKey": "stacktrace",
- "lineEnding": "",
- "levelEncoder": "",
- "timeEncoder": "iso8601",
- "durationEncoder": "",
- "callerEncoder": ""
- }
- }
- # Log level overrides
- loglevel.controller: "info"
- loglevel.webhook: "info"
-
----
-# Copyright 2019 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: config-observability
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- _example: |
- ################################
- # #
- # EXAMPLE CONFIGURATION #
- # #
- ################################
-
- # This block is not actually functional configuration,
- # but serves to illustrate the available configuration
- # options and document them in a way that is accessible
- # to users that `kubectl edit` this config map.
- #
- # These sample configuration options may be copied out of
- # this example block and unindented to be in the data block
- # to actually change the configuration.
-
- # metrics.backend-destination field specifies the system metrics destination.
- # It supports either prometheus (the default) or stackdriver.
- # Note: Using Stackdriver will incur additional charges.
- metrics.backend-destination: prometheus
-
- # metrics.stackdriver-project-id field specifies the Stackdriver project ID. This
- # field is optional. When running on GCE, application default credentials will be
- # used and metrics will be sent to the cluster's project if this field is
- # not provided.
- metrics.stackdriver-project-id: ""
-
- # metrics.allow-stackdriver-custom-metrics indicates whether it is allowed
- # to send metrics to Stackdriver using "global" resource type and custom
- # metric type. Setting this flag to "true" could cause extra Stackdriver
- # charge. If metrics.backend-destination is not Stackdriver, this is
- # ignored.
- metrics.allow-stackdriver-custom-metrics: "false"
- metrics.taskrun.level: "task"
- metrics.taskrun.duration-type: "histogram"
- metrics.pipelinerun.level: "pipeline"
- metrics.pipelinerun.duration-type: "histogram"
- metrics.count.enable-reason: "false"
-
----
-# Copyright 2020 Tekton Authors LLC
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: config-registry-cert
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-# data:
-# # Registry's self-signed certificate
-# cert: |
-
----
-# Copyright 2022 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: config-spire
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- _example: |
- ################################
- # #
- # EXAMPLE CONFIGURATION #
- # #
- ################################
- # This block is not actually functional configuration,
- # but serves to illustrate the available configuration
- # options and document them in a way that is accessible
- # to users that `kubectl edit` this config map.
- #
- # These sample configuration options may be copied out of
- # this example block and unindented to be in the data block
- # to actually change the configuration.
- #
- # spire-trust-domain specifies the SPIRE trust domain to use.
- # spire-trust-domain: "example.org"
- #
- # spire-socket-path specifies the SPIRE agent socket for SPIFFE workload API.
- # spire-socket-path: "unix:///spiffe-workload-api/spire-agent.sock"
- #
- # spire-server-addr specifies the SPIRE server address for workload/node registration.
- # spire-server-addr: "spire-server.spire.svc.cluster.local:8081"
- #
- # spire-node-alias-prefix specifies the SPIRE node alias prefix to use.
- # spire-node-alias-prefix: "/tekton-node/"
-
----
-# Copyright 2023 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: config-tracing
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- _example: |
- ################################
- # #
- # EXAMPLE CONFIGURATION #
- # #
- ################################
- # This block is not actually functional configuration,
- # but serves to illustrate the available configuration
- # options and document them in a way that is accessible
- # to users that `kubectl edit` this config map.
- #
- # These sample configuration options may be copied out of
- # this example block and unindented to be in the data block
- # to actually change the configuration.
- #
- # Enable sending traces to defined endpoint by setting this to true
- enabled: "true"
- #
- # API endpoint to send the traces to
- # (optional): The default value is given below
- endpoint: "http://jaeger-collector.jaeger.svc.cluster.local:14268/api/traces"
-
----
-# Copyright 2019 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: tekton-pipelines-controller
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/name: controller
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "v0.53.2"
- app.kubernetes.io/part-of: tekton-pipelines
- # tekton.dev/release value replaced with inputs.params.versionTag in pipeline/tekton/publish.yaml
- pipeline.tekton.dev/release: "v0.53.2"
- # labels below are related to istio and should not be used for resource lookup
- version: "v0.53.2"
-spec:
- replicas: 1
- selector:
- matchLabels:
- app.kubernetes.io/name: controller
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- template:
- metadata:
- labels:
- app.kubernetes.io/name: controller
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "v0.53.2"
- app.kubernetes.io/part-of: tekton-pipelines
- # tekton.dev/release value replaced with inputs.params.versionTag in pipeline/tekton/publish.yaml
- pipeline.tekton.dev/release: "v0.53.2"
- # labels below are related to istio and should not be used for resource lookup
- app: tekton-pipelines-controller
- version: "v0.53.2"
- spec:
- affinity:
- nodeAffinity:
- requiredDuringSchedulingIgnoredDuringExecution:
- nodeSelectorTerms:
- - matchExpressions:
- - key: kubernetes.io/os
- operator: NotIn
- values:
- - windows
- serviceAccountName: tekton-pipelines-controller
- containers:
- - name: tekton-pipelines-controller
- image: gcr.io/tekton-releases/github.com/tektoncd/pipeline/cmd/controller:v0.53.2@sha256:2cab05747826e7c32e2c588f0fefd354e03f643bd33dbe20533eada00562e6b1
- args: [
- # These images are built on-demand by `ko resolve` and are replaced
- # by image references by digest.
- "-entrypoint-image", "gcr.io/tekton-releases/github.com/tektoncd/pipeline/cmd/entrypoint:v0.53.2@sha256:7a4269475491e3e9b70e173de6871596e63a9eefd792f2127ca7004145915a76", "-nop-image", "gcr.io/tekton-releases/github.com/tektoncd/pipeline/cmd/nop:v0.53.2@sha256:1793eb2b13d86e084d603ec174904176e5e68b7161be9ed66786deda8f728f30", "-sidecarlogresults-image", "gcr.io/tekton-releases/github.com/tektoncd/pipeline/cmd/sidecarlogresults:v0.53.2@sha256:cf55af7c850b6f6b83d7565b728969cc6cf548ae0c72abf7261c42ce07eefe2d", "-workingdirinit-image", "gcr.io/tekton-releases/github.com/tektoncd/pipeline/cmd/workingdirinit:v0.53.2@sha256:5c0b96d1f1ac9a5c1d8fa50ba07a1174812190707c4abb939b6c41b0b8e72093",
- # The shell image must allow root in order to create directories and copy files to PVCs.
- # cgr.dev/chainguard/busybox as of April 14 2022
- # image shall not contains tag, so it will be supported on a runtime like cri-o
- "-shell-image", "cgr.dev/chainguard/busybox@sha256:19f02276bf8dbdd62f069b922f10c65262cc34b710eea26ff928129a736be791",
- # for script mode to work with windows we need a powershell image
- # pinning to nanoserver tag as of July 15 2021
- "-shell-image-win", "mcr.microsoft.com/powershell:nanoserver@sha256:b6d5ff841b78bdf2dfed7550000fd4f3437385b8fa686ec0f010be24777654d6"]
- volumeMounts:
- - name: config-logging
- mountPath: /etc/config-logging
- - name: config-registry-cert
- mountPath: /etc/config-registry-cert
- env:
- - name: SYSTEM_NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- # If you are changing these names, you will also need to update
- # the controller's Role in 200-role.yaml to include the new
- # values in the "configmaps" "get" rule.
- - name: CONFIG_DEFAULTS_NAME
- value: config-defaults
- - name: CONFIG_LOGGING_NAME
- value: config-logging
- - name: CONFIG_OBSERVABILITY_NAME
- value: config-observability
- - name: CONFIG_FEATURE_FLAGS_NAME
- value: feature-flags
- - name: CONFIG_LEADERELECTION_NAME
- value: config-leader-election-controller
- - name: CONFIG_SPIRE
- value: config-spire
- - name: SSL_CERT_FILE
- value: /etc/config-registry-cert/cert
- - name: SSL_CERT_DIR
- value: /etc/ssl/certs
- - name: METRICS_DOMAIN
- value: tekton.dev/pipeline
- # The following variables can be uncommented with correct values to enable Jaeger tracing
- #- name: OTEL_EXPORTER_JAEGER_ENDPOINT
- # value: http://jaeger-collector.jaeger:14268/api/traces
- #- name: OTEL_EXPORTER_JAEGER_USER
- # value: username
- #- name: OTEL_EXPORTER_JAEGER_PASSWORD
- # value: password
- securityContext:
- allowPrivilegeEscalation: false
- capabilities:
- drop:
- - "ALL"
- # User 65532 is the nonroot user ID
- runAsUser: 65532
- runAsGroup: 65532
- runAsNonRoot: true
- seccompProfile:
- type: RuntimeDefault
- ports:
- - name: metrics
- containerPort: 9090
- - name: profiling
- containerPort: 8008
- - name: probes
- containerPort: 8080
- livenessProbe:
- httpGet:
- path: /health
- port: probes
- scheme: HTTP
- initialDelaySeconds: 5
- periodSeconds: 10
- timeoutSeconds: 5
- readinessProbe:
- httpGet:
- path: /readiness
- port: probes
- scheme: HTTP
- initialDelaySeconds: 5
- periodSeconds: 10
- timeoutSeconds: 5
- volumes:
- - name: config-logging
- configMap:
- name: config-logging
- - name: config-registry-cert
- configMap:
- name: config-registry-cert
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app.kubernetes.io/name: controller
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "v0.53.2"
- app.kubernetes.io/part-of: tekton-pipelines
- # tekton.dev/release value replaced with inputs.params.versionTag in pipeline/tekton/publish.yaml
- pipeline.tekton.dev/release: "v0.53.2"
- # labels below are related to istio and should not be used for resource lookup
- app: tekton-pipelines-controller
- version: "v0.53.2"
- name: tekton-pipelines-controller
- namespace: tekton-pipelines
-spec:
- ports:
- - name: http-metrics
- port: 9090
- protocol: TCP
- targetPort: 9090
- - name: http-profiling
- port: 8008
- targetPort: 8008
- - name: probes
- port: 8080
- selector:
- app.kubernetes.io/name: controller
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-
----
-# Copyright 2023 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: tekton-events-controller
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/name: events
- app.kubernetes.io/component: events
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "v0.53.2"
- app.kubernetes.io/part-of: tekton-pipelines
- # tekton.dev/release value replaced with inputs.params.versionTag in pipeline/tekton/publish.yaml
- pipeline.tekton.dev/release: "v0.53.2"
- # labels below are related to istio and should not be used for resource lookup
- version: "v0.53.2"
-spec:
- replicas: 1
- selector:
- matchLabels:
- app.kubernetes.io/name: events
- app.kubernetes.io/component: events
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- template:
- metadata:
- labels:
- app.kubernetes.io/name: events
- app.kubernetes.io/component: events
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "v0.53.2"
- app.kubernetes.io/part-of: tekton-pipelines
- # tekton.dev/release value replaced with inputs.params.versionTag in pipeline/tekton/publish.yaml
- pipeline.tekton.dev/release: "v0.53.2"
- # labels below are related to istio and should not be used for resource lookup
- app: tekton-events-controller
- version: "v0.53.2"
- spec:
- affinity:
- nodeAffinity:
- requiredDuringSchedulingIgnoredDuringExecution:
- nodeSelectorTerms:
- - matchExpressions:
- - key: kubernetes.io/os
- operator: NotIn
- values:
- - windows
- serviceAccountName: tekton-events-controller
- containers:
- - name: tekton-events-controller
- image: gcr.io/tekton-releases/github.com/tektoncd/pipeline/cmd/events:v0.53.2@sha256:0cf6f0be5319efdd8909ed8f987837d89146fd0632a744bf6d54bf83e5b13ca0
- args: []
- volumeMounts:
- - name: config-logging
- mountPath: /etc/config-logging
- - name: config-registry-cert
- mountPath: /etc/config-registry-cert
- env:
- - name: SYSTEM_NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- # If you are changing these names, you will also need to update
- # the controller's Role in 200-role.yaml to include the new
- # values in the "configmaps" "get" rule.
- - name: CONFIG_DEFAULTS_NAME
- value: config-defaults
- - name: CONFIG_LOGGING_NAME
- value: config-logging
- - name: CONFIG_OBSERVABILITY_NAME
- value: config-observability
- - name: CONFIG_LEADERELECTION_NAME
- value: config-leader-election-events
- - name: SSL_CERT_FILE
- value: /etc/config-registry-cert/cert
- - name: SSL_CERT_DIR
- value: /etc/ssl/certs
- securityContext:
- allowPrivilegeEscalation: false
- capabilities:
- drop:
- - "ALL"
- # User 65532 is the nonroot user ID
- runAsUser: 65532
- runAsGroup: 65532
- runAsNonRoot: true
- seccompProfile:
- type: RuntimeDefault
- ports:
- - name: metrics
- containerPort: 9090
- - name: profiling
- containerPort: 8008
- - name: probes
- containerPort: 8080
- livenessProbe:
- httpGet:
- path: /health
- port: probes
- scheme: HTTP
- initialDelaySeconds: 5
- periodSeconds: 10
- timeoutSeconds: 5
- readinessProbe:
- httpGet:
- path: /readiness
- port: probes
- scheme: HTTP
- initialDelaySeconds: 5
- periodSeconds: 10
- timeoutSeconds: 5
- volumes:
- - name: config-logging
- configMap:
- name: config-logging
- - name: config-registry-cert
- configMap:
- name: config-registry-cert
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app.kubernetes.io/name: events
- app.kubernetes.io/component: events
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "v0.53.2"
- app.kubernetes.io/part-of: tekton-pipelines
- # tekton.dev/release value replaced with inputs.params.versionTag in pipeline/tekton/publish.yaml
- pipeline.tekton.dev/release: "v0.53.2"
- # labels below are related to istio and should not be used for resource lookup
- app: tekton-events-controller
- version: "v0.53.2"
- name: tekton-events-controller
- namespace: tekton-pipelines
-spec:
- ports:
- - name: http-metrics
- port: 9090
- protocol: TCP
- targetPort: 9090
- - name: http-profiling
- port: 8008
- targetPort: 8008
- - name: probes
- port: 8080
- selector:
- app.kubernetes.io/name: events
- app.kubernetes.io/component: events
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-
----
-# Copyright 2022 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: Namespace
-metadata:
- name: tekton-pipelines-resolvers
- labels:
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- pod-security.kubernetes.io/enforce: restricted
-
----
-# Copyright 2022 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- # ClusterRole for resolvers to monitor and update resolutionrequests.
- name: tekton-pipelines-resolvers-resolution-request-updates
- labels:
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-rules:
- - apiGroups: ["resolution.tekton.dev"]
- resources: ["resolutionrequests", "resolutionrequests/status"]
- verbs: ["get", "list", "watch", "update", "patch"]
- - apiGroups: ["tekton.dev"]
- resources: ["tasks", "pipelines"]
- verbs: ["get", "list"]
- # Read-only access to these.
- - apiGroups: [""]
- resources: ["secrets"]
- verbs: ["get", "list", "watch"]
-
----
-# Copyright 2022 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-kind: Role
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: tekton-pipelines-resolvers-namespace-rbac
- namespace: tekton-pipelines-resolvers
- labels:
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-rules:
- # Needed to watch and load configuration and secret data.
- - apiGroups: [""]
- resources: ["configmaps", "secrets"]
- verbs: ["get", "list", "update", "watch"]
- # This is needed by leader election to run the controller in HA.
- - apiGroups: ["coordination.k8s.io"]
- resources: ["leases"]
- verbs: ["get", "list", "create", "update", "delete", "patch", "watch"]
-
----
-# Copyright 2022 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: tekton-pipelines-resolvers
- namespace: tekton-pipelines-resolvers
- labels:
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-
----
-# Copyright 2021 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: tekton-pipelines-resolvers
- labels:
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-subjects:
- - kind: ServiceAccount
- name: tekton-pipelines-resolvers
- namespace: tekton-pipelines-resolvers
-roleRef:
- kind: ClusterRole
- name: tekton-pipelines-resolvers-resolution-request-updates
- apiGroup: rbac.authorization.k8s.io
-
----
-# Copyright 2021 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: tekton-pipelines-resolvers-namespace-rbac
- namespace: tekton-pipelines-resolvers
- labels:
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-subjects:
- - kind: ServiceAccount
- name: tekton-pipelines-resolvers
- namespace: tekton-pipelines-resolvers
-roleRef:
- kind: Role
- name: tekton-pipelines-resolvers-namespace-rbac
- apiGroup: rbac.authorization.k8s.io
-
----
-# Copyright 2022 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: bundleresolver-config
- namespace: tekton-pipelines-resolvers
- labels:
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- # the default service account name to use for bundle requests.
- default-service-account: "default"
- # The default layer kind in the bundle image.
- default-kind: "task"
-
----
-# Copyright 2022 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: cluster-resolver-config
- namespace: tekton-pipelines-resolvers
- labels:
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- # The default kind to fetch.
- default-kind: "task"
- # The default namespace to look for resources in.
- default-namespace: ""
- # An optional comma-separated list of namespaces which the resolver is allowed to access. Defaults to empty, meaning all namespaces are allowed.
- allowed-namespaces: ""
- # An optional comma-separated list of namespaces which the resolver is blocked from accessing. Defaults to empty, meaning all namespaces are allowed.
- blocked-namespaces: ""
-
----
-# Copyright 2019 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: resolvers-feature-flags
- namespace: tekton-pipelines-resolvers
- labels:
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- # Setting this flag to "true" enables remote resolution of Tekton OCI bundles.
- enable-bundles-resolver: "true"
- # Setting this flag to "true" enables remote resolution of tasks and pipelines via the Tekton Hub.
- enable-hub-resolver: "true"
- # Setting this flag to "true" enables remote resolution of tasks and pipelines from Git repositories.
- enable-git-resolver: "true"
- # Setting this flag to "true" enables remote resolution of tasks and pipelines from other namespaces within the cluster.
- enable-cluster-resolver: "true"
-
----
-# Copyright 2020 Tekton Authors LLC
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: config-leader-election-resolvers
- namespace: tekton-pipelines-resolvers
- labels:
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- _example: |
- ################################
- # #
- # EXAMPLE CONFIGURATION #
- # #
- ################################
- # This block is not actually functional configuration,
- # but serves to illustrate the available configuration
- # options and document them in a way that is accessible
- # to users that `kubectl edit` this config map.
- #
- # These sample configuration options may be copied out of
- # this example block and unindented to be in the data block
- # to actually change the configuration.
- # lease-duration is how long non-leaders will wait to try to acquire the
- # lock; 15 seconds is the value used by core kubernetes controllers.
- lease-duration: "60s"
- # renew-deadline is how long a leader will try to renew the lease before
- # giving up; 10 seconds is the value used by core kubernetes controllers.
- renew-deadline: "40s"
- # retry-period is how long the leader election client waits between tries of
- # actions; 2 seconds is the value used by core kubernetes controllers.
- retry-period: "10s"
- # buckets is the number of buckets used to partition key space of each
- # Reconciler. If this number is M and the replica number of the controller
- # is N, the N replicas will compete for the M buckets. The owner of a
- # bucket will take care of the reconciling for the keys partitioned into
- # that bucket.
- buckets: "1"
-
----
-# Copyright 2019 Tekton Authors LLC
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: config-logging
- namespace: tekton-pipelines-resolvers
- labels:
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- zap-logger-config: |
- {
- "level": "info",
- "development": false,
- "sampling": {
- "initial": 100,
- "thereafter": 100
- },
- "outputPaths": ["stdout"],
- "errorOutputPaths": ["stderr"],
- "encoding": "json",
- "encoderConfig": {
- "timeKey": "timestamp",
- "levelKey": "severity",
- "nameKey": "logger",
- "callerKey": "caller",
- "messageKey": "message",
- "stacktraceKey": "stacktrace",
- "lineEnding": "",
- "levelEncoder": "",
- "timeEncoder": "iso8601",
- "durationEncoder": "",
- "callerEncoder": ""
- }
- }
- # Log level overrides
- loglevel.controller: "info"
- loglevel.webhook: "info"
-
----
-# Copyright 2022 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: config-observability
- namespace: tekton-pipelines-resolvers
- labels:
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- _example: |
- ################################
- # #
- # EXAMPLE CONFIGURATION #
- # #
- ################################
-
- # This block is not actually functional configuration,
- # but serves to illustrate the available configuration
- # options and document them in a way that is accessible
- # to users that `kubectl edit` this config map.
- #
- # These sample configuration options may be copied out of
- # this example block and unindented to be in the data block
- # to actually change the configuration.
-
- # metrics.backend-destination field specifies the system metrics destination.
- # It supports either prometheus (the default) or stackdriver.
- # Note: Using stackdriver will incur additional charges
- metrics.backend-destination: prometheus
-
- # metrics.request-metrics-backend-destination specifies the request metrics
- # destination. If non-empty, it enables queue proxy to send request metrics.
- # Currently supported values: prometheus, stackdriver.
- metrics.request-metrics-backend-destination: prometheus
-
- # metrics.stackdriver-project-id field specifies the stackdriver project ID. This
- # field is optional. When running on GCE, application default credentials will be
- # used if this field is not provided.
- metrics.stackdriver-project-id: ""
-
- # metrics.allow-stackdriver-custom-metrics indicates whether it is allowed to send metrics to
- # Stackdriver using "global" resource type and custom metric type if the
- # metrics are not supported by "knative_revision" resource type. Setting this
- # flag to "true" could cause extra Stackdriver charge.
- # If metrics.backend-destination is not Stackdriver, this is ignored.
- metrics.allow-stackdriver-custom-metrics: "false"
-
----
-# Copyright 2022 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: git-resolver-config
- namespace: tekton-pipelines-resolvers
- labels:
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- # The maximum amount of time a single anonymous cloning resolution may take.
- fetch-timeout: "1m"
- # The git url to fetch the remote resource from when using anonymous cloning.
- default-url: "https://github.com/tektoncd/catalog.git"
- # The git revision to fetch the remote resource from with either anonymous cloning or the authenticated API.
- default-revision: "main"
- # The SCM type to use with the authenticated API. Can be github, gitlab, gitea, bitbucketserver, bitbucketcloud
- scm-type: "github"
- # The SCM server URL to use with the authenticated API. Not needed when using github.com, gitlab.com, or BitBucket Cloud
- server-url: ""
- # The Kubernetes secret containing the API token for the SCM provider. Required when using the authenticated API.
- api-token-secret-name: ""
- # The key in the API token secret containing the actual token. Required when using the authenticated API.
- api-token-secret-key: ""
- # The namespace containing the API token secret. Defaults to "default".
- api-token-secret-namespace: "default"
- # The default organization to look for repositories under when using the authenticated API,
- # if not specified in the resolver parameters. Optional.
- default-org: ""
-
----
-# Copyright 2022 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: hubresolver-config
- namespace: tekton-pipelines-resolvers
- labels:
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-data:
- # the default Tekton Hub catalog from where to pull the resource.
- default-tekton-hub-catalog: "Tekton"
- # the default Artifact Hub Task catalog from where to pull the resource.
- default-artifact-hub-task-catalog: "tekton-catalog-tasks"
- # the default Artifact Hub Pipeline catalog from where to pull the resource.
- default-artifact-hub-pipeline-catalog: "tekton-catalog-pipelines"
- # the default layer kind in the hub image.
- default-kind: "task"
- # the default hub source to pull the resource from.
- default-type: "artifact"
-
----
-# Copyright 2022 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: tekton-pipelines-remote-resolvers
- namespace: tekton-pipelines-resolvers
- labels:
- app.kubernetes.io/name: resolvers
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "v0.53.2"
- app.kubernetes.io/part-of: tekton-pipelines
- # tekton.dev/release value replaced with inputs.params.versionTag in pipeline/tekton/publish.yaml
- pipeline.tekton.dev/release: "v0.53.2"
- # labels below are related to istio and should not be used for resource lookup
- version: "v0.53.2"
-spec:
- replicas: 1
- selector:
- matchLabels:
- app.kubernetes.io/name: resolvers
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- template:
- metadata:
- labels:
- app.kubernetes.io/name: resolvers
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "v0.53.2"
- app.kubernetes.io/part-of: tekton-pipelines
- # tekton.dev/release value replaced with inputs.params.versionTag in pipeline/tekton/publish.yaml
- pipeline.tekton.dev/release: "v0.53.2"
- # labels below are related to istio and should not be used for resource lookup
- app: tekton-pipelines-resolvers
- version: "v0.53.2"
- spec:
- affinity:
- podAntiAffinity:
- preferredDuringSchedulingIgnoredDuringExecution:
- - podAffinityTerm:
- labelSelector:
- matchLabels:
- app.kubernetes.io/name: resolvers
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- topologyKey: kubernetes.io/hostname
- weight: 100
- serviceAccountName: tekton-pipelines-resolvers
- containers:
- - name: controller
- image: gcr.io/tekton-releases/github.com/tektoncd/pipeline/cmd/resolvers:v0.53.2@sha256:6578d145acd9cd288e501023429439334de15de8bd77af132c57a1d5f982e940
- resources:
- requests:
- cpu: 100m
- memory: 100Mi
- limits:
- cpu: 1000m
- memory: 4Gi
- ports:
- - name: metrics
- containerPort: 9090
- - name: profiling
- containerPort: 8008
- # This must match the value of the environment variable PROBES_PORT.
- - name: probes
- containerPort: 8080
- env:
- - name: SYSTEM_NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- # If you are changing these names, you will also need to update
- # the controller's Role in 200-role.yaml to include the new
- # values in the "configmaps" "get" rule.
- - name: CONFIG_LOGGING_NAME
- value: config-logging
- - name: CONFIG_OBSERVABILITY_NAME
- value: config-observability
- - name: CONFIG_FEATURE_FLAGS_NAME
- value: feature-flags
- - name: CONFIG_LEADERELECTION_NAME
- value: config-leader-election-resolvers
- - name: METRICS_DOMAIN
- value: tekton.dev/resolution
- - name: PROBES_PORT
- value: "8080"
- # Override this env var to set a private hub api endpoint
- - name: ARTIFACT_HUB_API
- value: "https://artifacthub.io/"
- - name: TEKTON_HUB_API
- value: "https://api.hub.tekton.dev/"
- securityContext:
- allowPrivilegeEscalation: false
- readOnlyRootFilesystem: true
- runAsNonRoot: true
- capabilities:
- drop:
- - "ALL"
- seccompProfile:
- type: RuntimeDefault
-
----
-# Copyright 2023 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app.kubernetes.io/name: resolvers
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "v0.53.2"
- app.kubernetes.io/part-of: tekton-pipelines
- # tekton.dev/release value replaced with inputs.params.versionTag in pipeline/tekton/publish.yaml
- pipeline.tekton.dev/release: "v0.53.2"
- # labels below are related to istio and should not be used for resource lookup
- app: tekton-pipelines-remote-resolvers
- version: "v0.53.2"
- name: tekton-pipelines-remote-resolvers
- namespace: tekton-pipelines-resolvers
-spec:
- ports:
- - name: http-metrics
- port: 9090
- protocol: TCP
- targetPort: 9090
- - name: http-profiling
- port: 8008
- targetPort: 8008
- - name: probes
- port: 8080
- selector:
- app.kubernetes.io/name: resolvers
- app.kubernetes.io/component: resolvers
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-
----
-# Copyright 2020 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: autoscaling/v2
-kind: HorizontalPodAutoscaler
-metadata:
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "v0.53.2"
- app.kubernetes.io/part-of: tekton-pipelines
- # tekton.dev/release value replaced with inputs.params.versionTag in pipeline/tekton/publish.yaml
- pipeline.tekton.dev/release: "v0.53.2"
- # labels below are related to istio and should not be used for resource lookup
- version: "v0.53.2"
-spec:
- minReplicas: 1
- maxReplicas: 5
- scaleTargetRef:
- apiVersion: apps/v1
- kind: Deployment
- name: tekton-pipelines-webhook
- metrics:
- - type: Resource
- resource:
- name: cpu
- target:
- type: Utilization
- averageUtilization: 100
-
----
-# Copyright 2020 The Tekton Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- # Note: the Deployment name must be the same as the Service name specified in
- # config/400-webhook-service.yaml. If you change this name, you must also
- # change the value of WEBHOOK_SERVICE_NAME below.
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
- labels:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "v0.53.2"
- app.kubernetes.io/part-of: tekton-pipelines
- # tekton.dev/release value replaced with inputs.params.versionTag in pipeline/tekton/publish.yaml
- pipeline.tekton.dev/release: "v0.53.2"
- # labels below are related to istio and should not be used for resource lookup
- version: "v0.53.2"
-spec:
- selector:
- matchLabels:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- template:
- metadata:
- labels:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "v0.53.2"
- app.kubernetes.io/part-of: tekton-pipelines
- # tekton.dev/release value replaced with inputs.params.versionTag in pipeline/tekton/publish.yaml
- pipeline.tekton.dev/release: "v0.53.2"
- # labels below are related to istio and should not be used for resource lookup
- app: tekton-pipelines-webhook
- version: "v0.53.2"
- spec:
- affinity:
- nodeAffinity:
- requiredDuringSchedulingIgnoredDuringExecution:
- nodeSelectorTerms:
- - matchExpressions:
- - key: kubernetes.io/os
- operator: NotIn
- values:
- - windows
- podAntiAffinity:
- preferredDuringSchedulingIgnoredDuringExecution:
- - podAffinityTerm:
- labelSelector:
- matchLabels:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
- topologyKey: kubernetes.io/hostname
- weight: 100
- serviceAccountName: tekton-pipelines-webhook
- containers:
- - name: webhook
- # This is the Go import path for the binary that is containerized
- # and substituted here.
- image: gcr.io/tekton-releases/github.com/tektoncd/pipeline/cmd/webhook:v0.53.2@sha256:1e8f8be3b51be378747b4589dde970582f50e1e69f59527f0a9aa7a75c5833e3
- # Resource request required for autoscaler to take any action for a metric
- resources:
- requests:
- cpu: 100m
- memory: 100Mi
- limits:
- cpu: 500m
- memory: 500Mi
- env:
- - name: SYSTEM_NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- # If you are changing these names, you will also need to update
- # the webhook's Role in 200-role.yaml to include the new
- # values in the "configmaps" "get" rule.
- - name: CONFIG_LOGGING_NAME
- value: config-logging
- - name: CONFIG_OBSERVABILITY_NAME
- value: config-observability
- - name: CONFIG_LEADERELECTION_NAME
- value: config-leader-election-webhook
- - name: CONFIG_FEATURE_FLAGS_NAME
- value: feature-flags
- # If you change PROBES_PORT, you will also need to change the
- # containerPort "probes" to the same value.
- - name: PROBES_PORT
- value: "8080"
- # If you change WEBHOOK_PORT, you will also need to change the
- # containerPort "https-webhook" to the same value.
- - name: WEBHOOK_PORT
- value: "8443"
- # if you change WEBHOOK_ADMISSION_CONTROLLER_NAME, you will also need to update
- # the webhooks.name in 500-webhooks.yaml to include the new names of admission webhooks.
- # Additionally, you will also need to change the resource names (metadata.name) of
- # "MutatingWebhookConfiguration" and "ValidatingWebhookConfiguration" in 500-webhooks.yaml
- # to reflect the change in the name of the admission webhook.
- # Followed by changing the webhook's Role in 200-clusterrole.yaml to update the "resourceNames" of
- # "mutatingwebhookconfigurations" and "validatingwebhookconfigurations" resources.
- - name: WEBHOOK_ADMISSION_CONTROLLER_NAME
- value: webhook.pipeline.tekton.dev
- - name: WEBHOOK_SERVICE_NAME
- value: tekton-pipelines-webhook
- - name: WEBHOOK_SECRET_NAME
- value: webhook-certs
- - name: METRICS_DOMAIN
- value: tekton.dev/pipeline
- securityContext:
- allowPrivilegeEscalation: false
- capabilities:
- drop:
- - "ALL"
- # User 65532 is the distroless nonroot user ID
- runAsUser: 65532
- runAsGroup: 65532
- runAsNonRoot: true
- seccompProfile:
- type: RuntimeDefault
- ports:
- - name: metrics
- containerPort: 9090
- - name: profiling
- containerPort: 8008
- # This must match the value of the environment variable WEBHOOK_PORT.
- - name: https-webhook
- containerPort: 8443
- # This must match the value of the environment variable PROBES_PORT.
- - name: probes
- containerPort: 8080
- livenessProbe:
- httpGet:
- path: /health
- port: probes
- scheme: HTTP
- initialDelaySeconds: 5
- periodSeconds: 10
- timeoutSeconds: 5
- readinessProbe:
- httpGet:
- path: /readiness
- port: probes
- scheme: HTTP
- initialDelaySeconds: 5
- periodSeconds: 10
- timeoutSeconds: 5
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/version: "v0.53.2"
- app.kubernetes.io/part-of: tekton-pipelines
- # tekton.dev/release value replaced with inputs.params.versionTag in pipeline/tekton/publish.yaml
- pipeline.tekton.dev/release: "v0.53.2"
- # labels below are related to istio and should not be used for resource lookup
- app: tekton-pipelines-webhook
- version: "v0.53.2"
- name: tekton-pipelines-webhook
- namespace: tekton-pipelines
-spec:
- ports:
- # Define metrics and profiling for them to be accessible within service meshes.
- - name: http-metrics
- port: 9090
- targetPort: metrics
- - name: http-profiling
- port: 8008
- targetPort: profiling
- - name: https-webhook
- port: 443
- targetPort: https-webhook
- - name: probes
- port: 8080
- targetPort: probes
- selector:
- app.kubernetes.io/name: webhook
- app.kubernetes.io/component: webhook
- app.kubernetes.io/instance: default
- app.kubernetes.io/part-of: tekton-pipelines
-
----
diff --git a/charts/kubeflow/apps/profiles/upstream/base/kustomization.yaml b/charts/kubeflow/apps/profiles/upstream/base/kustomization.yaml
index c6a15a0..a8f4f0f 100644
--- a/charts/kubeflow/apps/profiles/upstream/base/kustomization.yaml
+++ b/charts/kubeflow/apps/profiles/upstream/base/kustomization.yaml
@@ -10,9 +10,9 @@ patchesStrategicMerge:
- patches/manager.yaml
images:
-- name: docker.io/kubeflownotebookswg/profile-controller
- newName: docker.io/kubeflownotebookswg/profile-controller
- newTag: v1.9.0
+- name: ghcr.io/kubeflow/kubeflow/profile-controller
+ newName: ghcr.io/kubeflow/kubeflow/profile-controller
+ newTag: v1.10.0
configMapGenerator:
- name: namespace-labels-data
diff --git a/charts/kubeflow/apps/profiles/upstream/base/patches/manager.yaml b/charts/kubeflow/apps/profiles/upstream/base/patches/manager.yaml
index c8bccea..9718d7f 100644
--- a/charts/kubeflow/apps/profiles/upstream/base/patches/manager.yaml
+++ b/charts/kubeflow/apps/profiles/upstream/base/patches/manager.yaml
@@ -13,6 +13,14 @@ spec:
name: namespace-labels-data
containers:
- name: manager
+ securityContext:
+ allowPrivilegeEscalation: false
+ seccompProfile:
+ type: RuntimeDefault
+ runAsNonRoot: true
+ capabilities:
+ drop:
+ - ALL
volumeMounts:
- name: namespace-labels
mountPath: /etc/profile-controller
diff --git a/charts/kubeflow/apps/profiles/upstream/default/manager_auth_proxy_patch.yaml b/charts/kubeflow/apps/profiles/upstream/default/manager_auth_proxy_patch.yaml
index 131a314..f5acba0 100644
--- a/charts/kubeflow/apps/profiles/upstream/default/manager_auth_proxy_patch.yaml
+++ b/charts/kubeflow/apps/profiles/upstream/default/manager_auth_proxy_patch.yaml
@@ -10,7 +10,7 @@ spec:
spec:
containers:
- name: kube-rbac-proxy
- image: gcr.io/kubebuilder/kube-rbac-proxy:v0.11.0
+ image: quay.io/brancz/kube-rbac-proxy:v0.11.0
args:
- "--secure-listen-address=0.0.0.0:8443"
- "--upstream=http://127.0.0.1:8080/"
diff --git a/charts/kubeflow/apps/profiles/upstream/manager/manager.yaml b/charts/kubeflow/apps/profiles/upstream/manager/manager.yaml
index 9dcbf47..5c9a4c5 100644
--- a/charts/kubeflow/apps/profiles/upstream/manager/manager.yaml
+++ b/charts/kubeflow/apps/profiles/upstream/manager/manager.yaml
@@ -13,7 +13,7 @@ spec:
replicas: 1
template:
metadata:
- annotations:
+ labels:
sidecar.istio.io/inject: "false"
spec:
containers:
@@ -28,7 +28,7 @@ spec:
envFrom:
- configMapRef:
name: config
- image: docker.io/kubeflownotebookswg/profile-controller
+ image: ghcr.io/kubeflow/kubeflow/profile-controller
imagePullPolicy: IfNotPresent
name: manager
livenessProbe:
diff --git a/charts/kubeflow/apps/profiles/upstream/overlays/kubeflow/kustomization.yaml b/charts/kubeflow/apps/profiles/upstream/overlays/kubeflow/kustomization.yaml
index 1b8fba6..7dc71ba 100644
--- a/charts/kubeflow/apps/profiles/upstream/overlays/kubeflow/kustomization.yaml
+++ b/charts/kubeflow/apps/profiles/upstream/overlays/kubeflow/kustomization.yaml
@@ -27,6 +27,6 @@ vars:
apiVersion: v1
images:
-- name: docker.io/kubeflownotebookswg/kfam
- newName: docker.io/kubeflownotebookswg/kfam
- newTag: v1.9.0
+- name: ghcr.io/kubeflow/kubeflow/kfam
+ newName: ghcr.io/kubeflow/kubeflow/kfam
+ newTag: v1.10.0
diff --git a/charts/kubeflow/apps/profiles/upstream/overlays/kubeflow/patches/kfam.yaml b/charts/kubeflow/apps/profiles/upstream/overlays/kubeflow/patches/kfam.yaml
index 5abcb5a..89419f6 100644
--- a/charts/kubeflow/apps/profiles/upstream/overlays/kubeflow/patches/kfam.yaml
+++ b/charts/kubeflow/apps/profiles/upstream/overlays/kubeflow/patches/kfam.yaml
@@ -5,7 +5,7 @@ metadata:
spec:
template:
metadata:
- annotations:
+ labels:
sidecar.istio.io/inject: "true"
spec:
containers:
@@ -20,7 +20,7 @@ spec:
envFrom:
- configMapRef:
name: config
- image: docker.io/kubeflownotebookswg/kfam
+ image: ghcr.io/kubeflow/kubeflow/kfam
imagePullPolicy: IfNotPresent
name: kfam
livenessProbe:
@@ -33,4 +33,12 @@ spec:
- containerPort: 8081
name: kfam-http
protocol: TCP
+ securityContext:
+ allowPrivilegeEscalation: false
+ seccompProfile:
+ type: RuntimeDefault
+ runAsNonRoot: true
+ capabilities:
+ drop:
+ - ALL
serviceAccountName: controller-service-account
diff --git a/charts/kubeflow/apps/pvcviewer-controller/upstream/base/kustomization.yaml b/charts/kubeflow/apps/pvcviewer-controller/upstream/base/kustomization.yaml
index 259b701..e4c429c 100644
--- a/charts/kubeflow/apps/pvcviewer-controller/upstream/base/kustomization.yaml
+++ b/charts/kubeflow/apps/pvcviewer-controller/upstream/base/kustomization.yaml
@@ -4,6 +4,6 @@ resources:
- ../default
images:
-- name: docker.io/kubeflownotebookswg/pvcviewer-controller
- newName: docker.io/kubeflownotebookswg/pvcviewer-controller
- newTag: v1.9.0
+- name: ghcr.io/kubeflow/kubeflow/pvcviewer-controller
+ newName: ghcr.io/kubeflow/kubeflow/pvcviewer-controller
+ newTag: v1.10.0
diff --git a/charts/kubeflow/apps/pvcviewer-controller/upstream/default/manager_auth_proxy_patch.yaml b/charts/kubeflow/apps/pvcviewer-controller/upstream/default/manager_auth_proxy_patch.yaml
index b751266..95266fa 100644
--- a/charts/kubeflow/apps/pvcviewer-controller/upstream/default/manager_auth_proxy_patch.yaml
+++ b/charts/kubeflow/apps/pvcviewer-controller/upstream/default/manager_auth_proxy_patch.yaml
@@ -31,7 +31,7 @@ spec:
capabilities:
drop:
- "ALL"
- image: gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
+ image: quay.io/brancz/kube-rbac-proxy:v0.13.1
args:
- "--secure-listen-address=0.0.0.0:8443"
- "--upstream=http://127.0.0.1:8080/"
diff --git a/charts/kubeflow/apps/pvcviewer-controller/upstream/manager/manager.yaml b/charts/kubeflow/apps/pvcviewer-controller/upstream/manager/manager.yaml
index 8d9a51b..2da9ea8 100644
--- a/charts/kubeflow/apps/pvcviewer-controller/upstream/manager/manager.yaml
+++ b/charts/kubeflow/apps/pvcviewer-controller/upstream/manager/manager.yaml
@@ -45,7 +45,7 @@ spec:
- /manager
args:
- --leader-elect
- image: docker.io/kubeflownotebookswg/pvcviewer-controller
+ image: ghcr.io/kubeflow/kubeflow/pvcviewer-controller
imagePullPolicy: IfNotPresent
name: manager
securityContext:
diff --git a/charts/kubeflow/apps/spark/OWNERS b/charts/kubeflow/apps/spark/OWNERS
new file mode 100644
index 0000000..0575a0c
--- /dev/null
+++ b/charts/kubeflow/apps/spark/OWNERS
@@ -0,0 +1,5 @@
+approvers:
+ - juliusvonkohout
+reviewers:
+ - juliusvonkohout
+
diff --git a/charts/kubeflow/apps/spark/README.md b/charts/kubeflow/apps/spark/README.md
new file mode 100644
index 0000000..0503b0a
--- /dev/null
+++ b/charts/kubeflow/apps/spark/README.md
@@ -0,0 +1,13 @@
+# Kubeflow Spark Operator
+
+Derived from https://github.com/kubeflow/spark-operator/
+
+## What is Spark Operator?
+
+The Kubernetes Operator for Apache Spark aims to make specifying and running [Spark](https://github.com/apache/spark) applications as easy and idiomatic as running other workloads on Kubernetes. It uses [Kubernetes custom resources](https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/) for specifying, running, and surfacing status of Spark applications.
+
+## Update
+
+Please use the synchronization script in /scripts.
+
+
diff --git a/charts/kubeflow/apps/spark/spark-operator/base/aggregated-roles.yaml b/charts/kubeflow/apps/spark/spark-operator/base/aggregated-roles.yaml
new file mode 100644
index 0000000..5200f3e
--- /dev/null
+++ b/charts/kubeflow/apps/spark/spark-operator/base/aggregated-roles.yaml
@@ -0,0 +1,69 @@
+---
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
+metadata:
+ name: kubeflow-spark-admin
+ labels:
+ app: spark-operator
+ app.kubernetes.io/name: spark-operator
+ rbac.authorization.kubeflow.org/aggregate-to-kubeflow-admin: "true"
+rules: []
+---
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
+metadata:
+ name: kubeflow-spark-edit
+ labels:
+ app: spark-operator
+ app.kubernetes.io/name: spark-operator
+ rbac.authorization.kubeflow.org/aggregate-to-kubeflow-edit: "true"
+ rbac.authorization.kubeflow.org/aggregate-to-kubeflow-admin: "true"
+rules:
+ - apiGroups:
+ - sparkoperator.k8s.io
+ resources:
+ - sparkapplications
+ - scheduledsparkapplications
+ verbs:
+ - create
+ - delete
+ - get
+ - list
+ - patch
+ - update
+ - watch
+ - apiGroups:
+ - sparkoperator.k8s.io
+ resources:
+ - sparkapplications/status
+ - scheduledsparkapplications/status
+ verbs:
+ - get
+---
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
+metadata:
+ name: kubeflow-spark-view
+ labels:
+ app: spark-operator
+ app.kubernetes.io/name: spark-operator
+ rbac.authorization.kubeflow.org/aggregate-to-kubeflow-view: "true"
+rules:
+ - apiGroups:
+ - sparkoperator.k8s.io
+ resources:
+ - sparkapplications
+ - scheduledsparkapplications
+ verbs:
+ - get
+ - list
+ - watch
+ - apiGroups:
+ - sparkoperator.k8s.io
+ resources:
+ - sparkapplications/status
+ - scheduledsparkapplications/status
+ verbs:
+ - get
+---
+
diff --git a/charts/kubeflow/apps/spark/spark-operator/base/kustomization.yaml b/charts/kubeflow/apps/spark/spark-operator/base/kustomization.yaml
new file mode 100644
index 0000000..415602d
--- /dev/null
+++ b/charts/kubeflow/apps/spark/spark-operator/base/kustomization.yaml
@@ -0,0 +1,65 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+kind: Kustomization
+resources:
+- resources.yaml
+- aggregated-roles.yaml
+namespace: kubeflow
+patches:
+ - target:
+ kind: Deployment
+ name: spark-operator-webhook
+ patch: |-
+ - op: add
+ path: /spec/template/spec/containers/0/securityContext
+ value:
+ allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ privileged: false
+ readOnlyRootFilesystem: true
+ runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault # Only this is missing upstream!
+ - target:
+ kind: Deployment
+ name: spark-operator-controller
+ patch: |-
+ - op: add
+ path: /spec/template/spec/containers/0/securityContext
+ value:
+ allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ privileged: false
+ readOnlyRootFilesystem: true
+ runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault # only this is missing upstream!
+ - target:
+ kind: Deployment
+ name: spark-operator-webhook
+ patch: |-
+ apiVersion: apps/v1
+ kind: Deployment
+ metadata:
+ name: spark-operator-webhook
+ spec:
+ template:
+ metadata:
+ labels:
+ sidecar.istio.io/inject: "false"
+ - target:
+ kind: Deployment
+ name: spark-operator-controller
+ patch: |-
+ apiVersion: apps/v1
+ kind: Deployment
+ metadata:
+ name: spark-operator-controller
+ spec:
+ template:
+ metadata:
+ labels:
+ sidecar.istio.io/inject: "false"
diff --git a/charts/kubeflow/apps/spark/spark-operator/base/resources.yaml b/charts/kubeflow/apps/spark/spark-operator/base/resources.yaml
new file mode 100644
index 0000000..9d242b6
--- /dev/null
+++ b/charts/kubeflow/apps/spark/spark-operator/base/resources.yaml
@@ -0,0 +1,25533 @@
+---
+# Source: spark-operator/crds/sparkoperator.k8s.io_scheduledsparkapplications.yaml
+---
+apiVersion: apiextensions.k8s.io/v1
+kind: CustomResourceDefinition
+metadata:
+ annotations:
+ api-approved.kubernetes.io: https://github.com/kubeflow/spark-operator/pull/1298
+ controller-gen.kubebuilder.io/version: v0.17.1
+ name: scheduledsparkapplications.sparkoperator.k8s.io
+spec:
+ group: sparkoperator.k8s.io
+ names:
+ kind: ScheduledSparkApplication
+ listKind: ScheduledSparkApplicationList
+ plural: scheduledsparkapplications
+ shortNames:
+ - scheduledsparkapp
+ singular: scheduledsparkapplication
+ scope: Namespaced
+ versions:
+ - additionalPrinterColumns:
+ - jsonPath: .spec.schedule
+ name: Schedule
+ type: string
+ - jsonPath: .spec.suspend
+ name: Suspend
+ type: string
+ - jsonPath: .status.lastRun
+ name: Last Run
+ type: date
+ - jsonPath: .status.lastRunName
+ name: Last Run Name
+ type: string
+ - jsonPath: .metadata.creationTimestamp
+ name: Age
+ type: date
+ name: v1beta2
+ schema:
+ openAPIV3Schema:
+ description: ScheduledSparkApplication is the Schema for the scheduledsparkapplications
+ API.
+ properties:
+ apiVersion:
+ description: |-
+ APIVersion defines the versioned schema of this representation of an object.
+ Servers should convert recognized schemas to the latest internal value, and
+ may reject unrecognized values.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
+ type: string
+ kind:
+ description: |-
+ Kind is a string value representing the REST resource this object represents.
+ Servers may infer this from the endpoint the client submits requests to.
+ Cannot be updated.
+ In CamelCase.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
+ type: string
+ metadata:
+ type: object
+ spec:
+ description: ScheduledSparkApplicationSpec defines the desired state of
+ ScheduledSparkApplication.
+ properties:
+ concurrencyPolicy:
+ description: ConcurrencyPolicy is the policy governing concurrent
+ SparkApplication runs.
+ type: string
+ failedRunHistoryLimit:
+ description: |-
+ FailedRunHistoryLimit is the number of past failed runs of the application to keep.
+ Defaults to 1.
+ format: int32
+ type: integer
+ schedule:
+ description: Schedule is a cron schedule on which the application
+ should run.
+ type: string
+ successfulRunHistoryLimit:
+ description: |-
+ SuccessfulRunHistoryLimit is the number of past successful runs of the application to keep.
+ Defaults to 1.
+ format: int32
+ type: integer
+ suspend:
+ description: |-
+ Suspend is a flag telling the controller to suspend subsequent runs of the application if set to true.
+ Defaults to false.
+ type: boolean
+ template:
+ description: Template is a template from which SparkApplication instances
+ can be created.
+ properties:
+ arguments:
+ description: Arguments is a list of arguments to be passed to
+ the application.
+ items:
+ type: string
+ type: array
+ batchScheduler:
+ description: BatchScheduler configures which batch scheduler will
+ be used for scheduling
+ type: string
+ batchSchedulerOptions:
+ description: BatchSchedulerOptions provides fine-grained control
+ on how to batch scheduling.
+ properties:
+ priorityClassName:
+ description: PriorityClassName stands for the name of k8s
+ PriorityClass resource, it's being used in Volcano batch
+ scheduler.
+ type: string
+ queue:
+ description: Queue stands for the resource queue which the
+ application belongs to, it's being used in Volcano batch
+ scheduler.
+ type: string
+ resources:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ description: |-
+ Resources stands for the resource list custom request for. Usually it is used to define the lower-bound limit.
+ If specified, volcano scheduler will consider it as the resources requested.
+ type: object
+ type: object
+ deps:
+ description: Deps captures all possible types of dependencies
+ of a Spark application.
+ properties:
+ archives:
+ description: Archives is a list of archives to be extracted
+ into the working directory of each executor.
+ items:
+ type: string
+ type: array
+ excludePackages:
+ description: |-
+ ExcludePackages is a list of "groupId:artifactId", to exclude while resolving the
+ dependencies provided in Packages to avoid dependency conflicts.
+ items:
+ type: string
+ type: array
+ files:
+ description: Files is a list of files the Spark application
+ depends on.
+ items:
+ type: string
+ type: array
+ jars:
+ description: Jars is a list of JAR files the Spark application
+ depends on.
+ items:
+ type: string
+ type: array
+ packages:
+ description: |-
+ Packages is a list of maven coordinates of jars to include on the driver and executor
+ classpaths. This will search the local maven repo, then maven central and any additional
+ remote repositories given by the "repositories" option.
+ Each package should be of the form "groupId:artifactId:version".
+ items:
+ type: string
+ type: array
+ pyFiles:
+ description: PyFiles is a list of Python files the Spark application
+ depends on.
+ items:
+ type: string
+ type: array
+ repositories:
+ description: |-
+ Repositories is a list of additional remote repositories to search for the maven coordinate
+ given with the "packages" option.
+ items:
+ type: string
+ type: array
+ type: object
+ driver:
+ description: Driver is the driver specification.
+ properties:
+ affinity:
+ description: Affinity specifies the affinity/anti-affinity
+ settings for the pod.
+ properties:
+ nodeAffinity:
+ description: Describes node affinity scheduling rules
+ for the pod.
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node matches the corresponding matchExpressions; the
+ node(s) with the highest sum are the most preferred.
+ items:
+ description: |-
+ An empty preferred scheduling term matches all objects with implicit weight 0
+ (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op).
+ properties:
+ preference:
+ description: A node selector term, associated
+ with the corresponding weight.
+ properties:
+ matchExpressions:
+ description: A list of node selector requirements
+ by node's labels.
+ items:
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
+ properties:
+ key:
+ description: The label key that the
+ selector applies to.
+ type: string
+ operator:
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
+ type: string
+ values:
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchFields:
+ description: A list of node selector requirements
+ by node's fields.
+ items:
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
+ properties:
+ key:
+ description: The label key that the
+ selector applies to.
+ type: string
+ operator:
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
+ type: string
+ values:
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ x-kubernetes-map-type: atomic
+ weight:
+ description: Weight associated with matching
+ the corresponding nodeSelectorTerm, in the
+ range 1-100.
+ format: int32
+ type: integer
+ required:
+ - preference
+ - weight
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ If the affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to an update), the system
+ may or may not try to eventually evict the pod from its node.
+ properties:
+ nodeSelectorTerms:
+ description: Required. A list of node selector
+ terms. The terms are ORed.
+ items:
+ description: |-
+ A null or empty node selector term matches no objects. The requirements of
+ them are ANDed.
+ The TopologySelectorTerm type implements a subset of the NodeSelectorTerm.
+ properties:
+ matchExpressions:
+ description: A list of node selector requirements
+ by node's labels.
+ items:
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
+ properties:
+ key:
+ description: The label key that the
+ selector applies to.
+ type: string
+ operator:
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
+ type: string
+ values:
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchFields:
+ description: A list of node selector requirements
+ by node's fields.
+ items:
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
+ properties:
+ key:
+ description: The label key that the
+ selector applies to.
+ type: string
+ operator:
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
+ type: string
+ values:
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ x-kubernetes-map-type: atomic
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - nodeSelectorTerms
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ podAffinity:
+ description: Describes pod affinity scheduling rules (e.g.
+ co-locate this pod in the same node, zone, etc. as some
+ other pod(s)).
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the
+ node(s) with the highest sum are the most preferred.
+ items:
+ description: The weights of all of the matched WeightedPodAffinityTerm
+ fields are added per-node to find the most preferred
+ node(s)
+ properties:
+ podAffinityTerm:
+ description: Required. A pod affinity term,
+ associated with the corresponding weight.
+ properties:
+ labelSelector:
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list
+ of label selector requirements. The
+ requirements are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key is the label
+ key that the selector applies
+ to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both matchLabelKeys and labelSelector.
+ Also, matchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
+ Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list
+ of label selector requirements. The
+ requirements are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key is the label
+ key that the selector applies
+ to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ namespaces:
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
+ type: string
+ required:
+ - topologyKey
+ type: object
+ weight:
+ description: |-
+ weight associated with matching the corresponding podAffinityTerm,
+ in the range 1-100.
+ format: int32
+ type: integer
+ required:
+ - podAffinityTerm
+ - weight
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ If the affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to a pod label update), the
+ system may or may not try to eventually evict the pod from its node.
+ When there are multiple elements, the lists of nodes corresponding to each
+ podAffinityTerm are intersected, i.e. all terms must be satisfied.
+ items:
+ description: |-
+ Defines a set of pods (namely those matching the labelSelector
+ relative to the given namespace(s)) that this pod should be
+ co-located (affinity) or not co-located (anti-affinity) with,
+ where co-located is defined as running on a node whose value of
+ the label with key matches that of any node on which
+ a pod of the set of pods is running
+ properties:
+ labelSelector:
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list
+ of label selector requirements. The requirements
+ are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key is the label key
+ that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both matchLabelKeys and labelSelector.
+ Also, matchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
+ Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list
+ of label selector requirements. The requirements
+ are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key is the label key
+ that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ namespaces:
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
+ type: string
+ required:
+ - topologyKey
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ podAntiAffinity:
+ description: Describes pod anti-affinity scheduling rules
+ (e.g. avoid putting this pod in the same node, zone,
+ etc. as some other pod(s)).
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the anti-affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling anti-affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the
+ node(s) with the highest sum are the most preferred.
+ items:
+ description: The weights of all of the matched WeightedPodAffinityTerm
+ fields are added per-node to find the most preferred
+ node(s)
+ properties:
+ podAffinityTerm:
+ description: Required. A pod affinity term,
+ associated with the corresponding weight.
+ properties:
+ labelSelector:
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list
+ of label selector requirements. The
+ requirements are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key is the label
+ key that the selector applies
+ to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both matchLabelKeys and labelSelector.
+ Also, matchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
+ Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list
+ of label selector requirements. The
+ requirements are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key is the label
+ key that the selector applies
+ to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ namespaces:
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
+ type: string
+ required:
+ - topologyKey
+ type: object
+ weight:
+ description: |-
+ weight associated with matching the corresponding podAffinityTerm,
+ in the range 1-100.
+ format: int32
+ type: integer
+ required:
+ - podAffinityTerm
+ - weight
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ If the anti-affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the anti-affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to a pod label update), the
+ system may or may not try to eventually evict the pod from its node.
+ When there are multiple elements, the lists of nodes corresponding to each
+ podAffinityTerm are intersected, i.e. all terms must be satisfied.
+ items:
+ description: |-
+ Defines a set of pods (namely those matching the labelSelector
+ relative to the given namespace(s)) that this pod should be
+ co-located (affinity) or not co-located (anti-affinity) with,
+ where co-located is defined as running on a node whose value of
+ the label with key matches that of any node on which
+ a pod of the set of pods is running
+ properties:
+ labelSelector:
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list
+ of label selector requirements. The requirements
+ are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key is the label key
+ that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both matchLabelKeys and labelSelector.
+ Also, matchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
+ Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list
+ of label selector requirements. The requirements
+ are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key is the label key
+ that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ namespaces:
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
+ type: string
+ required:
+ - topologyKey
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ type: object
+ annotations:
+ additionalProperties:
+ type: string
+ description: Annotations are the Kubernetes annotations to
+ be added to the pod.
+ type: object
+ configMaps:
+ description: ConfigMaps carries information of other ConfigMaps
+ to add to the pod.
+ items:
+ description: NamePath is a pair of a name and a path to
+ which the named objects should be mounted to.
+ properties:
+ name:
+ type: string
+ path:
+ type: string
+ required:
+ - name
+ - path
+ type: object
+ type: array
+ coreLimit:
+ description: |-
+ CoreLimit specifies a hard limit on CPU cores for the pod.
+ Optional
+ type: string
+ coreRequest:
+ description: |-
+ CoreRequest is the physical CPU core request for the driver.
+ Maps to `spark.kubernetes.driver.request.cores` that is available since Spark 3.0.
+ type: string
+ cores:
+ description: Cores maps to `spark.driver.cores` or `spark.executor.cores`
+ for the driver and executors, respectively.
+ format: int32
+ minimum: 1
+ type: integer
+ dnsConfig:
+ description: DnsConfig dns settings for the pod, following
+ the Kubernetes specifications.
+ properties:
+ nameservers:
+ description: |-
+ A list of DNS name server IP addresses.
+ This will be appended to the base nameservers generated from DNSPolicy.
+ Duplicated nameservers will be removed.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ options:
+ description: |-
+ A list of DNS resolver options.
+ This will be merged with the base options generated from DNSPolicy.
+ Duplicated entries will be removed. Resolution options given in Options
+ will override those that appear in the base DNSPolicy.
+ items:
+ description: PodDNSConfigOption defines DNS resolver
+ options of a pod.
+ properties:
+ name:
+ description: |-
+ Name is this DNS resolver option's name.
+ Required.
+ type: string
+ value:
+ description: Value is this DNS resolver option's
+ value.
+ type: string
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ searches:
+ description: |-
+ A list of DNS search domains for host-name lookup.
+ This will be appended to the base search paths generated from DNSPolicy.
+ Duplicated search paths will be removed.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ env:
+ description: Env carries the environment variables to add
+ to the pod.
+ items:
+ description: EnvVar represents an environment variable present
+ in a Container.
+ properties:
+ name:
+ description: Name of the environment variable. Must
+ be a C_IDENTIFIER.
+ type: string
+ value:
+ description: |-
+ Variable references $(VAR_NAME) are expanded
+ using the previously defined environment variables in the container and
+ any service environment variables. If a variable cannot be resolved,
+ the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e.
+ "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)".
+ Escaped references will never be expanded, regardless of whether the variable
+ exists or not.
+ Defaults to "".
+ type: string
+ valueFrom:
+ description: Source for the environment variable's value.
+ Cannot be used if value is not empty.
+ properties:
+ configMapKeyRef:
+ description: Selects a key of a ConfigMap.
+ properties:
+ key:
+ description: The key to select.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the ConfigMap or
+ its key must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ fieldRef:
+ description: |-
+ Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`,
+ spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.
+ properties:
+ apiVersion:
+ description: Version of the schema the FieldPath
+ is written in terms of, defaults to "v1".
+ type: string
+ fieldPath:
+ description: Path of the field to select in
+ the specified API version.
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ resourceFieldRef:
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported.
+ properties:
+ containerName:
+ description: 'Container name: required for volumes,
+ optional for env vars'
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ description: Specifies the output format of
+ the exposed resources, defaults to "1"
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ description: 'Required: resource to select'
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ secretKeyRef:
+ description: Selects a key of a secret in the pod's
+ namespace
+ properties:
+ key:
+ description: The key of the secret to select
+ from. Must be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its
+ key must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ required:
+ - name
+ type: object
+ type: array
+ envFrom:
+ description: EnvFrom is a list of sources to populate environment
+ variables in the container.
+ items:
+ description: EnvFromSource represents the source of a set
+ of ConfigMaps
+ properties:
+ configMapRef:
+ description: The ConfigMap to select from
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the ConfigMap must
+ be defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ prefix:
+ description: An optional identifier to prepend to each
+ key in the ConfigMap. Must be a C_IDENTIFIER.
+ type: string
+ secretRef:
+ description: The Secret to select from
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret must be
+ defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ type: array
+ envSecretKeyRefs:
+ additionalProperties:
+ description: NameKey represents the name and key of a SecretKeyRef.
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ required:
+ - key
+ - name
+ type: object
+ description: |-
+ EnvSecretKeyRefs holds a mapping from environment variable names to SecretKeyRefs.
+ Deprecated. Consider using `env` instead.
+ type: object
+ envVars:
+ additionalProperties:
+ type: string
+ description: |-
+ EnvVars carries the environment variables to add to the pod.
+ Deprecated. Consider using `env` instead.
+ type: object
+ gpu:
+ description: GPU specifies GPU requirement for the pod.
+ properties:
+ name:
+ description: 'Name is GPU resource name, such as: nvidia.com/gpu
+ or amd.com/gpu'
+ type: string
+ quantity:
+ description: Quantity is the number of GPUs to request
+ for driver or executor.
+ format: int64
+ type: integer
+ required:
+ - name
+ - quantity
+ type: object
+ hostAliases:
+ description: HostAliases settings for the pod, following the
+ Kubernetes specifications.
+ items:
+ description: |-
+ HostAlias holds the mapping between IP and hostnames that will be injected as an entry in the
+ pod's hosts file.
+ properties:
+ hostnames:
+ description: Hostnames for the above IP address.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ ip:
+ description: IP address of the host file entry.
+ type: string
+ required:
+ - ip
+ type: object
+ type: array
+ hostNetwork:
+ description: HostNetwork indicates whether to request host
+ networking for the pod or not.
+ type: boolean
+ image:
+ description: Image is the container image to use. Overrides
+ Spec.Image if set.
+ type: string
+ initContainers:
+ description: InitContainers is a list of init-containers that
+ run to completion before the main Spark container.
+ items:
+ description: A single application container that you want
+ to run within a pod.
+ properties:
+ args:
+ description: |-
+ Arguments to the entrypoint.
+ The container image's CMD is used if this is not provided.
+ Variable references $(VAR_NAME) are expanded using the container's environment. If a variable
+ cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will
+ produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless
+ of whether the variable exists or not. Cannot be updated.
+ More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ command:
+ description: |-
+ Entrypoint array. Not executed within a shell.
+ The container image's ENTRYPOINT is used if this is not provided.
+ Variable references $(VAR_NAME) are expanded using the container's environment. If a variable
+ cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will
+ produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless
+ of whether the variable exists or not. Cannot be updated.
+ More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ env:
+ description: |-
+ List of environment variables to set in the container.
+ Cannot be updated.
+ items:
+ description: EnvVar represents an environment variable
+ present in a Container.
+ properties:
+ name:
+ description: Name of the environment variable.
+ Must be a C_IDENTIFIER.
+ type: string
+ value:
+ description: |-
+ Variable references $(VAR_NAME) are expanded
+ using the previously defined environment variables in the container and
+ any service environment variables. If a variable cannot be resolved,
+ the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e.
+ "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)".
+ Escaped references will never be expanded, regardless of whether the variable
+ exists or not.
+ Defaults to "".
+ type: string
+ valueFrom:
+ description: Source for the environment variable's
+ value. Cannot be used if value is not empty.
+ properties:
+ configMapKeyRef:
+ description: Selects a key of a ConfigMap.
+ properties:
+ key:
+ description: The key to select.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the ConfigMap
+ or its key must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ fieldRef:
+ description: |-
+ Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`,
+ spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.
+ properties:
+ apiVersion:
+ description: Version of the schema the
+ FieldPath is written in terms of, defaults
+ to "v1".
+ type: string
+ fieldPath:
+ description: Path of the field to select
+ in the specified API version.
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ resourceFieldRef:
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported.
+ properties:
+ containerName:
+ description: 'Container name: required
+ for volumes, optional for env vars'
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ description: Specifies the output format
+ of the exposed resources, defaults to
+ "1"
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ description: 'Required: resource to select'
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ secretKeyRef:
+ description: Selects a key of a secret in
+ the pod's namespace
+ properties:
+ key:
+ description: The key of the secret to
+ select from. Must be a valid secret
+ key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret
+ or its key must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ envFrom:
+ description: |-
+ List of sources to populate environment variables in the container.
+ The keys defined within a source must be a C_IDENTIFIER. All invalid keys
+ will be reported as an event when the container is starting. When a key exists in multiple
+ sources, the value associated with the last source will take precedence.
+ Values defined by an Env with a duplicate key will take precedence.
+ Cannot be updated.
+ items:
+ description: EnvFromSource represents the source of
+ a set of ConfigMaps
+ properties:
+ configMapRef:
+ description: The ConfigMap to select from
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the ConfigMap
+ must be defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ prefix:
+ description: An optional identifier to prepend
+ to each key in the ConfigMap. Must be a C_IDENTIFIER.
+ type: string
+ secretRef:
+ description: The Secret to select from
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret must
+ be defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ image:
+ description: |-
+ Container image name.
+ More info: https://kubernetes.io/docs/concepts/containers/images
+ This field is optional to allow higher level config management to default or override
+ container images in workload controllers like Deployments and StatefulSets.
+ type: string
+ imagePullPolicy:
+ description: |-
+ Image pull policy.
+ One of Always, Never, IfNotPresent.
+ Defaults to Always if :latest tag is specified, or IfNotPresent otherwise.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/containers/images#updating-images
+ type: string
+ lifecycle:
+ description: |-
+ Actions that the management system should take in response to container lifecycle events.
+ Cannot be updated.
+ properties:
+ postStart:
+ description: |-
+ PostStart is called immediately after a container is created. If the handler fails,
+ the container is terminated and restarted according to its restart policy.
+ Other management of the container blocks until the hook completes.
+ More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
+ properties:
+ exec:
+ description: Exec specifies a command to execute
+ in the container.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ description: HTTPGet specifies an HTTP GET request
+ to perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers to set in the
+ request. HTTP allows repeated headers.
+ items:
+ description: HTTPHeader describes a custom
+ header to be used in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access on the HTTP
+ server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ description: Sleep represents a duration that
+ the container should sleep.
+ properties:
+ seconds:
+ description: Seconds is the number of seconds
+ to sleep.
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ description: |-
+ Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept
+ for backward compatibility. There is no validation of this field and
+ lifecycle hooks will fail at runtime when it is specified.
+ properties:
+ host:
+ description: 'Optional: Host name to connect
+ to, defaults to the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ preStop:
+ description: |-
+ PreStop is called immediately before a container is terminated due to an
+ API request or management event such as liveness/startup probe failure,
+ preemption, resource contention, etc. The handler is not called if the
+ container crashes or exits. The Pod's termination grace period countdown begins before the
+ PreStop hook is executed. Regardless of the outcome of the handler, the
+ container will eventually terminate within the Pod's termination grace
+ period (unless delayed by finalizers). Other management of the container blocks until the hook completes
+ or until the termination grace period is reached.
+ More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
+ properties:
+ exec:
+ description: Exec specifies a command to execute
+ in the container.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ description: HTTPGet specifies an HTTP GET request
+ to perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers to set in the
+ request. HTTP allows repeated headers.
+ items:
+ description: HTTPHeader describes a custom
+ header to be used in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access on the HTTP
+ server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ description: Sleep represents a duration that
+ the container should sleep.
+ properties:
+ seconds:
+ description: Seconds is the number of seconds
+ to sleep.
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ description: |-
+ Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept
+ for backward compatibility. There is no validation of this field and
+ lifecycle hooks will fail at runtime when it is specified.
+ properties:
+ host:
+ description: 'Optional: Host name to connect
+ to, defaults to the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ type: object
+ livenessProbe:
+ description: |-
+ Periodic probe of container liveness.
+ Container will be restarted if the probe fails.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ properties:
+ exec:
+ description: Exec specifies a command to execute
+ in the container.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
+ format: int32
+ type: integer
+ grpc:
+ description: GRPC specifies a GRPC HealthCheckRequest.
+ properties:
+ port:
+ description: Port number of the gRPC service.
+ Number must be in the range 1 to 65535.
+ format: int32
+ type: integer
+ service:
+ default: ""
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
+ (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
+
+ If this is not specified, the default behavior is defined by gRPC.
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ description: HTTPGet specifies an HTTP GET request
+ to perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers to set in the request.
+ HTTP allows repeated headers.
+ items:
+ description: HTTPHeader describes a custom
+ header to be used in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ periodSeconds:
+ description: |-
+ How often (in seconds) to perform the probe.
+ Default to 10 seconds. Minimum value is 1.
+ format: int32
+ type: integer
+ successThreshold:
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
+ format: int32
+ type: integer
+ tcpSocket:
+ description: TCPSocket specifies a connection to
+ a TCP port.
+ properties:
+ host:
+ description: 'Optional: Host name to connect
+ to, defaults to the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
+ format: int64
+ type: integer
+ timeoutSeconds:
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ type: object
+ name:
+ description: |-
+ Name of the container specified as a DNS_LABEL.
+ Each container in a pod must have a unique name (DNS_LABEL).
+ Cannot be updated.
+ type: string
+ ports:
+ description: |-
+ List of ports to expose from the container. Not specifying a port here
+ DOES NOT prevent that port from being exposed. Any port which is
+ listening on the default "0.0.0.0" address inside a container will be
+ accessible from the network.
+ Modifying this array with strategic merge patch may corrupt the data.
+ For more information See https://github.com/kubernetes/kubernetes/issues/108255.
+ Cannot be updated.
+ items:
+ description: ContainerPort represents a network port
+ in a single container.
+ properties:
+ containerPort:
+ description: |-
+ Number of port to expose on the pod's IP address.
+ This must be a valid port number, 0 < x < 65536.
+ format: int32
+ type: integer
+ hostIP:
+ description: What host IP to bind the external
+ port to.
+ type: string
+ hostPort:
+ description: |-
+ Number of port to expose on the host.
+ If specified, this must be a valid port number, 0 < x < 65536.
+ If HostNetwork is specified, this must match ContainerPort.
+ Most containers do not need this.
+ format: int32
+ type: integer
+ name:
+ description: |-
+ If specified, this must be an IANA_SVC_NAME and unique within the pod. Each
+ named port in a pod must have a unique name. Name for the port that can be
+ referred to by services.
+ type: string
+ protocol:
+ default: TCP
+ description: |-
+ Protocol for port. Must be UDP, TCP, or SCTP.
+ Defaults to "TCP".
+ type: string
+ required:
+ - containerPort
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - containerPort
+ - protocol
+ x-kubernetes-list-type: map
+ readinessProbe:
+ description: |-
+ Periodic probe of container service readiness.
+ Container will be removed from service endpoints if the probe fails.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ properties:
+ exec:
+ description: Exec specifies a command to execute
+ in the container.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
+ format: int32
+ type: integer
+ grpc:
+ description: GRPC specifies a GRPC HealthCheckRequest.
+ properties:
+ port:
+ description: Port number of the gRPC service.
+ Number must be in the range 1 to 65535.
+ format: int32
+ type: integer
+ service:
+ default: ""
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
+ (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
+
+ If this is not specified, the default behavior is defined by gRPC.
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ description: HTTPGet specifies an HTTP GET request
+ to perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers to set in the request.
+ HTTP allows repeated headers.
+ items:
+ description: HTTPHeader describes a custom
+ header to be used in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ periodSeconds:
+ description: |-
+ How often (in seconds) to perform the probe.
+ Default to 10 seconds. Minimum value is 1.
+ format: int32
+ type: integer
+ successThreshold:
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
+ format: int32
+ type: integer
+ tcpSocket:
+ description: TCPSocket specifies a connection to
+ a TCP port.
+ properties:
+ host:
+ description: 'Optional: Host name to connect
+ to, defaults to the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
+ format: int64
+ type: integer
+ timeoutSeconds:
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ type: object
+ resizePolicy:
+ description: Resources resize policy for the container.
+ items:
+ description: ContainerResizePolicy represents resource
+ resize policy for the container.
+ properties:
+ resourceName:
+ description: |-
+ Name of the resource to which this resource resize policy applies.
+ Supported values: cpu, memory.
+ type: string
+ restartPolicy:
+ description: |-
+ Restart policy to apply when specified resource is resized.
+ If not specified, it defaults to NotRequired.
+ type: string
+ required:
+ - resourceName
+ - restartPolicy
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ resources:
+ description: |-
+ Compute Resources required by this container.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ properties:
+ claims:
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+ This field is immutable. It can only be set for containers.
+ items:
+ description: ResourceClaim references one entry
+ in PodSpec.ResourceClaims.
+ properties:
+ name:
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
+ type: string
+ request:
+ description: |-
+ Request is the name chosen for a request in the referenced claim.
+ If empty, everything from the claim is made available, otherwise
+ only the result of this request.
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ limits:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ type: object
+ requests:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ type: object
+ type: object
+ restartPolicy:
+ description: |-
+ RestartPolicy defines the restart behavior of individual containers in a pod.
+ This field may only be set for init containers, and the only allowed value is "Always".
+ For non-init containers or when this field is not specified,
+ the restart behavior is defined by the Pod's restart policy and the container type.
+ Setting the RestartPolicy as "Always" for the init container will have the following effect:
+ this init container will be continually restarted on
+ exit until all regular containers have terminated. Once all regular
+ containers have completed, all init containers with restartPolicy "Always"
+ will be shut down. This lifecycle differs from normal init containers and
+ is often referred to as a "sidecar" container. Although this init
+ container still starts in the init container sequence, it does not wait
+ for the container to complete before proceeding to the next init
+ container. Instead, the next init container starts immediately after this
+ init container is started, or after any startupProbe has successfully
+ completed.
+ type: string
+ securityContext:
+ description: |-
+ SecurityContext defines the security options the container should be run with.
+ If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext.
+ More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
+ properties:
+ allowPrivilegeEscalation:
+ description: |-
+ AllowPrivilegeEscalation controls whether a process can gain more
+ privileges than its parent process. This bool directly controls if
+ the no_new_privs flag will be set on the container process.
+ AllowPrivilegeEscalation is true always when the container is:
+ 1) run as Privileged
+ 2) has CAP_SYS_ADMIN
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ appArmorProfile:
+ description: |-
+ appArmorProfile is the AppArmor options to use by this container. If set, this profile
+ overrides the pod's appArmorProfile.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile loaded on the node that should be used.
+ The profile must be preconfigured on the node to work.
+ Must match the loaded name of the profile.
+ Must be set if and only if type is "Localhost".
+ type: string
+ type:
+ description: |-
+ type indicates which kind of AppArmor profile will be applied.
+ Valid options are:
+ Localhost - a profile pre-loaded on the node.
+ RuntimeDefault - the container runtime's default profile.
+ Unconfined - no AppArmor enforcement.
+ type: string
+ required:
+ - type
+ type: object
+ capabilities:
+ description: |-
+ The capabilities to add/drop when running containers.
+ Defaults to the default set of capabilities granted by the container runtime.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ add:
+ description: Added capabilities
+ items:
+ description: Capability represent POSIX capabilities
+ type
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ drop:
+ description: Removed capabilities
+ items:
+ description: Capability represent POSIX capabilities
+ type
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ privileged:
+ description: |-
+ Run container in privileged mode.
+ Processes in privileged containers are essentially equivalent to root on the host.
+ Defaults to false.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ procMount:
+ description: |-
+ procMount denotes the type of proc mount to use for the containers.
+ The default value is Default which uses the container runtime defaults for
+ readonly paths and masked paths.
+ This requires the ProcMountType feature flag to be enabled.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: string
+ readOnlyRootFilesystem:
+ description: |-
+ Whether this container has a read-only root filesystem.
+ Default is false.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ runAsGroup:
+ description: |-
+ The GID to run the entrypoint of the container process.
+ Uses runtime default if unset.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ runAsNonRoot:
+ description: |-
+ Indicates that the container must run as a non-root user.
+ If true, the Kubelet will validate the image at runtime to ensure that it
+ does not run as UID 0 (root) and fail to start the container if it does.
+ If unset or false, no such validation will be performed.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: boolean
+ runAsUser:
+ description: |-
+ The UID to run the entrypoint of the container process.
+ Defaults to user specified in image metadata if unspecified.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ seLinuxOptions:
+ description: |-
+ The SELinux context to be applied to the container.
+ If unspecified, the container runtime will allocate a random SELinux context for each
+ container. May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ level:
+ description: Level is SELinux level label that
+ applies to the container.
+ type: string
+ role:
+ description: Role is a SELinux role label that
+ applies to the container.
+ type: string
+ type:
+ description: Type is a SELinux type label that
+ applies to the container.
+ type: string
+ user:
+ description: User is a SELinux user label that
+ applies to the container.
+ type: string
+ type: object
+ seccompProfile:
+ description: |-
+ The seccomp options to use by this container. If seccomp options are
+ provided at both the pod & container level, the container options
+ override the pod options.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile defined in a file on the node should be used.
+ The profile must be preconfigured on the node to work.
+ Must be a descending path, relative to the kubelet's configured seccomp profile location.
+ Must be set if type is "Localhost". Must NOT be set for any other type.
+ type: string
+ type:
+ description: |-
+ type indicates which kind of seccomp profile will be applied.
+ Valid options are:
+
+ Localhost - a profile defined in a file on the node should be used.
+ RuntimeDefault - the container runtime default profile should be used.
+ Unconfined - no profile should be applied.
+ type: string
+ required:
+ - type
+ type: object
+ windowsOptions:
+ description: |-
+ The Windows specific settings applied to all containers.
+ If unspecified, the options from the PodSecurityContext will be used.
+ If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is linux.
+ properties:
+ gmsaCredentialSpec:
+ description: |-
+ GMSACredentialSpec is where the GMSA admission webhook
+ (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the
+ GMSA credential spec named by the GMSACredentialSpecName field.
+ type: string
+ gmsaCredentialSpecName:
+ description: GMSACredentialSpecName is the name
+ of the GMSA credential spec to use.
+ type: string
+ hostProcess:
+ description: |-
+ HostProcess determines if a container should be run as a 'Host Process' container.
+ All of a Pod's containers must have the same effective HostProcess value
+ (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers).
+ In addition, if HostProcess is true then HostNetwork must also be set to true.
+ type: boolean
+ runAsUserName:
+ description: |-
+ The UserName in Windows to run the entrypoint of the container process.
+ Defaults to the user specified in image metadata if unspecified.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: string
+ type: object
+ type: object
+ startupProbe:
+ description: |-
+ 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: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ properties:
+ exec:
+ description: Exec specifies a command to execute
+ in the container.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
+ format: int32
+ type: integer
+ grpc:
+ description: GRPC specifies a GRPC HealthCheckRequest.
+ properties:
+ port:
+ description: Port number of the gRPC service.
+ Number must be in the range 1 to 65535.
+ format: int32
+ type: integer
+ service:
+ default: ""
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
+ (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
+
+ If this is not specified, the default behavior is defined by gRPC.
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ description: HTTPGet specifies an HTTP GET request
+ to perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers to set in the request.
+ HTTP allows repeated headers.
+ items:
+ description: HTTPHeader describes a custom
+ header to be used in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ periodSeconds:
+ description: |-
+ How often (in seconds) to perform the probe.
+ Default to 10 seconds. Minimum value is 1.
+ format: int32
+ type: integer
+ successThreshold:
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
+ format: int32
+ type: integer
+ tcpSocket:
+ description: TCPSocket specifies a connection to
+ a TCP port.
+ properties:
+ host:
+ description: 'Optional: Host name to connect
+ to, defaults to the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
+ format: int64
+ type: integer
+ timeoutSeconds:
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ type: object
+ stdin:
+ description: |-
+ Whether this container should allocate a buffer for stdin in the container runtime. If this
+ is not set, reads from stdin in the container will always result in EOF.
+ Default is false.
+ type: boolean
+ stdinOnce:
+ description: |-
+ Whether the container runtime should close the stdin channel after it has been opened by
+ a single attach. When stdin is true the stdin stream will remain open across multiple attach
+ sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the
+ first client attaches to stdin, and then remains open and accepts data until the client disconnects,
+ at which time stdin is closed and remains closed until the container is restarted. If this
+ flag is false, a container processes that reads from stdin will never receive an EOF.
+ Default is false
+ type: boolean
+ terminationMessagePath:
+ description: |-
+ Optional: Path at which the file to which the container's termination message
+ will be written is mounted into the container's filesystem.
+ Message written is intended to be brief final status, such as an assertion failure message.
+ Will be truncated by the node if greater than 4096 bytes. The total message length across
+ all containers will be limited to 12kb.
+ Defaults to /dev/termination-log.
+ Cannot be updated.
+ type: string
+ terminationMessagePolicy:
+ description: |-
+ Indicate how the termination message should be populated. File will use the contents of
+ terminationMessagePath to populate the container status message on both success and failure.
+ FallbackToLogsOnError will use the last chunk of container log output if the termination
+ message file is empty and the container exited with an error.
+ The log output is limited to 2048 bytes or 80 lines, whichever is smaller.
+ Defaults to File.
+ Cannot be updated.
+ type: string
+ tty:
+ description: |-
+ Whether this container should allocate a TTY for itself, also requires 'stdin' to be true.
+ Default is false.
+ type: boolean
+ volumeDevices:
+ description: volumeDevices is the list of block devices
+ to be used by the container.
+ items:
+ description: volumeDevice describes a mapping of a
+ raw block device within a container.
+ properties:
+ devicePath:
+ description: devicePath is the path inside of
+ the container that the device will be mapped
+ to.
+ type: string
+ name:
+ description: name must match the name of a persistentVolumeClaim
+ in the pod
+ type: string
+ required:
+ - devicePath
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
+ volumeMounts:
+ description: |-
+ Pod volumes to mount into the container's filesystem.
+ Cannot be updated.
+ items:
+ description: VolumeMount describes a mounting of a
+ Volume within a container.
+ properties:
+ mountPath:
+ description: |-
+ Path within the container at which the volume should be mounted. Must
+ not contain ':'.
+ type: string
+ mountPropagation:
+ description: |-
+ mountPropagation determines how mounts are propagated from the host
+ to container and the other way around.
+ When not set, MountPropagationNone is used.
+ This field is beta in 1.10.
+ When RecursiveReadOnly is set to IfPossible or to Enabled, MountPropagation must be None or unspecified
+ (which defaults to None).
+ type: string
+ name:
+ description: This must match the Name of a Volume.
+ type: string
+ readOnly:
+ description: |-
+ Mounted read-only if true, read-write otherwise (false or unspecified).
+ Defaults to false.
+ type: boolean
+ recursiveReadOnly:
+ description: |-
+ RecursiveReadOnly specifies whether read-only mounts should be handled
+ recursively.
+
+ If ReadOnly is false, this field has no meaning and must be unspecified.
+
+ If ReadOnly is true, and this field is set to Disabled, the mount is not made
+ recursively read-only. If this field is set to IfPossible, the mount is made
+ recursively read-only, if it is supported by the container runtime. If this
+ field is set to Enabled, the mount is made recursively read-only if it is
+ supported by the container runtime, otherwise the pod will not be started and
+ an error will be generated to indicate the reason.
+
+ If this field is set to IfPossible or Enabled, MountPropagation must be set to
+ None (or be unspecified, which defaults to None).
+
+ If this field is not specified, it is treated as an equivalent of Disabled.
+ type: string
+ subPath:
+ description: |-
+ Path within the volume from which the container's volume should be mounted.
+ Defaults to "" (volume's root).
+ type: string
+ subPathExpr:
+ description: |-
+ Expanded path within the volume from which the container's volume should be mounted.
+ Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.
+ Defaults to "" (volume's root).
+ SubPathExpr and SubPath are mutually exclusive.
+ type: string
+ required:
+ - mountPath
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
+ workingDir:
+ description: |-
+ Container's working directory.
+ If not specified, the container runtime's default will be used, which
+ might be configured in the container image.
+ Cannot be updated.
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ javaOptions:
+ description: |-
+ JavaOptions is a string of extra JVM options to pass to the driver. For instance,
+ GC settings or other logging.
+ type: string
+ kubernetesMaster:
+ description: |-
+ KubernetesMaster is the URL of the Kubernetes master used by the driver to manage executor pods and
+ other Kubernetes resources. Default to https://kubernetes.default.svc.
+ type: string
+ labels:
+ additionalProperties:
+ type: string
+ description: Labels are the Kubernetes labels to be added
+ to the pod.
+ type: object
+ lifecycle:
+ description: Lifecycle for running preStop or postStart commands
+ properties:
+ postStart:
+ description: |-
+ PostStart is called immediately after a container is created. If the handler fails,
+ the container is terminated and restarted according to its restart policy.
+ Other management of the container blocks until the hook completes.
+ More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
+ properties:
+ exec:
+ description: Exec specifies a command to execute in
+ the container.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ description: HTTPGet specifies an HTTP GET request
+ to perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers to set in the request.
+ HTTP allows repeated headers.
+ items:
+ description: HTTPHeader describes a custom header
+ to be used in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ description: Sleep represents a duration that the
+ container should sleep.
+ properties:
+ seconds:
+ description: Seconds is the number of seconds
+ to sleep.
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ description: |-
+ Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept
+ for backward compatibility. There is no validation of this field and
+ lifecycle hooks will fail at runtime when it is specified.
+ properties:
+ host:
+ description: 'Optional: Host name to connect to,
+ defaults to the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ preStop:
+ description: |-
+ PreStop is called immediately before a container is terminated due to an
+ API request or management event such as liveness/startup probe failure,
+ preemption, resource contention, etc. The handler is not called if the
+ container crashes or exits. The Pod's termination grace period countdown begins before the
+ PreStop hook is executed. Regardless of the outcome of the handler, the
+ container will eventually terminate within the Pod's termination grace
+ period (unless delayed by finalizers). Other management of the container blocks until the hook completes
+ or until the termination grace period is reached.
+ More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
+ properties:
+ exec:
+ description: Exec specifies a command to execute in
+ the container.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ description: HTTPGet specifies an HTTP GET request
+ to perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers to set in the request.
+ HTTP allows repeated headers.
+ items:
+ description: HTTPHeader describes a custom header
+ to be used in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ description: Sleep represents a duration that the
+ container should sleep.
+ properties:
+ seconds:
+ description: Seconds is the number of seconds
+ to sleep.
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ description: |-
+ Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept
+ for backward compatibility. There is no validation of this field and
+ lifecycle hooks will fail at runtime when it is specified.
+ properties:
+ host:
+ description: 'Optional: Host name to connect to,
+ defaults to the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ type: object
+ memory:
+ description: Memory is the amount of memory to request for
+ the pod.
+ type: string
+ memoryOverhead:
+ description: MemoryOverhead is the amount of off-heap memory
+ to allocate in cluster mode, in MiB unless otherwise specified.
+ type: string
+ nodeSelector:
+ additionalProperties:
+ type: string
+ description: |-
+ NodeSelector is the Kubernetes node selector to be added to the driver and executor pods.
+ This field is mutually exclusive with nodeSelector at SparkApplication level (which will be deprecated).
+ type: object
+ podName:
+ description: |-
+ PodName is the name of the driver pod that the user creates. This is used for the
+ in-cluster client mode in which the user creates a client pod where the driver of
+ the user application runs. It's an error to set this field if Mode is not
+ in-cluster-client.
+ pattern: '[a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*'
+ type: string
+ podSecurityContext:
+ description: PodSecurityContext specifies the PodSecurityContext
+ to apply.
+ properties:
+ appArmorProfile:
+ description: |-
+ appArmorProfile is the AppArmor options to use by the containers in this pod.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile loaded on the node that should be used.
+ The profile must be preconfigured on the node to work.
+ Must match the loaded name of the profile.
+ Must be set if and only if type is "Localhost".
+ type: string
+ type:
+ description: |-
+ type indicates which kind of AppArmor profile will be applied.
+ Valid options are:
+ Localhost - a profile pre-loaded on the node.
+ RuntimeDefault - the container runtime's default profile.
+ Unconfined - no AppArmor enforcement.
+ type: string
+ required:
+ - type
+ type: object
+ fsGroup:
+ description: |-
+ A special supplemental group that applies to all containers in a pod.
+ Some volume types allow the Kubelet to change the ownership of that volume
+ to be owned by the pod:
+
+ 1. The owning GID will be the FSGroup
+ 2. The setgid bit is set (new files created in the volume will be owned by FSGroup)
+ 3. The permission bits are OR'd with rw-rw----
+
+ If unset, the Kubelet will not modify the ownership and permissions of any volume.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ fsGroupChangePolicy:
+ description: |-
+ fsGroupChangePolicy defines behavior of changing ownership and permission of the volume
+ before being exposed inside Pod. This field will only apply to
+ volume types which support fsGroup based ownership(and permissions).
+ It will have no effect on ephemeral volume types such as: secret, configmaps
+ and emptydir.
+ Valid values are "OnRootMismatch" and "Always". If not specified, "Always" is used.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: string
+ runAsGroup:
+ description: |-
+ The GID to run the entrypoint of the container process.
+ Uses runtime default if unset.
+ May also be set in SecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence
+ for that container.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ runAsNonRoot:
+ description: |-
+ Indicates that the container must run as a non-root user.
+ If true, the Kubelet will validate the image at runtime to ensure that it
+ does not run as UID 0 (root) and fail to start the container if it does.
+ If unset or false, no such validation will be performed.
+ May also be set in SecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: boolean
+ runAsUser:
+ description: |-
+ The UID to run the entrypoint of the container process.
+ Defaults to user specified in image metadata if unspecified.
+ May also be set in SecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence
+ for that container.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ seLinuxChangePolicy:
+ description: |-
+ seLinuxChangePolicy defines how the container's SELinux label is applied to all volumes used by the Pod.
+ It has no effect on nodes that do not support SELinux or to volumes does not support SELinux.
+ Valid values are "MountOption" and "Recursive".
+
+ "Recursive" means relabeling of all files on all Pod volumes by the container runtime.
+ This may be slow for large volumes, but allows mixing privileged and unprivileged Pods sharing the same volume on the same node.
+
+ "MountOption" mounts all eligible Pod volumes with `-o context` mount option.
+ This requires all Pods that share the same volume to use the same SELinux label.
+ It is not possible to share the same volume among privileged and unprivileged Pods.
+ Eligible volumes are in-tree FibreChannel and iSCSI volumes, and all CSI volumes
+ whose CSI driver announces SELinux support by setting spec.seLinuxMount: true in their
+ CSIDriver instance. Other volumes are always re-labelled recursively.
+ "MountOption" value is allowed only when SELinuxMount feature gate is enabled.
+
+ If not specified and SELinuxMount feature gate is enabled, "MountOption" is used.
+ If not specified and SELinuxMount feature gate is disabled, "MountOption" is used for ReadWriteOncePod volumes
+ and "Recursive" for all other volumes.
+
+ This field affects only Pods that have SELinux label set, either in PodSecurityContext or in SecurityContext of all containers.
+
+ All Pods that use the same volume should use the same seLinuxChangePolicy, otherwise some pods can get stuck in ContainerCreating state.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: string
+ seLinuxOptions:
+ description: |-
+ The SELinux context to be applied to all containers.
+ If unspecified, the container runtime will allocate a random SELinux context for each
+ container. May also be set in SecurityContext. If set in
+ both SecurityContext and PodSecurityContext, the value specified in SecurityContext
+ takes precedence for that container.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ level:
+ description: Level is SELinux level label that applies
+ to the container.
+ type: string
+ role:
+ description: Role is a SELinux role label that applies
+ to the container.
+ type: string
+ type:
+ description: Type is a SELinux type label that applies
+ to the container.
+ type: string
+ user:
+ description: User is a SELinux user label that applies
+ to the container.
+ type: string
+ type: object
+ seccompProfile:
+ description: |-
+ The seccomp options to use by the containers in this pod.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile defined in a file on the node should be used.
+ The profile must be preconfigured on the node to work.
+ Must be a descending path, relative to the kubelet's configured seccomp profile location.
+ Must be set if type is "Localhost". Must NOT be set for any other type.
+ type: string
+ type:
+ description: |-
+ type indicates which kind of seccomp profile will be applied.
+ Valid options are:
+
+ Localhost - a profile defined in a file on the node should be used.
+ RuntimeDefault - the container runtime default profile should be used.
+ Unconfined - no profile should be applied.
+ type: string
+ required:
+ - type
+ type: object
+ supplementalGroups:
+ description: |-
+ A list of groups applied to the first process run in each container, in
+ addition to the container's primary GID and fsGroup (if specified). If
+ the SupplementalGroupsPolicy feature is enabled, the
+ supplementalGroupsPolicy field determines whether these are in addition
+ to or instead of any group memberships defined in the container image.
+ If unspecified, no additional groups are added, though group memberships
+ defined in the container image may still be used, depending on the
+ supplementalGroupsPolicy field.
+ Note that this field cannot be set when spec.os.name is windows.
+ items:
+ format: int64
+ type: integer
+ type: array
+ x-kubernetes-list-type: atomic
+ supplementalGroupsPolicy:
+ description: |-
+ Defines how supplemental groups of the first container processes are calculated.
+ Valid values are "Merge" and "Strict". If not specified, "Merge" is used.
+ (Alpha) Using the field requires the SupplementalGroupsPolicy feature gate to be enabled
+ and the container runtime must implement support for this feature.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: string
+ sysctls:
+ description: |-
+ Sysctls hold a list of namespaced sysctls used for the pod. Pods with unsupported
+ sysctls (by the container runtime) might fail to launch.
+ Note that this field cannot be set when spec.os.name is windows.
+ items:
+ description: Sysctl defines a kernel parameter to be
+ set
+ properties:
+ name:
+ description: Name of a property to set
+ type: string
+ value:
+ description: Value of a property to set
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ windowsOptions:
+ description: |-
+ The Windows specific settings applied to all containers.
+ If unspecified, the options within a container's SecurityContext will be used.
+ If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is linux.
+ properties:
+ gmsaCredentialSpec:
+ description: |-
+ GMSACredentialSpec is where the GMSA admission webhook
+ (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the
+ GMSA credential spec named by the GMSACredentialSpecName field.
+ type: string
+ gmsaCredentialSpecName:
+ description: GMSACredentialSpecName is the name of
+ the GMSA credential spec to use.
+ type: string
+ hostProcess:
+ description: |-
+ HostProcess determines if a container should be run as a 'Host Process' container.
+ All of a Pod's containers must have the same effective HostProcess value
+ (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers).
+ In addition, if HostProcess is true then HostNetwork must also be set to true.
+ type: boolean
+ runAsUserName:
+ description: |-
+ The UserName in Windows to run the entrypoint of the container process.
+ Defaults to the user specified in image metadata if unspecified.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: string
+ type: object
+ type: object
+ ports:
+ description: Ports settings for the pods, following the Kubernetes
+ specifications.
+ items:
+ description: Port represents the port definition in the
+ pods objects.
+ properties:
+ containerPort:
+ format: int32
+ type: integer
+ name:
+ type: string
+ protocol:
+ type: string
+ required:
+ - containerPort
+ - name
+ - protocol
+ type: object
+ type: array
+ priorityClassName:
+ description: PriorityClassName is the name of the PriorityClass
+ for the driver pod.
+ type: string
+ schedulerName:
+ description: SchedulerName specifies the scheduler that will
+ be used for scheduling
+ type: string
+ secrets:
+ description: Secrets carries information of secrets to add
+ to the pod.
+ items:
+ description: SecretInfo captures information of a secret.
+ properties:
+ name:
+ type: string
+ path:
+ type: string
+ secretType:
+ description: SecretType tells the type of a secret.
+ type: string
+ required:
+ - name
+ - path
+ - secretType
+ type: object
+ type: array
+ securityContext:
+ description: SecurityContext specifies the container's SecurityContext
+ to apply.
+ properties:
+ allowPrivilegeEscalation:
+ description: |-
+ AllowPrivilegeEscalation controls whether a process can gain more
+ privileges than its parent process. This bool directly controls if
+ the no_new_privs flag will be set on the container process.
+ AllowPrivilegeEscalation is true always when the container is:
+ 1) run as Privileged
+ 2) has CAP_SYS_ADMIN
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ appArmorProfile:
+ description: |-
+ appArmorProfile is the AppArmor options to use by this container. If set, this profile
+ overrides the pod's appArmorProfile.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile loaded on the node that should be used.
+ The profile must be preconfigured on the node to work.
+ Must match the loaded name of the profile.
+ Must be set if and only if type is "Localhost".
+ type: string
+ type:
+ description: |-
+ type indicates which kind of AppArmor profile will be applied.
+ Valid options are:
+ Localhost - a profile pre-loaded on the node.
+ RuntimeDefault - the container runtime's default profile.
+ Unconfined - no AppArmor enforcement.
+ type: string
+ required:
+ - type
+ type: object
+ capabilities:
+ description: |-
+ The capabilities to add/drop when running containers.
+ Defaults to the default set of capabilities granted by the container runtime.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ add:
+ description: Added capabilities
+ items:
+ description: Capability represent POSIX capabilities
+ type
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ drop:
+ description: Removed capabilities
+ items:
+ description: Capability represent POSIX capabilities
+ type
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ privileged:
+ description: |-
+ Run container in privileged mode.
+ Processes in privileged containers are essentially equivalent to root on the host.
+ Defaults to false.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ procMount:
+ description: |-
+ procMount denotes the type of proc mount to use for the containers.
+ The default value is Default which uses the container runtime defaults for
+ readonly paths and masked paths.
+ This requires the ProcMountType feature flag to be enabled.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: string
+ readOnlyRootFilesystem:
+ description: |-
+ Whether this container has a read-only root filesystem.
+ Default is false.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ runAsGroup:
+ description: |-
+ The GID to run the entrypoint of the container process.
+ Uses runtime default if unset.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ runAsNonRoot:
+ description: |-
+ Indicates that the container must run as a non-root user.
+ If true, the Kubelet will validate the image at runtime to ensure that it
+ does not run as UID 0 (root) and fail to start the container if it does.
+ If unset or false, no such validation will be performed.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: boolean
+ runAsUser:
+ description: |-
+ The UID to run the entrypoint of the container process.
+ Defaults to user specified in image metadata if unspecified.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ seLinuxOptions:
+ description: |-
+ The SELinux context to be applied to the container.
+ If unspecified, the container runtime will allocate a random SELinux context for each
+ container. May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ level:
+ description: Level is SELinux level label that applies
+ to the container.
+ type: string
+ role:
+ description: Role is a SELinux role label that applies
+ to the container.
+ type: string
+ type:
+ description: Type is a SELinux type label that applies
+ to the container.
+ type: string
+ user:
+ description: User is a SELinux user label that applies
+ to the container.
+ type: string
+ type: object
+ seccompProfile:
+ description: |-
+ The seccomp options to use by this container. If seccomp options are
+ provided at both the pod & container level, the container options
+ override the pod options.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile defined in a file on the node should be used.
+ The profile must be preconfigured on the node to work.
+ Must be a descending path, relative to the kubelet's configured seccomp profile location.
+ Must be set if type is "Localhost". Must NOT be set for any other type.
+ type: string
+ type:
+ description: |-
+ type indicates which kind of seccomp profile will be applied.
+ Valid options are:
+
+ Localhost - a profile defined in a file on the node should be used.
+ RuntimeDefault - the container runtime default profile should be used.
+ Unconfined - no profile should be applied.
+ type: string
+ required:
+ - type
+ type: object
+ windowsOptions:
+ description: |-
+ The Windows specific settings applied to all containers.
+ If unspecified, the options from the PodSecurityContext will be used.
+ If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is linux.
+ properties:
+ gmsaCredentialSpec:
+ description: |-
+ GMSACredentialSpec is where the GMSA admission webhook
+ (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the
+ GMSA credential spec named by the GMSACredentialSpecName field.
+ type: string
+ gmsaCredentialSpecName:
+ description: GMSACredentialSpecName is the name of
+ the GMSA credential spec to use.
+ type: string
+ hostProcess:
+ description: |-
+ HostProcess determines if a container should be run as a 'Host Process' container.
+ All of a Pod's containers must have the same effective HostProcess value
+ (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers).
+ In addition, if HostProcess is true then HostNetwork must also be set to true.
+ type: boolean
+ runAsUserName:
+ description: |-
+ The UserName in Windows to run the entrypoint of the container process.
+ Defaults to the user specified in image metadata if unspecified.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: string
+ type: object
+ type: object
+ serviceAccount:
+ description: ServiceAccount is the name of the custom Kubernetes
+ service account used by the pod.
+ type: string
+ serviceAnnotations:
+ additionalProperties:
+ type: string
+ description: |-
+ ServiceAnnotations defines the annotations to be added to the Kubernetes headless service used by
+ executors to connect to the driver.
+ type: object
+ serviceLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ ServiceLabels defines the labels to be added to the Kubernetes headless service used by
+ executors to connect to the driver.
+ type: object
+ shareProcessNamespace:
+ description: ShareProcessNamespace settings for the pod, following
+ the Kubernetes specifications.
+ type: boolean
+ sidecars:
+ description: Sidecars is a list of sidecar containers that
+ run along side the main Spark container.
+ items:
+ description: A single application container that you want
+ to run within a pod.
+ properties:
+ args:
+ description: |-
+ Arguments to the entrypoint.
+ The container image's CMD is used if this is not provided.
+ Variable references $(VAR_NAME) are expanded using the container's environment. If a variable
+ cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will
+ produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless
+ of whether the variable exists or not. Cannot be updated.
+ More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ command:
+ description: |-
+ Entrypoint array. Not executed within a shell.
+ The container image's ENTRYPOINT is used if this is not provided.
+ Variable references $(VAR_NAME) are expanded using the container's environment. If a variable
+ cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will
+ produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless
+ of whether the variable exists or not. Cannot be updated.
+ More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ env:
+ description: |-
+ List of environment variables to set in the container.
+ Cannot be updated.
+ items:
+ description: EnvVar represents an environment variable
+ present in a Container.
+ properties:
+ name:
+ description: Name of the environment variable.
+ Must be a C_IDENTIFIER.
+ type: string
+ value:
+ description: |-
+ Variable references $(VAR_NAME) are expanded
+ using the previously defined environment variables in the container and
+ any service environment variables. If a variable cannot be resolved,
+ the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e.
+ "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)".
+ Escaped references will never be expanded, regardless of whether the variable
+ exists or not.
+ Defaults to "".
+ type: string
+ valueFrom:
+ description: Source for the environment variable's
+ value. Cannot be used if value is not empty.
+ properties:
+ configMapKeyRef:
+ description: Selects a key of a ConfigMap.
+ properties:
+ key:
+ description: The key to select.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the ConfigMap
+ or its key must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ fieldRef:
+ description: |-
+ Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`,
+ spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.
+ properties:
+ apiVersion:
+ description: Version of the schema the
+ FieldPath is written in terms of, defaults
+ to "v1".
+ type: string
+ fieldPath:
+ description: Path of the field to select
+ in the specified API version.
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ resourceFieldRef:
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported.
+ properties:
+ containerName:
+ description: 'Container name: required
+ for volumes, optional for env vars'
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ description: Specifies the output format
+ of the exposed resources, defaults to
+ "1"
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ description: 'Required: resource to select'
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ secretKeyRef:
+ description: Selects a key of a secret in
+ the pod's namespace
+ properties:
+ key:
+ description: The key of the secret to
+ select from. Must be a valid secret
+ key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret
+ or its key must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ envFrom:
+ description: |-
+ List of sources to populate environment variables in the container.
+ The keys defined within a source must be a C_IDENTIFIER. All invalid keys
+ will be reported as an event when the container is starting. When a key exists in multiple
+ sources, the value associated with the last source will take precedence.
+ Values defined by an Env with a duplicate key will take precedence.
+ Cannot be updated.
+ items:
+ description: EnvFromSource represents the source of
+ a set of ConfigMaps
+ properties:
+ configMapRef:
+ description: The ConfigMap to select from
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the ConfigMap
+ must be defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ prefix:
+ description: An optional identifier to prepend
+ to each key in the ConfigMap. Must be a C_IDENTIFIER.
+ type: string
+ secretRef:
+ description: The Secret to select from
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret must
+ be defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ image:
+ description: |-
+ Container image name.
+ More info: https://kubernetes.io/docs/concepts/containers/images
+ This field is optional to allow higher level config management to default or override
+ container images in workload controllers like Deployments and StatefulSets.
+ type: string
+ imagePullPolicy:
+ description: |-
+ Image pull policy.
+ One of Always, Never, IfNotPresent.
+ Defaults to Always if :latest tag is specified, or IfNotPresent otherwise.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/containers/images#updating-images
+ type: string
+ lifecycle:
+ description: |-
+ Actions that the management system should take in response to container lifecycle events.
+ Cannot be updated.
+ properties:
+ postStart:
+ description: |-
+ PostStart is called immediately after a container is created. If the handler fails,
+ the container is terminated and restarted according to its restart policy.
+ Other management of the container blocks until the hook completes.
+ More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
+ properties:
+ exec:
+ description: Exec specifies a command to execute
+ in the container.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ description: HTTPGet specifies an HTTP GET request
+ to perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers to set in the
+ request. HTTP allows repeated headers.
+ items:
+ description: HTTPHeader describes a custom
+ header to be used in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access on the HTTP
+ server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ description: Sleep represents a duration that
+ the container should sleep.
+ properties:
+ seconds:
+ description: Seconds is the number of seconds
+ to sleep.
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ description: |-
+ Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept
+ for backward compatibility. There is no validation of this field and
+ lifecycle hooks will fail at runtime when it is specified.
+ properties:
+ host:
+ description: 'Optional: Host name to connect
+ to, defaults to the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ preStop:
+ description: |-
+ PreStop is called immediately before a container is terminated due to an
+ API request or management event such as liveness/startup probe failure,
+ preemption, resource contention, etc. The handler is not called if the
+ container crashes or exits. The Pod's termination grace period countdown begins before the
+ PreStop hook is executed. Regardless of the outcome of the handler, the
+ container will eventually terminate within the Pod's termination grace
+ period (unless delayed by finalizers). Other management of the container blocks until the hook completes
+ or until the termination grace period is reached.
+ More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
+ properties:
+ exec:
+ description: Exec specifies a command to execute
+ in the container.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ description: HTTPGet specifies an HTTP GET request
+ to perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers to set in the
+ request. HTTP allows repeated headers.
+ items:
+ description: HTTPHeader describes a custom
+ header to be used in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access on the HTTP
+ server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ description: Sleep represents a duration that
+ the container should sleep.
+ properties:
+ seconds:
+ description: Seconds is the number of seconds
+ to sleep.
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ description: |-
+ Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept
+ for backward compatibility. There is no validation of this field and
+ lifecycle hooks will fail at runtime when it is specified.
+ properties:
+ host:
+ description: 'Optional: Host name to connect
+ to, defaults to the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ type: object
+ livenessProbe:
+ description: |-
+ Periodic probe of container liveness.
+ Container will be restarted if the probe fails.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ properties:
+ exec:
+ description: Exec specifies a command to execute
+ in the container.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
+ format: int32
+ type: integer
+ grpc:
+ description: GRPC specifies a GRPC HealthCheckRequest.
+ properties:
+ port:
+ description: Port number of the gRPC service.
+ Number must be in the range 1 to 65535.
+ format: int32
+ type: integer
+ service:
+ default: ""
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
+ (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
+
+ If this is not specified, the default behavior is defined by gRPC.
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ description: HTTPGet specifies an HTTP GET request
+ to perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers to set in the request.
+ HTTP allows repeated headers.
+ items:
+ description: HTTPHeader describes a custom
+ header to be used in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ periodSeconds:
+ description: |-
+ How often (in seconds) to perform the probe.
+ Default to 10 seconds. Minimum value is 1.
+ format: int32
+ type: integer
+ successThreshold:
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
+ format: int32
+ type: integer
+ tcpSocket:
+ description: TCPSocket specifies a connection to
+ a TCP port.
+ properties:
+ host:
+ description: 'Optional: Host name to connect
+ to, defaults to the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
+ format: int64
+ type: integer
+ timeoutSeconds:
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ type: object
+ name:
+ description: |-
+ Name of the container specified as a DNS_LABEL.
+ Each container in a pod must have a unique name (DNS_LABEL).
+ Cannot be updated.
+ type: string
+ ports:
+ description: |-
+ List of ports to expose from the container. Not specifying a port here
+ DOES NOT prevent that port from being exposed. Any port which is
+ listening on the default "0.0.0.0" address inside a container will be
+ accessible from the network.
+ Modifying this array with strategic merge patch may corrupt the data.
+ For more information See https://github.com/kubernetes/kubernetes/issues/108255.
+ Cannot be updated.
+ items:
+ description: ContainerPort represents a network port
+ in a single container.
+ properties:
+ containerPort:
+ description: |-
+ Number of port to expose on the pod's IP address.
+ This must be a valid port number, 0 < x < 65536.
+ format: int32
+ type: integer
+ hostIP:
+ description: What host IP to bind the external
+ port to.
+ type: string
+ hostPort:
+ description: |-
+ Number of port to expose on the host.
+ If specified, this must be a valid port number, 0 < x < 65536.
+ If HostNetwork is specified, this must match ContainerPort.
+ Most containers do not need this.
+ format: int32
+ type: integer
+ name:
+ description: |-
+ If specified, this must be an IANA_SVC_NAME and unique within the pod. Each
+ named port in a pod must have a unique name. Name for the port that can be
+ referred to by services.
+ type: string
+ protocol:
+ default: TCP
+ description: |-
+ Protocol for port. Must be UDP, TCP, or SCTP.
+ Defaults to "TCP".
+ type: string
+ required:
+ - containerPort
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - containerPort
+ - protocol
+ x-kubernetes-list-type: map
+ readinessProbe:
+ description: |-
+ Periodic probe of container service readiness.
+ Container will be removed from service endpoints if the probe fails.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ properties:
+ exec:
+ description: Exec specifies a command to execute
+ in the container.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
+ format: int32
+ type: integer
+ grpc:
+ description: GRPC specifies a GRPC HealthCheckRequest.
+ properties:
+ port:
+ description: Port number of the gRPC service.
+ Number must be in the range 1 to 65535.
+ format: int32
+ type: integer
+ service:
+ default: ""
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
+ (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
+
+ If this is not specified, the default behavior is defined by gRPC.
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ description: HTTPGet specifies an HTTP GET request
+ to perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers to set in the request.
+ HTTP allows repeated headers.
+ items:
+ description: HTTPHeader describes a custom
+ header to be used in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ periodSeconds:
+ description: |-
+ How often (in seconds) to perform the probe.
+ Default to 10 seconds. Minimum value is 1.
+ format: int32
+ type: integer
+ successThreshold:
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
+ format: int32
+ type: integer
+ tcpSocket:
+ description: TCPSocket specifies a connection to
+ a TCP port.
+ properties:
+ host:
+ description: 'Optional: Host name to connect
+ to, defaults to the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
+ format: int64
+ type: integer
+ timeoutSeconds:
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ type: object
+ resizePolicy:
+ description: Resources resize policy for the container.
+ items:
+ description: ContainerResizePolicy represents resource
+ resize policy for the container.
+ properties:
+ resourceName:
+ description: |-
+ Name of the resource to which this resource resize policy applies.
+ Supported values: cpu, memory.
+ type: string
+ restartPolicy:
+ description: |-
+ Restart policy to apply when specified resource is resized.
+ If not specified, it defaults to NotRequired.
+ type: string
+ required:
+ - resourceName
+ - restartPolicy
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ resources:
+ description: |-
+ Compute Resources required by this container.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ properties:
+ claims:
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+ This field is immutable. It can only be set for containers.
+ items:
+ description: ResourceClaim references one entry
+ in PodSpec.ResourceClaims.
+ properties:
+ name:
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
+ type: string
+ request:
+ description: |-
+ Request is the name chosen for a request in the referenced claim.
+ If empty, everything from the claim is made available, otherwise
+ only the result of this request.
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ limits:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ type: object
+ requests:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ type: object
+ type: object
+ restartPolicy:
+ description: |-
+ RestartPolicy defines the restart behavior of individual containers in a pod.
+ This field may only be set for init containers, and the only allowed value is "Always".
+ For non-init containers or when this field is not specified,
+ the restart behavior is defined by the Pod's restart policy and the container type.
+ Setting the RestartPolicy as "Always" for the init container will have the following effect:
+ this init container will be continually restarted on
+ exit until all regular containers have terminated. Once all regular
+ containers have completed, all init containers with restartPolicy "Always"
+ will be shut down. This lifecycle differs from normal init containers and
+ is often referred to as a "sidecar" container. Although this init
+ container still starts in the init container sequence, it does not wait
+ for the container to complete before proceeding to the next init
+ container. Instead, the next init container starts immediately after this
+ init container is started, or after any startupProbe has successfully
+ completed.
+ type: string
+ securityContext:
+ description: |-
+ SecurityContext defines the security options the container should be run with.
+ If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext.
+ More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
+ properties:
+ allowPrivilegeEscalation:
+ description: |-
+ AllowPrivilegeEscalation controls whether a process can gain more
+ privileges than its parent process. This bool directly controls if
+ the no_new_privs flag will be set on the container process.
+ AllowPrivilegeEscalation is true always when the container is:
+ 1) run as Privileged
+ 2) has CAP_SYS_ADMIN
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ appArmorProfile:
+ description: |-
+ appArmorProfile is the AppArmor options to use by this container. If set, this profile
+ overrides the pod's appArmorProfile.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile loaded on the node that should be used.
+ The profile must be preconfigured on the node to work.
+ Must match the loaded name of the profile.
+ Must be set if and only if type is "Localhost".
+ type: string
+ type:
+ description: |-
+ type indicates which kind of AppArmor profile will be applied.
+ Valid options are:
+ Localhost - a profile pre-loaded on the node.
+ RuntimeDefault - the container runtime's default profile.
+ Unconfined - no AppArmor enforcement.
+ type: string
+ required:
+ - type
+ type: object
+ capabilities:
+ description: |-
+ The capabilities to add/drop when running containers.
+ Defaults to the default set of capabilities granted by the container runtime.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ add:
+ description: Added capabilities
+ items:
+ description: Capability represent POSIX capabilities
+ type
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ drop:
+ description: Removed capabilities
+ items:
+ description: Capability represent POSIX capabilities
+ type
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ privileged:
+ description: |-
+ Run container in privileged mode.
+ Processes in privileged containers are essentially equivalent to root on the host.
+ Defaults to false.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ procMount:
+ description: |-
+ procMount denotes the type of proc mount to use for the containers.
+ The default value is Default which uses the container runtime defaults for
+ readonly paths and masked paths.
+ This requires the ProcMountType feature flag to be enabled.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: string
+ readOnlyRootFilesystem:
+ description: |-
+ Whether this container has a read-only root filesystem.
+ Default is false.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ runAsGroup:
+ description: |-
+ The GID to run the entrypoint of the container process.
+ Uses runtime default if unset.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ runAsNonRoot:
+ description: |-
+ Indicates that the container must run as a non-root user.
+ If true, the Kubelet will validate the image at runtime to ensure that it
+ does not run as UID 0 (root) and fail to start the container if it does.
+ If unset or false, no such validation will be performed.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: boolean
+ runAsUser:
+ description: |-
+ The UID to run the entrypoint of the container process.
+ Defaults to user specified in image metadata if unspecified.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ seLinuxOptions:
+ description: |-
+ The SELinux context to be applied to the container.
+ If unspecified, the container runtime will allocate a random SELinux context for each
+ container. May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ level:
+ description: Level is SELinux level label that
+ applies to the container.
+ type: string
+ role:
+ description: Role is a SELinux role label that
+ applies to the container.
+ type: string
+ type:
+ description: Type is a SELinux type label that
+ applies to the container.
+ type: string
+ user:
+ description: User is a SELinux user label that
+ applies to the container.
+ type: string
+ type: object
+ seccompProfile:
+ description: |-
+ The seccomp options to use by this container. If seccomp options are
+ provided at both the pod & container level, the container options
+ override the pod options.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile defined in a file on the node should be used.
+ The profile must be preconfigured on the node to work.
+ Must be a descending path, relative to the kubelet's configured seccomp profile location.
+ Must be set if type is "Localhost". Must NOT be set for any other type.
+ type: string
+ type:
+ description: |-
+ type indicates which kind of seccomp profile will be applied.
+ Valid options are:
+
+ Localhost - a profile defined in a file on the node should be used.
+ RuntimeDefault - the container runtime default profile should be used.
+ Unconfined - no profile should be applied.
+ type: string
+ required:
+ - type
+ type: object
+ windowsOptions:
+ description: |-
+ The Windows specific settings applied to all containers.
+ If unspecified, the options from the PodSecurityContext will be used.
+ If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is linux.
+ properties:
+ gmsaCredentialSpec:
+ description: |-
+ GMSACredentialSpec is where the GMSA admission webhook
+ (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the
+ GMSA credential spec named by the GMSACredentialSpecName field.
+ type: string
+ gmsaCredentialSpecName:
+ description: GMSACredentialSpecName is the name
+ of the GMSA credential spec to use.
+ type: string
+ hostProcess:
+ description: |-
+ HostProcess determines if a container should be run as a 'Host Process' container.
+ All of a Pod's containers must have the same effective HostProcess value
+ (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers).
+ In addition, if HostProcess is true then HostNetwork must also be set to true.
+ type: boolean
+ runAsUserName:
+ description: |-
+ The UserName in Windows to run the entrypoint of the container process.
+ Defaults to the user specified in image metadata if unspecified.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: string
+ type: object
+ type: object
+ startupProbe:
+ description: |-
+ 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: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ properties:
+ exec:
+ description: Exec specifies a command to execute
+ in the container.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
+ format: int32
+ type: integer
+ grpc:
+ description: GRPC specifies a GRPC HealthCheckRequest.
+ properties:
+ port:
+ description: Port number of the gRPC service.
+ Number must be in the range 1 to 65535.
+ format: int32
+ type: integer
+ service:
+ default: ""
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
+ (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
+
+ If this is not specified, the default behavior is defined by gRPC.
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ description: HTTPGet specifies an HTTP GET request
+ to perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers to set in the request.
+ HTTP allows repeated headers.
+ items:
+ description: HTTPHeader describes a custom
+ header to be used in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ periodSeconds:
+ description: |-
+ How often (in seconds) to perform the probe.
+ Default to 10 seconds. Minimum value is 1.
+ format: int32
+ type: integer
+ successThreshold:
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
+ format: int32
+ type: integer
+ tcpSocket:
+ description: TCPSocket specifies a connection to
+ a TCP port.
+ properties:
+ host:
+ description: 'Optional: Host name to connect
+ to, defaults to the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
+ format: int64
+ type: integer
+ timeoutSeconds:
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ type: object
+ stdin:
+ description: |-
+ Whether this container should allocate a buffer for stdin in the container runtime. If this
+ is not set, reads from stdin in the container will always result in EOF.
+ Default is false.
+ type: boolean
+ stdinOnce:
+ description: |-
+ Whether the container runtime should close the stdin channel after it has been opened by
+ a single attach. When stdin is true the stdin stream will remain open across multiple attach
+ sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the
+ first client attaches to stdin, and then remains open and accepts data until the client disconnects,
+ at which time stdin is closed and remains closed until the container is restarted. If this
+ flag is false, a container processes that reads from stdin will never receive an EOF.
+ Default is false
+ type: boolean
+ terminationMessagePath:
+ description: |-
+ Optional: Path at which the file to which the container's termination message
+ will be written is mounted into the container's filesystem.
+ Message written is intended to be brief final status, such as an assertion failure message.
+ Will be truncated by the node if greater than 4096 bytes. The total message length across
+ all containers will be limited to 12kb.
+ Defaults to /dev/termination-log.
+ Cannot be updated.
+ type: string
+ terminationMessagePolicy:
+ description: |-
+ Indicate how the termination message should be populated. File will use the contents of
+ terminationMessagePath to populate the container status message on both success and failure.
+ FallbackToLogsOnError will use the last chunk of container log output if the termination
+ message file is empty and the container exited with an error.
+ The log output is limited to 2048 bytes or 80 lines, whichever is smaller.
+ Defaults to File.
+ Cannot be updated.
+ type: string
+ tty:
+ description: |-
+ Whether this container should allocate a TTY for itself, also requires 'stdin' to be true.
+ Default is false.
+ type: boolean
+ volumeDevices:
+ description: volumeDevices is the list of block devices
+ to be used by the container.
+ items:
+ description: volumeDevice describes a mapping of a
+ raw block device within a container.
+ properties:
+ devicePath:
+ description: devicePath is the path inside of
+ the container that the device will be mapped
+ to.
+ type: string
+ name:
+ description: name must match the name of a persistentVolumeClaim
+ in the pod
+ type: string
+ required:
+ - devicePath
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
+ volumeMounts:
+ description: |-
+ Pod volumes to mount into the container's filesystem.
+ Cannot be updated.
+ items:
+ description: VolumeMount describes a mounting of a
+ Volume within a container.
+ properties:
+ mountPath:
+ description: |-
+ Path within the container at which the volume should be mounted. Must
+ not contain ':'.
+ type: string
+ mountPropagation:
+ description: |-
+ mountPropagation determines how mounts are propagated from the host
+ to container and the other way around.
+ When not set, MountPropagationNone is used.
+ This field is beta in 1.10.
+ When RecursiveReadOnly is set to IfPossible or to Enabled, MountPropagation must be None or unspecified
+ (which defaults to None).
+ type: string
+ name:
+ description: This must match the Name of a Volume.
+ type: string
+ readOnly:
+ description: |-
+ Mounted read-only if true, read-write otherwise (false or unspecified).
+ Defaults to false.
+ type: boolean
+ recursiveReadOnly:
+ description: |-
+ RecursiveReadOnly specifies whether read-only mounts should be handled
+ recursively.
+
+ If ReadOnly is false, this field has no meaning and must be unspecified.
+
+ If ReadOnly is true, and this field is set to Disabled, the mount is not made
+ recursively read-only. If this field is set to IfPossible, the mount is made
+ recursively read-only, if it is supported by the container runtime. If this
+ field is set to Enabled, the mount is made recursively read-only if it is
+ supported by the container runtime, otherwise the pod will not be started and
+ an error will be generated to indicate the reason.
+
+ If this field is set to IfPossible or Enabled, MountPropagation must be set to
+ None (or be unspecified, which defaults to None).
+
+ If this field is not specified, it is treated as an equivalent of Disabled.
+ type: string
+ subPath:
+ description: |-
+ Path within the volume from which the container's volume should be mounted.
+ Defaults to "" (volume's root).
+ type: string
+ subPathExpr:
+ description: |-
+ Expanded path within the volume from which the container's volume should be mounted.
+ Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.
+ Defaults to "" (volume's root).
+ SubPathExpr and SubPath are mutually exclusive.
+ type: string
+ required:
+ - mountPath
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
+ workingDir:
+ description: |-
+ Container's working directory.
+ If not specified, the container runtime's default will be used, which
+ might be configured in the container image.
+ Cannot be updated.
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ template:
+ description: |-
+ Template is a pod template that can be used to define the driver or executor pod configurations that Spark configurations do not support.
+ Spark version >= 3.0.0 is required.
+ Ref: https://spark.apache.org/docs/latest/running-on-kubernetes.html#pod-template.
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ terminationGracePeriodSeconds:
+ description: Termination grace period seconds for the pod
+ format: int64
+ type: integer
+ tolerations:
+ description: Tolerations specifies the tolerations listed
+ in ".spec.tolerations" to be applied to the pod.
+ items:
+ description: |-
+ The pod this Toleration is attached to tolerates any taint that matches
+ the triple using the matching operator .
+ properties:
+ effect:
+ description: |-
+ Effect indicates the taint effect to match. Empty means match all taint effects.
+ When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute.
+ type: string
+ key:
+ description: |-
+ Key is the taint key that the toleration applies to. Empty means match all taint keys.
+ If the key is empty, operator must be Exists; this combination means to match all values and all keys.
+ type: string
+ operator:
+ description: |-
+ Operator represents a key's relationship to the value.
+ Valid operators are Exists and Equal. Defaults to Equal.
+ Exists is equivalent to wildcard for value, so that a pod can
+ tolerate all taints of a particular category.
+ type: string
+ tolerationSeconds:
+ description: |-
+ TolerationSeconds represents the period of time the toleration (which must be
+ of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default,
+ it is not set, which means tolerate the taint forever (do not evict). Zero and
+ negative values will be treated as 0 (evict immediately) by the system.
+ format: int64
+ type: integer
+ value:
+ description: |-
+ Value is the taint value the toleration matches to.
+ If the operator is Exists, the value should be empty, otherwise just a regular string.
+ type: string
+ type: object
+ type: array
+ volumeMounts:
+ description: VolumeMounts specifies the volumes listed in
+ ".spec.volumes" to mount into the main container's filesystem.
+ items:
+ description: VolumeMount describes a mounting of a Volume
+ within a container.
+ properties:
+ mountPath:
+ description: |-
+ Path within the container at which the volume should be mounted. Must
+ not contain ':'.
+ type: string
+ mountPropagation:
+ description: |-
+ mountPropagation determines how mounts are propagated from the host
+ to container and the other way around.
+ When not set, MountPropagationNone is used.
+ This field is beta in 1.10.
+ When RecursiveReadOnly is set to IfPossible or to Enabled, MountPropagation must be None or unspecified
+ (which defaults to None).
+ type: string
+ name:
+ description: This must match the Name of a Volume.
+ type: string
+ readOnly:
+ description: |-
+ Mounted read-only if true, read-write otherwise (false or unspecified).
+ Defaults to false.
+ type: boolean
+ recursiveReadOnly:
+ description: |-
+ RecursiveReadOnly specifies whether read-only mounts should be handled
+ recursively.
+
+ If ReadOnly is false, this field has no meaning and must be unspecified.
+
+ If ReadOnly is true, and this field is set to Disabled, the mount is not made
+ recursively read-only. If this field is set to IfPossible, the mount is made
+ recursively read-only, if it is supported by the container runtime. If this
+ field is set to Enabled, the mount is made recursively read-only if it is
+ supported by the container runtime, otherwise the pod will not be started and
+ an error will be generated to indicate the reason.
+
+ If this field is set to IfPossible or Enabled, MountPropagation must be set to
+ None (or be unspecified, which defaults to None).
+
+ If this field is not specified, it is treated as an equivalent of Disabled.
+ type: string
+ subPath:
+ description: |-
+ Path within the volume from which the container's volume should be mounted.
+ Defaults to "" (volume's root).
+ type: string
+ subPathExpr:
+ description: |-
+ Expanded path within the volume from which the container's volume should be mounted.
+ Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.
+ Defaults to "" (volume's root).
+ SubPathExpr and SubPath are mutually exclusive.
+ type: string
+ required:
+ - mountPath
+ - name
+ type: object
+ type: array
+ type: object
+ driverIngressOptions:
+ description: DriverIngressOptions allows configuring the Service
+ and the Ingress to expose ports inside Spark Driver
+ items:
+ description: DriverIngressConfiguration is for driver ingress
+ specific configuration parameters.
+ properties:
+ ingressAnnotations:
+ additionalProperties:
+ type: string
+ description: IngressAnnotations is a map of key,value pairs
+ of annotations that might be added to the ingress object.
+ i.e. specify nginx as ingress.class
+ type: object
+ ingressTLS:
+ description: TlsHosts is useful If we need to declare SSL
+ certificates to the ingress object
+ items:
+ description: IngressTLS describes the transport layer
+ security associated with an ingress.
+ properties:
+ hosts:
+ description: |-
+ hosts is a list of hosts included in the TLS certificate. The values in
+ this list must match the name/s used in the tlsSecret. Defaults to the
+ wildcard host setting for the loadbalancer controller fulfilling this
+ Ingress, if left unspecified.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ secretName:
+ description: |-
+ secretName is the name of the secret used to terminate TLS traffic on
+ port 443. Field is left optional to allow TLS routing based on SNI
+ hostname alone. If the SNI host in a listener conflicts with the "Host"
+ header field used by an IngressRule, the SNI host is used for termination
+ and value of the "Host" header is used for routing.
+ type: string
+ type: object
+ type: array
+ ingressURLFormat:
+ description: IngressURLFormat is the URL for the ingress.
+ type: string
+ serviceAnnotations:
+ additionalProperties:
+ type: string
+ description: ServiceAnnotations is a map of key,value pairs
+ of annotations that might be added to the service object.
+ type: object
+ serviceLabels:
+ additionalProperties:
+ type: string
+ description: ServiceLabels is a map of key,value pairs of
+ labels that might be added to the service object.
+ type: object
+ servicePort:
+ description: ServicePort allows configuring the port at
+ service level that might be different from the targetPort.
+ format: int32
+ type: integer
+ servicePortName:
+ description: |-
+ ServicePortName allows configuring the name of the service port.
+ This may be useful for sidecar proxies like Envoy injected by Istio which require specific ports names to treat traffic as proper HTTP.
+ type: string
+ serviceType:
+ description: ServiceType allows configuring the type of
+ the service. Defaults to ClusterIP.
+ type: string
+ required:
+ - servicePort
+ - servicePortName
+ type: object
+ type: array
+ dynamicAllocation:
+ description: |-
+ DynamicAllocation configures dynamic allocation that becomes available for the Kubernetes
+ scheduler backend since Spark 3.0.
+ properties:
+ enabled:
+ description: Enabled controls whether dynamic allocation is
+ enabled or not.
+ type: boolean
+ initialExecutors:
+ description: |-
+ InitialExecutors is the initial number of executors to request. If .spec.executor.instances
+ is also set, the initial number of executors is set to the bigger of that and this option.
+ format: int32
+ type: integer
+ maxExecutors:
+ description: MaxExecutors is the upper bound for the number
+ of executors if dynamic allocation is enabled.
+ format: int32
+ type: integer
+ minExecutors:
+ description: MinExecutors is the lower bound for the number
+ of executors if dynamic allocation is enabled.
+ format: int32
+ type: integer
+ shuffleTrackingTimeout:
+ description: |-
+ ShuffleTrackingTimeout controls the timeout in milliseconds for executors that are holding
+ shuffle data if shuffle tracking is enabled (true by default if dynamic allocation is enabled).
+ format: int64
+ type: integer
+ type: object
+ executor:
+ description: Executor is the executor specification.
+ properties:
+ affinity:
+ description: Affinity specifies the affinity/anti-affinity
+ settings for the pod.
+ properties:
+ nodeAffinity:
+ description: Describes node affinity scheduling rules
+ for the pod.
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node matches the corresponding matchExpressions; the
+ node(s) with the highest sum are the most preferred.
+ items:
+ description: |-
+ An empty preferred scheduling term matches all objects with implicit weight 0
+ (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op).
+ properties:
+ preference:
+ description: A node selector term, associated
+ with the corresponding weight.
+ properties:
+ matchExpressions:
+ description: A list of node selector requirements
+ by node's labels.
+ items:
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
+ properties:
+ key:
+ description: The label key that the
+ selector applies to.
+ type: string
+ operator:
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
+ type: string
+ values:
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchFields:
+ description: A list of node selector requirements
+ by node's fields.
+ items:
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
+ properties:
+ key:
+ description: The label key that the
+ selector applies to.
+ type: string
+ operator:
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
+ type: string
+ values:
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ x-kubernetes-map-type: atomic
+ weight:
+ description: Weight associated with matching
+ the corresponding nodeSelectorTerm, in the
+ range 1-100.
+ format: int32
+ type: integer
+ required:
+ - preference
+ - weight
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ If the affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to an update), the system
+ may or may not try to eventually evict the pod from its node.
+ properties:
+ nodeSelectorTerms:
+ description: Required. A list of node selector
+ terms. The terms are ORed.
+ items:
+ description: |-
+ A null or empty node selector term matches no objects. The requirements of
+ them are ANDed.
+ The TopologySelectorTerm type implements a subset of the NodeSelectorTerm.
+ properties:
+ matchExpressions:
+ description: A list of node selector requirements
+ by node's labels.
+ items:
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
+ properties:
+ key:
+ description: The label key that the
+ selector applies to.
+ type: string
+ operator:
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
+ type: string
+ values:
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchFields:
+ description: A list of node selector requirements
+ by node's fields.
+ items:
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
+ properties:
+ key:
+ description: The label key that the
+ selector applies to.
+ type: string
+ operator:
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
+ type: string
+ values:
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ x-kubernetes-map-type: atomic
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - nodeSelectorTerms
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ podAffinity:
+ description: Describes pod affinity scheduling rules (e.g.
+ co-locate this pod in the same node, zone, etc. as some
+ other pod(s)).
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the
+ node(s) with the highest sum are the most preferred.
+ items:
+ description: The weights of all of the matched WeightedPodAffinityTerm
+ fields are added per-node to find the most preferred
+ node(s)
+ properties:
+ podAffinityTerm:
+ description: Required. A pod affinity term,
+ associated with the corresponding weight.
+ properties:
+ labelSelector:
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list
+ of label selector requirements. The
+ requirements are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key is the label
+ key that the selector applies
+ to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both matchLabelKeys and labelSelector.
+ Also, matchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
+ Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list
+ of label selector requirements. The
+ requirements are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key is the label
+ key that the selector applies
+ to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ namespaces:
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
+ type: string
+ required:
+ - topologyKey
+ type: object
+ weight:
+ description: |-
+ weight associated with matching the corresponding podAffinityTerm,
+ in the range 1-100.
+ format: int32
+ type: integer
+ required:
+ - podAffinityTerm
+ - weight
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ If the affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to a pod label update), the
+ system may or may not try to eventually evict the pod from its node.
+ When there are multiple elements, the lists of nodes corresponding to each
+ podAffinityTerm are intersected, i.e. all terms must be satisfied.
+ items:
+ description: |-
+ Defines a set of pods (namely those matching the labelSelector
+ relative to the given namespace(s)) that this pod should be
+ co-located (affinity) or not co-located (anti-affinity) with,
+ where co-located is defined as running on a node whose value of
+ the label with key matches that of any node on which
+ a pod of the set of pods is running
+ properties:
+ labelSelector:
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list
+ of label selector requirements. The requirements
+ are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key is the label key
+ that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both matchLabelKeys and labelSelector.
+ Also, matchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
+ Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list
+ of label selector requirements. The requirements
+ are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key is the label key
+ that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ namespaces:
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
+ type: string
+ required:
+ - topologyKey
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ podAntiAffinity:
+ description: Describes pod anti-affinity scheduling rules
+ (e.g. avoid putting this pod in the same node, zone,
+ etc. as some other pod(s)).
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the anti-affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling anti-affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the
+ node(s) with the highest sum are the most preferred.
+ items:
+ description: The weights of all of the matched WeightedPodAffinityTerm
+ fields are added per-node to find the most preferred
+ node(s)
+ properties:
+ podAffinityTerm:
+ description: Required. A pod affinity term,
+ associated with the corresponding weight.
+ properties:
+ labelSelector:
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list
+ of label selector requirements. The
+ requirements are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key is the label
+ key that the selector applies
+ to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both matchLabelKeys and labelSelector.
+ Also, matchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
+ Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list
+ of label selector requirements. The
+ requirements are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key is the label
+ key that the selector applies
+ to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ namespaces:
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
+ type: string
+ required:
+ - topologyKey
+ type: object
+ weight:
+ description: |-
+ weight associated with matching the corresponding podAffinityTerm,
+ in the range 1-100.
+ format: int32
+ type: integer
+ required:
+ - podAffinityTerm
+ - weight
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ If the anti-affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the anti-affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to a pod label update), the
+ system may or may not try to eventually evict the pod from its node.
+ When there are multiple elements, the lists of nodes corresponding to each
+ podAffinityTerm are intersected, i.e. all terms must be satisfied.
+ items:
+ description: |-
+ Defines a set of pods (namely those matching the labelSelector
+ relative to the given namespace(s)) that this pod should be
+ co-located (affinity) or not co-located (anti-affinity) with,
+ where co-located is defined as running on a node whose value of
+ the label with key matches that of any node on which
+ a pod of the set of pods is running
+ properties:
+ labelSelector:
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list
+ of label selector requirements. The requirements
+ are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key is the label key
+ that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both matchLabelKeys and labelSelector.
+ Also, matchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
+ Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list
+ of label selector requirements. The requirements
+ are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key is the label key
+ that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ namespaces:
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
+ type: string
+ required:
+ - topologyKey
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ type: object
+ annotations:
+ additionalProperties:
+ type: string
+ description: Annotations are the Kubernetes annotations to
+ be added to the pod.
+ type: object
+ configMaps:
+ description: ConfigMaps carries information of other ConfigMaps
+ to add to the pod.
+ items:
+ description: NamePath is a pair of a name and a path to
+ which the named objects should be mounted to.
+ properties:
+ name:
+ type: string
+ path:
+ type: string
+ required:
+ - name
+ - path
+ type: object
+ type: array
+ coreLimit:
+ description: |-
+ CoreLimit specifies a hard limit on CPU cores for the pod.
+ Optional
+ type: string
+ coreRequest:
+ description: |-
+ CoreRequest is the physical CPU core request for the executors.
+ Maps to `spark.kubernetes.executor.request.cores` that is available since Spark 2.4.
+ type: string
+ cores:
+ description: Cores maps to `spark.driver.cores` or `spark.executor.cores`
+ for the driver and executors, respectively.
+ format: int32
+ minimum: 1
+ type: integer
+ deleteOnTermination:
+ description: |-
+ DeleteOnTermination specify whether executor pods should be deleted in case of failure or normal termination.
+ Maps to `spark.kubernetes.executor.deleteOnTermination` that is available since Spark 3.0.
+ type: boolean
+ dnsConfig:
+ description: DnsConfig dns settings for the pod, following
+ the Kubernetes specifications.
+ properties:
+ nameservers:
+ description: |-
+ A list of DNS name server IP addresses.
+ This will be appended to the base nameservers generated from DNSPolicy.
+ Duplicated nameservers will be removed.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ options:
+ description: |-
+ A list of DNS resolver options.
+ This will be merged with the base options generated from DNSPolicy.
+ Duplicated entries will be removed. Resolution options given in Options
+ will override those that appear in the base DNSPolicy.
+ items:
+ description: PodDNSConfigOption defines DNS resolver
+ options of a pod.
+ properties:
+ name:
+ description: |-
+ Name is this DNS resolver option's name.
+ Required.
+ type: string
+ value:
+ description: Value is this DNS resolver option's
+ value.
+ type: string
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ searches:
+ description: |-
+ A list of DNS search domains for host-name lookup.
+ This will be appended to the base search paths generated from DNSPolicy.
+ Duplicated search paths will be removed.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ env:
+ description: Env carries the environment variables to add
+ to the pod.
+ items:
+ description: EnvVar represents an environment variable present
+ in a Container.
+ properties:
+ name:
+ description: Name of the environment variable. Must
+ be a C_IDENTIFIER.
+ type: string
+ value:
+ description: |-
+ Variable references $(VAR_NAME) are expanded
+ using the previously defined environment variables in the container and
+ any service environment variables. If a variable cannot be resolved,
+ the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e.
+ "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)".
+ Escaped references will never be expanded, regardless of whether the variable
+ exists or not.
+ Defaults to "".
+ type: string
+ valueFrom:
+ description: Source for the environment variable's value.
+ Cannot be used if value is not empty.
+ properties:
+ configMapKeyRef:
+ description: Selects a key of a ConfigMap.
+ properties:
+ key:
+ description: The key to select.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the ConfigMap or
+ its key must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ fieldRef:
+ description: |-
+ Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`,
+ spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.
+ properties:
+ apiVersion:
+ description: Version of the schema the FieldPath
+ is written in terms of, defaults to "v1".
+ type: string
+ fieldPath:
+ description: Path of the field to select in
+ the specified API version.
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ resourceFieldRef:
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported.
+ properties:
+ containerName:
+ description: 'Container name: required for volumes,
+ optional for env vars'
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ description: Specifies the output format of
+ the exposed resources, defaults to "1"
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ description: 'Required: resource to select'
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ secretKeyRef:
+ description: Selects a key of a secret in the pod's
+ namespace
+ properties:
+ key:
+ description: The key of the secret to select
+ from. Must be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its
+ key must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ required:
+ - name
+ type: object
+ type: array
+ envFrom:
+ description: EnvFrom is a list of sources to populate environment
+ variables in the container.
+ items:
+ description: EnvFromSource represents the source of a set
+ of ConfigMaps
+ properties:
+ configMapRef:
+ description: The ConfigMap to select from
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the ConfigMap must
+ be defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ prefix:
+ description: An optional identifier to prepend to each
+ key in the ConfigMap. Must be a C_IDENTIFIER.
+ type: string
+ secretRef:
+ description: The Secret to select from
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret must be
+ defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ type: array
+ envSecretKeyRefs:
+ additionalProperties:
+ description: NameKey represents the name and key of a SecretKeyRef.
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ required:
+ - key
+ - name
+ type: object
+ description: |-
+ EnvSecretKeyRefs holds a mapping from environment variable names to SecretKeyRefs.
+ Deprecated. Consider using `env` instead.
+ type: object
+ envVars:
+ additionalProperties:
+ type: string
+ description: |-
+ EnvVars carries the environment variables to add to the pod.
+ Deprecated. Consider using `env` instead.
+ type: object
+ gpu:
+ description: GPU specifies GPU requirement for the pod.
+ properties:
+ name:
+ description: 'Name is GPU resource name, such as: nvidia.com/gpu
+ or amd.com/gpu'
+ type: string
+ quantity:
+ description: Quantity is the number of GPUs to request
+ for driver or executor.
+ format: int64
+ type: integer
+ required:
+ - name
+ - quantity
+ type: object
+ hostAliases:
+ description: HostAliases settings for the pod, following the
+ Kubernetes specifications.
+ items:
+ description: |-
+ HostAlias holds the mapping between IP and hostnames that will be injected as an entry in the
+ pod's hosts file.
+ properties:
+ hostnames:
+ description: Hostnames for the above IP address.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ ip:
+ description: IP address of the host file entry.
+ type: string
+ required:
+ - ip
+ type: object
+ type: array
+ hostNetwork:
+ description: HostNetwork indicates whether to request host
+ networking for the pod or not.
+ type: boolean
+ image:
+ description: Image is the container image to use. Overrides
+ Spec.Image if set.
+ type: string
+ initContainers:
+ description: InitContainers is a list of init-containers that
+ run to completion before the main Spark container.
+ items:
+ description: A single application container that you want
+ to run within a pod.
+ properties:
+ args:
+ description: |-
+ Arguments to the entrypoint.
+ The container image's CMD is used if this is not provided.
+ Variable references $(VAR_NAME) are expanded using the container's environment. If a variable
+ cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will
+ produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless
+ of whether the variable exists or not. Cannot be updated.
+ More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ command:
+ description: |-
+ Entrypoint array. Not executed within a shell.
+ The container image's ENTRYPOINT is used if this is not provided.
+ Variable references $(VAR_NAME) are expanded using the container's environment. If a variable
+ cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will
+ produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless
+ of whether the variable exists or not. Cannot be updated.
+ More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ env:
+ description: |-
+ List of environment variables to set in the container.
+ Cannot be updated.
+ items:
+ description: EnvVar represents an environment variable
+ present in a Container.
+ properties:
+ name:
+ description: Name of the environment variable.
+ Must be a C_IDENTIFIER.
+ type: string
+ value:
+ description: |-
+ Variable references $(VAR_NAME) are expanded
+ using the previously defined environment variables in the container and
+ any service environment variables. If a variable cannot be resolved,
+ the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e.
+ "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)".
+ Escaped references will never be expanded, regardless of whether the variable
+ exists or not.
+ Defaults to "".
+ type: string
+ valueFrom:
+ description: Source for the environment variable's
+ value. Cannot be used if value is not empty.
+ properties:
+ configMapKeyRef:
+ description: Selects a key of a ConfigMap.
+ properties:
+ key:
+ description: The key to select.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the ConfigMap
+ or its key must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ fieldRef:
+ description: |-
+ Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`,
+ spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.
+ properties:
+ apiVersion:
+ description: Version of the schema the
+ FieldPath is written in terms of, defaults
+ to "v1".
+ type: string
+ fieldPath:
+ description: Path of the field to select
+ in the specified API version.
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ resourceFieldRef:
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported.
+ properties:
+ containerName:
+ description: 'Container name: required
+ for volumes, optional for env vars'
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ description: Specifies the output format
+ of the exposed resources, defaults to
+ "1"
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ description: 'Required: resource to select'
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ secretKeyRef:
+ description: Selects a key of a secret in
+ the pod's namespace
+ properties:
+ key:
+ description: The key of the secret to
+ select from. Must be a valid secret
+ key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret
+ or its key must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ envFrom:
+ description: |-
+ List of sources to populate environment variables in the container.
+ The keys defined within a source must be a C_IDENTIFIER. All invalid keys
+ will be reported as an event when the container is starting. When a key exists in multiple
+ sources, the value associated with the last source will take precedence.
+ Values defined by an Env with a duplicate key will take precedence.
+ Cannot be updated.
+ items:
+ description: EnvFromSource represents the source of
+ a set of ConfigMaps
+ properties:
+ configMapRef:
+ description: The ConfigMap to select from
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the ConfigMap
+ must be defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ prefix:
+ description: An optional identifier to prepend
+ to each key in the ConfigMap. Must be a C_IDENTIFIER.
+ type: string
+ secretRef:
+ description: The Secret to select from
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret must
+ be defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ image:
+ description: |-
+ Container image name.
+ More info: https://kubernetes.io/docs/concepts/containers/images
+ This field is optional to allow higher level config management to default or override
+ container images in workload controllers like Deployments and StatefulSets.
+ type: string
+ imagePullPolicy:
+ description: |-
+ Image pull policy.
+ One of Always, Never, IfNotPresent.
+ Defaults to Always if :latest tag is specified, or IfNotPresent otherwise.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/containers/images#updating-images
+ type: string
+ lifecycle:
+ description: |-
+ Actions that the management system should take in response to container lifecycle events.
+ Cannot be updated.
+ properties:
+ postStart:
+ description: |-
+ PostStart is called immediately after a container is created. If the handler fails,
+ the container is terminated and restarted according to its restart policy.
+ Other management of the container blocks until the hook completes.
+ More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
+ properties:
+ exec:
+ description: Exec specifies a command to execute
+ in the container.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ description: HTTPGet specifies an HTTP GET request
+ to perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers to set in the
+ request. HTTP allows repeated headers.
+ items:
+ description: HTTPHeader describes a custom
+ header to be used in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access on the HTTP
+ server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ description: Sleep represents a duration that
+ the container should sleep.
+ properties:
+ seconds:
+ description: Seconds is the number of seconds
+ to sleep.
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ description: |-
+ Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept
+ for backward compatibility. There is no validation of this field and
+ lifecycle hooks will fail at runtime when it is specified.
+ properties:
+ host:
+ description: 'Optional: Host name to connect
+ to, defaults to the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ preStop:
+ description: |-
+ PreStop is called immediately before a container is terminated due to an
+ API request or management event such as liveness/startup probe failure,
+ preemption, resource contention, etc. The handler is not called if the
+ container crashes or exits. The Pod's termination grace period countdown begins before the
+ PreStop hook is executed. Regardless of the outcome of the handler, the
+ container will eventually terminate within the Pod's termination grace
+ period (unless delayed by finalizers). Other management of the container blocks until the hook completes
+ or until the termination grace period is reached.
+ More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
+ properties:
+ exec:
+ description: Exec specifies a command to execute
+ in the container.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ description: HTTPGet specifies an HTTP GET request
+ to perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers to set in the
+ request. HTTP allows repeated headers.
+ items:
+ description: HTTPHeader describes a custom
+ header to be used in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access on the HTTP
+ server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ description: Sleep represents a duration that
+ the container should sleep.
+ properties:
+ seconds:
+ description: Seconds is the number of seconds
+ to sleep.
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ description: |-
+ Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept
+ for backward compatibility. There is no validation of this field and
+ lifecycle hooks will fail at runtime when it is specified.
+ properties:
+ host:
+ description: 'Optional: Host name to connect
+ to, defaults to the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ type: object
+ livenessProbe:
+ description: |-
+ Periodic probe of container liveness.
+ Container will be restarted if the probe fails.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ properties:
+ exec:
+ description: Exec specifies a command to execute
+ in the container.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
+ format: int32
+ type: integer
+ grpc:
+ description: GRPC specifies a GRPC HealthCheckRequest.
+ properties:
+ port:
+ description: Port number of the gRPC service.
+ Number must be in the range 1 to 65535.
+ format: int32
+ type: integer
+ service:
+ default: ""
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
+ (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
+
+ If this is not specified, the default behavior is defined by gRPC.
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ description: HTTPGet specifies an HTTP GET request
+ to perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers to set in the request.
+ HTTP allows repeated headers.
+ items:
+ description: HTTPHeader describes a custom
+ header to be used in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ periodSeconds:
+ description: |-
+ How often (in seconds) to perform the probe.
+ Default to 10 seconds. Minimum value is 1.
+ format: int32
+ type: integer
+ successThreshold:
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
+ format: int32
+ type: integer
+ tcpSocket:
+ description: TCPSocket specifies a connection to
+ a TCP port.
+ properties:
+ host:
+ description: 'Optional: Host name to connect
+ to, defaults to the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
+ format: int64
+ type: integer
+ timeoutSeconds:
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ type: object
+ name:
+ description: |-
+ Name of the container specified as a DNS_LABEL.
+ Each container in a pod must have a unique name (DNS_LABEL).
+ Cannot be updated.
+ type: string
+ ports:
+ description: |-
+ List of ports to expose from the container. Not specifying a port here
+ DOES NOT prevent that port from being exposed. Any port which is
+ listening on the default "0.0.0.0" address inside a container will be
+ accessible from the network.
+ Modifying this array with strategic merge patch may corrupt the data.
+ For more information See https://github.com/kubernetes/kubernetes/issues/108255.
+ Cannot be updated.
+ items:
+ description: ContainerPort represents a network port
+ in a single container.
+ properties:
+ containerPort:
+ description: |-
+ Number of port to expose on the pod's IP address.
+ This must be a valid port number, 0 < x < 65536.
+ format: int32
+ type: integer
+ hostIP:
+ description: What host IP to bind the external
+ port to.
+ type: string
+ hostPort:
+ description: |-
+ Number of port to expose on the host.
+ If specified, this must be a valid port number, 0 < x < 65536.
+ If HostNetwork is specified, this must match ContainerPort.
+ Most containers do not need this.
+ format: int32
+ type: integer
+ name:
+ description: |-
+ If specified, this must be an IANA_SVC_NAME and unique within the pod. Each
+ named port in a pod must have a unique name. Name for the port that can be
+ referred to by services.
+ type: string
+ protocol:
+ default: TCP
+ description: |-
+ Protocol for port. Must be UDP, TCP, or SCTP.
+ Defaults to "TCP".
+ type: string
+ required:
+ - containerPort
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - containerPort
+ - protocol
+ x-kubernetes-list-type: map
+ readinessProbe:
+ description: |-
+ Periodic probe of container service readiness.
+ Container will be removed from service endpoints if the probe fails.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ properties:
+ exec:
+ description: Exec specifies a command to execute
+ in the container.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
+ format: int32
+ type: integer
+ grpc:
+ description: GRPC specifies a GRPC HealthCheckRequest.
+ properties:
+ port:
+ description: Port number of the gRPC service.
+ Number must be in the range 1 to 65535.
+ format: int32
+ type: integer
+ service:
+ default: ""
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
+ (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
+
+ If this is not specified, the default behavior is defined by gRPC.
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ description: HTTPGet specifies an HTTP GET request
+ to perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers to set in the request.
+ HTTP allows repeated headers.
+ items:
+ description: HTTPHeader describes a custom
+ header to be used in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ periodSeconds:
+ description: |-
+ How often (in seconds) to perform the probe.
+ Default to 10 seconds. Minimum value is 1.
+ format: int32
+ type: integer
+ successThreshold:
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
+ format: int32
+ type: integer
+ tcpSocket:
+ description: TCPSocket specifies a connection to
+ a TCP port.
+ properties:
+ host:
+ description: 'Optional: Host name to connect
+ to, defaults to the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
+ format: int64
+ type: integer
+ timeoutSeconds:
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ type: object
+ resizePolicy:
+ description: Resources resize policy for the container.
+ items:
+ description: ContainerResizePolicy represents resource
+ resize policy for the container.
+ properties:
+ resourceName:
+ description: |-
+ Name of the resource to which this resource resize policy applies.
+ Supported values: cpu, memory.
+ type: string
+ restartPolicy:
+ description: |-
+ Restart policy to apply when specified resource is resized.
+ If not specified, it defaults to NotRequired.
+ type: string
+ required:
+ - resourceName
+ - restartPolicy
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ resources:
+ description: |-
+ Compute Resources required by this container.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ properties:
+ claims:
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+ This field is immutable. It can only be set for containers.
+ items:
+ description: ResourceClaim references one entry
+ in PodSpec.ResourceClaims.
+ properties:
+ name:
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
+ type: string
+ request:
+ description: |-
+ Request is the name chosen for a request in the referenced claim.
+ If empty, everything from the claim is made available, otherwise
+ only the result of this request.
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ limits:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ type: object
+ requests:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ type: object
+ type: object
+ restartPolicy:
+ description: |-
+ RestartPolicy defines the restart behavior of individual containers in a pod.
+ This field may only be set for init containers, and the only allowed value is "Always".
+ For non-init containers or when this field is not specified,
+ the restart behavior is defined by the Pod's restart policy and the container type.
+ Setting the RestartPolicy as "Always" for the init container will have the following effect:
+ this init container will be continually restarted on
+ exit until all regular containers have terminated. Once all regular
+ containers have completed, all init containers with restartPolicy "Always"
+ will be shut down. This lifecycle differs from normal init containers and
+ is often referred to as a "sidecar" container. Although this init
+ container still starts in the init container sequence, it does not wait
+ for the container to complete before proceeding to the next init
+ container. Instead, the next init container starts immediately after this
+ init container is started, or after any startupProbe has successfully
+ completed.
+ type: string
+ securityContext:
+ description: |-
+ SecurityContext defines the security options the container should be run with.
+ If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext.
+ More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
+ properties:
+ allowPrivilegeEscalation:
+ description: |-
+ AllowPrivilegeEscalation controls whether a process can gain more
+ privileges than its parent process. This bool directly controls if
+ the no_new_privs flag will be set on the container process.
+ AllowPrivilegeEscalation is true always when the container is:
+ 1) run as Privileged
+ 2) has CAP_SYS_ADMIN
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ appArmorProfile:
+ description: |-
+ appArmorProfile is the AppArmor options to use by this container. If set, this profile
+ overrides the pod's appArmorProfile.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile loaded on the node that should be used.
+ The profile must be preconfigured on the node to work.
+ Must match the loaded name of the profile.
+ Must be set if and only if type is "Localhost".
+ type: string
+ type:
+ description: |-
+ type indicates which kind of AppArmor profile will be applied.
+ Valid options are:
+ Localhost - a profile pre-loaded on the node.
+ RuntimeDefault - the container runtime's default profile.
+ Unconfined - no AppArmor enforcement.
+ type: string
+ required:
+ - type
+ type: object
+ capabilities:
+ description: |-
+ The capabilities to add/drop when running containers.
+ Defaults to the default set of capabilities granted by the container runtime.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ add:
+ description: Added capabilities
+ items:
+ description: Capability represent POSIX capabilities
+ type
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ drop:
+ description: Removed capabilities
+ items:
+ description: Capability represent POSIX capabilities
+ type
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ privileged:
+ description: |-
+ Run container in privileged mode.
+ Processes in privileged containers are essentially equivalent to root on the host.
+ Defaults to false.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ procMount:
+ description: |-
+ procMount denotes the type of proc mount to use for the containers.
+ The default value is Default which uses the container runtime defaults for
+ readonly paths and masked paths.
+ This requires the ProcMountType feature flag to be enabled.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: string
+ readOnlyRootFilesystem:
+ description: |-
+ Whether this container has a read-only root filesystem.
+ Default is false.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ runAsGroup:
+ description: |-
+ The GID to run the entrypoint of the container process.
+ Uses runtime default if unset.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ runAsNonRoot:
+ description: |-
+ Indicates that the container must run as a non-root user.
+ If true, the Kubelet will validate the image at runtime to ensure that it
+ does not run as UID 0 (root) and fail to start the container if it does.
+ If unset or false, no such validation will be performed.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: boolean
+ runAsUser:
+ description: |-
+ The UID to run the entrypoint of the container process.
+ Defaults to user specified in image metadata if unspecified.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ seLinuxOptions:
+ description: |-
+ The SELinux context to be applied to the container.
+ If unspecified, the container runtime will allocate a random SELinux context for each
+ container. May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ level:
+ description: Level is SELinux level label that
+ applies to the container.
+ type: string
+ role:
+ description: Role is a SELinux role label that
+ applies to the container.
+ type: string
+ type:
+ description: Type is a SELinux type label that
+ applies to the container.
+ type: string
+ user:
+ description: User is a SELinux user label that
+ applies to the container.
+ type: string
+ type: object
+ seccompProfile:
+ description: |-
+ The seccomp options to use by this container. If seccomp options are
+ provided at both the pod & container level, the container options
+ override the pod options.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile defined in a file on the node should be used.
+ The profile must be preconfigured on the node to work.
+ Must be a descending path, relative to the kubelet's configured seccomp profile location.
+ Must be set if type is "Localhost". Must NOT be set for any other type.
+ type: string
+ type:
+ description: |-
+ type indicates which kind of seccomp profile will be applied.
+ Valid options are:
+
+ Localhost - a profile defined in a file on the node should be used.
+ RuntimeDefault - the container runtime default profile should be used.
+ Unconfined - no profile should be applied.
+ type: string
+ required:
+ - type
+ type: object
+ windowsOptions:
+ description: |-
+ The Windows specific settings applied to all containers.
+ If unspecified, the options from the PodSecurityContext will be used.
+ If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is linux.
+ properties:
+ gmsaCredentialSpec:
+ description: |-
+ GMSACredentialSpec is where the GMSA admission webhook
+ (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the
+ GMSA credential spec named by the GMSACredentialSpecName field.
+ type: string
+ gmsaCredentialSpecName:
+ description: GMSACredentialSpecName is the name
+ of the GMSA credential spec to use.
+ type: string
+ hostProcess:
+ description: |-
+ HostProcess determines if a container should be run as a 'Host Process' container.
+ All of a Pod's containers must have the same effective HostProcess value
+ (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers).
+ In addition, if HostProcess is true then HostNetwork must also be set to true.
+ type: boolean
+ runAsUserName:
+ description: |-
+ The UserName in Windows to run the entrypoint of the container process.
+ Defaults to the user specified in image metadata if unspecified.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: string
+ type: object
+ type: object
+ startupProbe:
+ description: |-
+ 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: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ properties:
+ exec:
+ description: Exec specifies a command to execute
+ in the container.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
+ format: int32
+ type: integer
+ grpc:
+ description: GRPC specifies a GRPC HealthCheckRequest.
+ properties:
+ port:
+ description: Port number of the gRPC service.
+ Number must be in the range 1 to 65535.
+ format: int32
+ type: integer
+ service:
+ default: ""
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
+ (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
+
+ If this is not specified, the default behavior is defined by gRPC.
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ description: HTTPGet specifies an HTTP GET request
+ to perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers to set in the request.
+ HTTP allows repeated headers.
+ items:
+ description: HTTPHeader describes a custom
+ header to be used in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ periodSeconds:
+ description: |-
+ How often (in seconds) to perform the probe.
+ Default to 10 seconds. Minimum value is 1.
+ format: int32
+ type: integer
+ successThreshold:
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
+ format: int32
+ type: integer
+ tcpSocket:
+ description: TCPSocket specifies a connection to
+ a TCP port.
+ properties:
+ host:
+ description: 'Optional: Host name to connect
+ to, defaults to the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
+ format: int64
+ type: integer
+ timeoutSeconds:
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ type: object
+ stdin:
+ description: |-
+ Whether this container should allocate a buffer for stdin in the container runtime. If this
+ is not set, reads from stdin in the container will always result in EOF.
+ Default is false.
+ type: boolean
+ stdinOnce:
+ description: |-
+ Whether the container runtime should close the stdin channel after it has been opened by
+ a single attach. When stdin is true the stdin stream will remain open across multiple attach
+ sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the
+ first client attaches to stdin, and then remains open and accepts data until the client disconnects,
+ at which time stdin is closed and remains closed until the container is restarted. If this
+ flag is false, a container processes that reads from stdin will never receive an EOF.
+ Default is false
+ type: boolean
+ terminationMessagePath:
+ description: |-
+ Optional: Path at which the file to which the container's termination message
+ will be written is mounted into the container's filesystem.
+ Message written is intended to be brief final status, such as an assertion failure message.
+ Will be truncated by the node if greater than 4096 bytes. The total message length across
+ all containers will be limited to 12kb.
+ Defaults to /dev/termination-log.
+ Cannot be updated.
+ type: string
+ terminationMessagePolicy:
+ description: |-
+ Indicate how the termination message should be populated. File will use the contents of
+ terminationMessagePath to populate the container status message on both success and failure.
+ FallbackToLogsOnError will use the last chunk of container log output if the termination
+ message file is empty and the container exited with an error.
+ The log output is limited to 2048 bytes or 80 lines, whichever is smaller.
+ Defaults to File.
+ Cannot be updated.
+ type: string
+ tty:
+ description: |-
+ Whether this container should allocate a TTY for itself, also requires 'stdin' to be true.
+ Default is false.
+ type: boolean
+ volumeDevices:
+ description: volumeDevices is the list of block devices
+ to be used by the container.
+ items:
+ description: volumeDevice describes a mapping of a
+ raw block device within a container.
+ properties:
+ devicePath:
+ description: devicePath is the path inside of
+ the container that the device will be mapped
+ to.
+ type: string
+ name:
+ description: name must match the name of a persistentVolumeClaim
+ in the pod
+ type: string
+ required:
+ - devicePath
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
+ volumeMounts:
+ description: |-
+ Pod volumes to mount into the container's filesystem.
+ Cannot be updated.
+ items:
+ description: VolumeMount describes a mounting of a
+ Volume within a container.
+ properties:
+ mountPath:
+ description: |-
+ Path within the container at which the volume should be mounted. Must
+ not contain ':'.
+ type: string
+ mountPropagation:
+ description: |-
+ mountPropagation determines how mounts are propagated from the host
+ to container and the other way around.
+ When not set, MountPropagationNone is used.
+ This field is beta in 1.10.
+ When RecursiveReadOnly is set to IfPossible or to Enabled, MountPropagation must be None or unspecified
+ (which defaults to None).
+ type: string
+ name:
+ description: This must match the Name of a Volume.
+ type: string
+ readOnly:
+ description: |-
+ Mounted read-only if true, read-write otherwise (false or unspecified).
+ Defaults to false.
+ type: boolean
+ recursiveReadOnly:
+ description: |-
+ RecursiveReadOnly specifies whether read-only mounts should be handled
+ recursively.
+
+ If ReadOnly is false, this field has no meaning and must be unspecified.
+
+ If ReadOnly is true, and this field is set to Disabled, the mount is not made
+ recursively read-only. If this field is set to IfPossible, the mount is made
+ recursively read-only, if it is supported by the container runtime. If this
+ field is set to Enabled, the mount is made recursively read-only if it is
+ supported by the container runtime, otherwise the pod will not be started and
+ an error will be generated to indicate the reason.
+
+ If this field is set to IfPossible or Enabled, MountPropagation must be set to
+ None (or be unspecified, which defaults to None).
+
+ If this field is not specified, it is treated as an equivalent of Disabled.
+ type: string
+ subPath:
+ description: |-
+ Path within the volume from which the container's volume should be mounted.
+ Defaults to "" (volume's root).
+ type: string
+ subPathExpr:
+ description: |-
+ Expanded path within the volume from which the container's volume should be mounted.
+ Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.
+ Defaults to "" (volume's root).
+ SubPathExpr and SubPath are mutually exclusive.
+ type: string
+ required:
+ - mountPath
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
+ workingDir:
+ description: |-
+ Container's working directory.
+ If not specified, the container runtime's default will be used, which
+ might be configured in the container image.
+ Cannot be updated.
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ instances:
+ description: Instances is the number of executor instances.
+ format: int32
+ minimum: 1
+ type: integer
+ javaOptions:
+ description: |-
+ JavaOptions is a string of extra JVM options to pass to the executors. For instance,
+ GC settings or other logging.
+ type: string
+ labels:
+ additionalProperties:
+ type: string
+ description: Labels are the Kubernetes labels to be added
+ to the pod.
+ type: object
+ lifecycle:
+ description: Lifecycle for running preStop or postStart commands
+ properties:
+ postStart:
+ description: |-
+ PostStart is called immediately after a container is created. If the handler fails,
+ the container is terminated and restarted according to its restart policy.
+ Other management of the container blocks until the hook completes.
+ More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
+ properties:
+ exec:
+ description: Exec specifies a command to execute in
+ the container.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ description: HTTPGet specifies an HTTP GET request
+ to perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers to set in the request.
+ HTTP allows repeated headers.
+ items:
+ description: HTTPHeader describes a custom header
+ to be used in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ description: Sleep represents a duration that the
+ container should sleep.
+ properties:
+ seconds:
+ description: Seconds is the number of seconds
+ to sleep.
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ description: |-
+ Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept
+ for backward compatibility. There is no validation of this field and
+ lifecycle hooks will fail at runtime when it is specified.
+ properties:
+ host:
+ description: 'Optional: Host name to connect to,
+ defaults to the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ preStop:
+ description: |-
+ PreStop is called immediately before a container is terminated due to an
+ API request or management event such as liveness/startup probe failure,
+ preemption, resource contention, etc. The handler is not called if the
+ container crashes or exits. The Pod's termination grace period countdown begins before the
+ PreStop hook is executed. Regardless of the outcome of the handler, the
+ container will eventually terminate within the Pod's termination grace
+ period (unless delayed by finalizers). Other management of the container blocks until the hook completes
+ or until the termination grace period is reached.
+ More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
+ properties:
+ exec:
+ description: Exec specifies a command to execute in
+ the container.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ description: HTTPGet specifies an HTTP GET request
+ to perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers to set in the request.
+ HTTP allows repeated headers.
+ items:
+ description: HTTPHeader describes a custom header
+ to be used in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ description: Sleep represents a duration that the
+ container should sleep.
+ properties:
+ seconds:
+ description: Seconds is the number of seconds
+ to sleep.
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ description: |-
+ Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept
+ for backward compatibility. There is no validation of this field and
+ lifecycle hooks will fail at runtime when it is specified.
+ properties:
+ host:
+ description: 'Optional: Host name to connect to,
+ defaults to the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ type: object
+ memory:
+ description: Memory is the amount of memory to request for
+ the pod.
+ type: string
+ memoryOverhead:
+ description: MemoryOverhead is the amount of off-heap memory
+ to allocate in cluster mode, in MiB unless otherwise specified.
+ type: string
+ nodeSelector:
+ additionalProperties:
+ type: string
+ description: |-
+ NodeSelector is the Kubernetes node selector to be added to the driver and executor pods.
+ This field is mutually exclusive with nodeSelector at SparkApplication level (which will be deprecated).
+ type: object
+ podSecurityContext:
+ description: PodSecurityContext specifies the PodSecurityContext
+ to apply.
+ properties:
+ appArmorProfile:
+ description: |-
+ appArmorProfile is the AppArmor options to use by the containers in this pod.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile loaded on the node that should be used.
+ The profile must be preconfigured on the node to work.
+ Must match the loaded name of the profile.
+ Must be set if and only if type is "Localhost".
+ type: string
+ type:
+ description: |-
+ type indicates which kind of AppArmor profile will be applied.
+ Valid options are:
+ Localhost - a profile pre-loaded on the node.
+ RuntimeDefault - the container runtime's default profile.
+ Unconfined - no AppArmor enforcement.
+ type: string
+ required:
+ - type
+ type: object
+ fsGroup:
+ description: |-
+ A special supplemental group that applies to all containers in a pod.
+ Some volume types allow the Kubelet to change the ownership of that volume
+ to be owned by the pod:
+
+ 1. The owning GID will be the FSGroup
+ 2. The setgid bit is set (new files created in the volume will be owned by FSGroup)
+ 3. The permission bits are OR'd with rw-rw----
+
+ If unset, the Kubelet will not modify the ownership and permissions of any volume.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ fsGroupChangePolicy:
+ description: |-
+ fsGroupChangePolicy defines behavior of changing ownership and permission of the volume
+ before being exposed inside Pod. This field will only apply to
+ volume types which support fsGroup based ownership(and permissions).
+ It will have no effect on ephemeral volume types such as: secret, configmaps
+ and emptydir.
+ Valid values are "OnRootMismatch" and "Always". If not specified, "Always" is used.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: string
+ runAsGroup:
+ description: |-
+ The GID to run the entrypoint of the container process.
+ Uses runtime default if unset.
+ May also be set in SecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence
+ for that container.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ runAsNonRoot:
+ description: |-
+ Indicates that the container must run as a non-root user.
+ If true, the Kubelet will validate the image at runtime to ensure that it
+ does not run as UID 0 (root) and fail to start the container if it does.
+ If unset or false, no such validation will be performed.
+ May also be set in SecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: boolean
+ runAsUser:
+ description: |-
+ The UID to run the entrypoint of the container process.
+ Defaults to user specified in image metadata if unspecified.
+ May also be set in SecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence
+ for that container.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ seLinuxChangePolicy:
+ description: |-
+ seLinuxChangePolicy defines how the container's SELinux label is applied to all volumes used by the Pod.
+ It has no effect on nodes that do not support SELinux or to volumes does not support SELinux.
+ Valid values are "MountOption" and "Recursive".
+
+ "Recursive" means relabeling of all files on all Pod volumes by the container runtime.
+ This may be slow for large volumes, but allows mixing privileged and unprivileged Pods sharing the same volume on the same node.
+
+ "MountOption" mounts all eligible Pod volumes with `-o context` mount option.
+ This requires all Pods that share the same volume to use the same SELinux label.
+ It is not possible to share the same volume among privileged and unprivileged Pods.
+ Eligible volumes are in-tree FibreChannel and iSCSI volumes, and all CSI volumes
+ whose CSI driver announces SELinux support by setting spec.seLinuxMount: true in their
+ CSIDriver instance. Other volumes are always re-labelled recursively.
+ "MountOption" value is allowed only when SELinuxMount feature gate is enabled.
+
+ If not specified and SELinuxMount feature gate is enabled, "MountOption" is used.
+ If not specified and SELinuxMount feature gate is disabled, "MountOption" is used for ReadWriteOncePod volumes
+ and "Recursive" for all other volumes.
+
+ This field affects only Pods that have SELinux label set, either in PodSecurityContext or in SecurityContext of all containers.
+
+ All Pods that use the same volume should use the same seLinuxChangePolicy, otherwise some pods can get stuck in ContainerCreating state.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: string
+ seLinuxOptions:
+ description: |-
+ The SELinux context to be applied to all containers.
+ If unspecified, the container runtime will allocate a random SELinux context for each
+ container. May also be set in SecurityContext. If set in
+ both SecurityContext and PodSecurityContext, the value specified in SecurityContext
+ takes precedence for that container.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ level:
+ description: Level is SELinux level label that applies
+ to the container.
+ type: string
+ role:
+ description: Role is a SELinux role label that applies
+ to the container.
+ type: string
+ type:
+ description: Type is a SELinux type label that applies
+ to the container.
+ type: string
+ user:
+ description: User is a SELinux user label that applies
+ to the container.
+ type: string
+ type: object
+ seccompProfile:
+ description: |-
+ The seccomp options to use by the containers in this pod.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile defined in a file on the node should be used.
+ The profile must be preconfigured on the node to work.
+ Must be a descending path, relative to the kubelet's configured seccomp profile location.
+ Must be set if type is "Localhost". Must NOT be set for any other type.
+ type: string
+ type:
+ description: |-
+ type indicates which kind of seccomp profile will be applied.
+ Valid options are:
+
+ Localhost - a profile defined in a file on the node should be used.
+ RuntimeDefault - the container runtime default profile should be used.
+ Unconfined - no profile should be applied.
+ type: string
+ required:
+ - type
+ type: object
+ supplementalGroups:
+ description: |-
+ A list of groups applied to the first process run in each container, in
+ addition to the container's primary GID and fsGroup (if specified). If
+ the SupplementalGroupsPolicy feature is enabled, the
+ supplementalGroupsPolicy field determines whether these are in addition
+ to or instead of any group memberships defined in the container image.
+ If unspecified, no additional groups are added, though group memberships
+ defined in the container image may still be used, depending on the
+ supplementalGroupsPolicy field.
+ Note that this field cannot be set when spec.os.name is windows.
+ items:
+ format: int64
+ type: integer
+ type: array
+ x-kubernetes-list-type: atomic
+ supplementalGroupsPolicy:
+ description: |-
+ Defines how supplemental groups of the first container processes are calculated.
+ Valid values are "Merge" and "Strict". If not specified, "Merge" is used.
+ (Alpha) Using the field requires the SupplementalGroupsPolicy feature gate to be enabled
+ and the container runtime must implement support for this feature.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: string
+ sysctls:
+ description: |-
+ Sysctls hold a list of namespaced sysctls used for the pod. Pods with unsupported
+ sysctls (by the container runtime) might fail to launch.
+ Note that this field cannot be set when spec.os.name is windows.
+ items:
+ description: Sysctl defines a kernel parameter to be
+ set
+ properties:
+ name:
+ description: Name of a property to set
+ type: string
+ value:
+ description: Value of a property to set
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ windowsOptions:
+ description: |-
+ The Windows specific settings applied to all containers.
+ If unspecified, the options within a container's SecurityContext will be used.
+ If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is linux.
+ properties:
+ gmsaCredentialSpec:
+ description: |-
+ GMSACredentialSpec is where the GMSA admission webhook
+ (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the
+ GMSA credential spec named by the GMSACredentialSpecName field.
+ type: string
+ gmsaCredentialSpecName:
+ description: GMSACredentialSpecName is the name of
+ the GMSA credential spec to use.
+ type: string
+ hostProcess:
+ description: |-
+ HostProcess determines if a container should be run as a 'Host Process' container.
+ All of a Pod's containers must have the same effective HostProcess value
+ (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers).
+ In addition, if HostProcess is true then HostNetwork must also be set to true.
+ type: boolean
+ runAsUserName:
+ description: |-
+ The UserName in Windows to run the entrypoint of the container process.
+ Defaults to the user specified in image metadata if unspecified.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: string
+ type: object
+ type: object
+ ports:
+ description: Ports settings for the pods, following the Kubernetes
+ specifications.
+ items:
+ description: Port represents the port definition in the
+ pods objects.
+ properties:
+ containerPort:
+ format: int32
+ type: integer
+ name:
+ type: string
+ protocol:
+ type: string
+ required:
+ - containerPort
+ - name
+ - protocol
+ type: object
+ type: array
+ priorityClassName:
+ description: PriorityClassName is the name of the PriorityClass
+ for the executor pod.
+ type: string
+ schedulerName:
+ description: SchedulerName specifies the scheduler that will
+ be used for scheduling
+ type: string
+ secrets:
+ description: Secrets carries information of secrets to add
+ to the pod.
+ items:
+ description: SecretInfo captures information of a secret.
+ properties:
+ name:
+ type: string
+ path:
+ type: string
+ secretType:
+ description: SecretType tells the type of a secret.
+ type: string
+ required:
+ - name
+ - path
+ - secretType
+ type: object
+ type: array
+ securityContext:
+ description: SecurityContext specifies the container's SecurityContext
+ to apply.
+ properties:
+ allowPrivilegeEscalation:
+ description: |-
+ AllowPrivilegeEscalation controls whether a process can gain more
+ privileges than its parent process. This bool directly controls if
+ the no_new_privs flag will be set on the container process.
+ AllowPrivilegeEscalation is true always when the container is:
+ 1) run as Privileged
+ 2) has CAP_SYS_ADMIN
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ appArmorProfile:
+ description: |-
+ appArmorProfile is the AppArmor options to use by this container. If set, this profile
+ overrides the pod's appArmorProfile.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile loaded on the node that should be used.
+ The profile must be preconfigured on the node to work.
+ Must match the loaded name of the profile.
+ Must be set if and only if type is "Localhost".
+ type: string
+ type:
+ description: |-
+ type indicates which kind of AppArmor profile will be applied.
+ Valid options are:
+ Localhost - a profile pre-loaded on the node.
+ RuntimeDefault - the container runtime's default profile.
+ Unconfined - no AppArmor enforcement.
+ type: string
+ required:
+ - type
+ type: object
+ capabilities:
+ description: |-
+ The capabilities to add/drop when running containers.
+ Defaults to the default set of capabilities granted by the container runtime.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ add:
+ description: Added capabilities
+ items:
+ description: Capability represent POSIX capabilities
+ type
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ drop:
+ description: Removed capabilities
+ items:
+ description: Capability represent POSIX capabilities
+ type
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ privileged:
+ description: |-
+ Run container in privileged mode.
+ Processes in privileged containers are essentially equivalent to root on the host.
+ Defaults to false.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ procMount:
+ description: |-
+ procMount denotes the type of proc mount to use for the containers.
+ The default value is Default which uses the container runtime defaults for
+ readonly paths and masked paths.
+ This requires the ProcMountType feature flag to be enabled.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: string
+ readOnlyRootFilesystem:
+ description: |-
+ Whether this container has a read-only root filesystem.
+ Default is false.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ runAsGroup:
+ description: |-
+ The GID to run the entrypoint of the container process.
+ Uses runtime default if unset.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ runAsNonRoot:
+ description: |-
+ Indicates that the container must run as a non-root user.
+ If true, the Kubelet will validate the image at runtime to ensure that it
+ does not run as UID 0 (root) and fail to start the container if it does.
+ If unset or false, no such validation will be performed.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: boolean
+ runAsUser:
+ description: |-
+ The UID to run the entrypoint of the container process.
+ Defaults to user specified in image metadata if unspecified.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ seLinuxOptions:
+ description: |-
+ The SELinux context to be applied to the container.
+ If unspecified, the container runtime will allocate a random SELinux context for each
+ container. May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ level:
+ description: Level is SELinux level label that applies
+ to the container.
+ type: string
+ role:
+ description: Role is a SELinux role label that applies
+ to the container.
+ type: string
+ type:
+ description: Type is a SELinux type label that applies
+ to the container.
+ type: string
+ user:
+ description: User is a SELinux user label that applies
+ to the container.
+ type: string
+ type: object
+ seccompProfile:
+ description: |-
+ The seccomp options to use by this container. If seccomp options are
+ provided at both the pod & container level, the container options
+ override the pod options.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile defined in a file on the node should be used.
+ The profile must be preconfigured on the node to work.
+ Must be a descending path, relative to the kubelet's configured seccomp profile location.
+ Must be set if type is "Localhost". Must NOT be set for any other type.
+ type: string
+ type:
+ description: |-
+ type indicates which kind of seccomp profile will be applied.
+ Valid options are:
+
+ Localhost - a profile defined in a file on the node should be used.
+ RuntimeDefault - the container runtime default profile should be used.
+ Unconfined - no profile should be applied.
+ type: string
+ required:
+ - type
+ type: object
+ windowsOptions:
+ description: |-
+ The Windows specific settings applied to all containers.
+ If unspecified, the options from the PodSecurityContext will be used.
+ If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is linux.
+ properties:
+ gmsaCredentialSpec:
+ description: |-
+ GMSACredentialSpec is where the GMSA admission webhook
+ (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the
+ GMSA credential spec named by the GMSACredentialSpecName field.
+ type: string
+ gmsaCredentialSpecName:
+ description: GMSACredentialSpecName is the name of
+ the GMSA credential spec to use.
+ type: string
+ hostProcess:
+ description: |-
+ HostProcess determines if a container should be run as a 'Host Process' container.
+ All of a Pod's containers must have the same effective HostProcess value
+ (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers).
+ In addition, if HostProcess is true then HostNetwork must also be set to true.
+ type: boolean
+ runAsUserName:
+ description: |-
+ The UserName in Windows to run the entrypoint of the container process.
+ Defaults to the user specified in image metadata if unspecified.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: string
+ type: object
+ type: object
+ serviceAccount:
+ description: ServiceAccount is the name of the custom Kubernetes
+ service account used by the pod.
+ type: string
+ shareProcessNamespace:
+ description: ShareProcessNamespace settings for the pod, following
+ the Kubernetes specifications.
+ type: boolean
+ sidecars:
+ description: Sidecars is a list of sidecar containers that
+ run along side the main Spark container.
+ items:
+ description: A single application container that you want
+ to run within a pod.
+ properties:
+ args:
+ description: |-
+ Arguments to the entrypoint.
+ The container image's CMD is used if this is not provided.
+ Variable references $(VAR_NAME) are expanded using the container's environment. If a variable
+ cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will
+ produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless
+ of whether the variable exists or not. Cannot be updated.
+ More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ command:
+ description: |-
+ Entrypoint array. Not executed within a shell.
+ The container image's ENTRYPOINT is used if this is not provided.
+ Variable references $(VAR_NAME) are expanded using the container's environment. If a variable
+ cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will
+ produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless
+ of whether the variable exists or not. Cannot be updated.
+ More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ env:
+ description: |-
+ List of environment variables to set in the container.
+ Cannot be updated.
+ items:
+ description: EnvVar represents an environment variable
+ present in a Container.
+ properties:
+ name:
+ description: Name of the environment variable.
+ Must be a C_IDENTIFIER.
+ type: string
+ value:
+ description: |-
+ Variable references $(VAR_NAME) are expanded
+ using the previously defined environment variables in the container and
+ any service environment variables. If a variable cannot be resolved,
+ the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e.
+ "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)".
+ Escaped references will never be expanded, regardless of whether the variable
+ exists or not.
+ Defaults to "".
+ type: string
+ valueFrom:
+ description: Source for the environment variable's
+ value. Cannot be used if value is not empty.
+ properties:
+ configMapKeyRef:
+ description: Selects a key of a ConfigMap.
+ properties:
+ key:
+ description: The key to select.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the ConfigMap
+ or its key must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ fieldRef:
+ description: |-
+ Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`,
+ spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.
+ properties:
+ apiVersion:
+ description: Version of the schema the
+ FieldPath is written in terms of, defaults
+ to "v1".
+ type: string
+ fieldPath:
+ description: Path of the field to select
+ in the specified API version.
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ resourceFieldRef:
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported.
+ properties:
+ containerName:
+ description: 'Container name: required
+ for volumes, optional for env vars'
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ description: Specifies the output format
+ of the exposed resources, defaults to
+ "1"
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ description: 'Required: resource to select'
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ secretKeyRef:
+ description: Selects a key of a secret in
+ the pod's namespace
+ properties:
+ key:
+ description: The key of the secret to
+ select from. Must be a valid secret
+ key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret
+ or its key must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ envFrom:
+ description: |-
+ List of sources to populate environment variables in the container.
+ The keys defined within a source must be a C_IDENTIFIER. All invalid keys
+ will be reported as an event when the container is starting. When a key exists in multiple
+ sources, the value associated with the last source will take precedence.
+ Values defined by an Env with a duplicate key will take precedence.
+ Cannot be updated.
+ items:
+ description: EnvFromSource represents the source of
+ a set of ConfigMaps
+ properties:
+ configMapRef:
+ description: The ConfigMap to select from
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the ConfigMap
+ must be defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ prefix:
+ description: An optional identifier to prepend
+ to each key in the ConfigMap. Must be a C_IDENTIFIER.
+ type: string
+ secretRef:
+ description: The Secret to select from
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret must
+ be defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ image:
+ description: |-
+ Container image name.
+ More info: https://kubernetes.io/docs/concepts/containers/images
+ This field is optional to allow higher level config management to default or override
+ container images in workload controllers like Deployments and StatefulSets.
+ type: string
+ imagePullPolicy:
+ description: |-
+ Image pull policy.
+ One of Always, Never, IfNotPresent.
+ Defaults to Always if :latest tag is specified, or IfNotPresent otherwise.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/containers/images#updating-images
+ type: string
+ lifecycle:
+ description: |-
+ Actions that the management system should take in response to container lifecycle events.
+ Cannot be updated.
+ properties:
+ postStart:
+ description: |-
+ PostStart is called immediately after a container is created. If the handler fails,
+ the container is terminated and restarted according to its restart policy.
+ Other management of the container blocks until the hook completes.
+ More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
+ properties:
+ exec:
+ description: Exec specifies a command to execute
+ in the container.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ description: HTTPGet specifies an HTTP GET request
+ to perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers to set in the
+ request. HTTP allows repeated headers.
+ items:
+ description: HTTPHeader describes a custom
+ header to be used in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access on the HTTP
+ server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ description: Sleep represents a duration that
+ the container should sleep.
+ properties:
+ seconds:
+ description: Seconds is the number of seconds
+ to sleep.
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ description: |-
+ Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept
+ for backward compatibility. There is no validation of this field and
+ lifecycle hooks will fail at runtime when it is specified.
+ properties:
+ host:
+ description: 'Optional: Host name to connect
+ to, defaults to the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ preStop:
+ description: |-
+ PreStop is called immediately before a container is terminated due to an
+ API request or management event such as liveness/startup probe failure,
+ preemption, resource contention, etc. The handler is not called if the
+ container crashes or exits. The Pod's termination grace period countdown begins before the
+ PreStop hook is executed. Regardless of the outcome of the handler, the
+ container will eventually terminate within the Pod's termination grace
+ period (unless delayed by finalizers). Other management of the container blocks until the hook completes
+ or until the termination grace period is reached.
+ More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
+ properties:
+ exec:
+ description: Exec specifies a command to execute
+ in the container.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ description: HTTPGet specifies an HTTP GET request
+ to perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers to set in the
+ request. HTTP allows repeated headers.
+ items:
+ description: HTTPHeader describes a custom
+ header to be used in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access on the HTTP
+ server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ description: Sleep represents a duration that
+ the container should sleep.
+ properties:
+ seconds:
+ description: Seconds is the number of seconds
+ to sleep.
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ description: |-
+ Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept
+ for backward compatibility. There is no validation of this field and
+ lifecycle hooks will fail at runtime when it is specified.
+ properties:
+ host:
+ description: 'Optional: Host name to connect
+ to, defaults to the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ type: object
+ livenessProbe:
+ description: |-
+ Periodic probe of container liveness.
+ Container will be restarted if the probe fails.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ properties:
+ exec:
+ description: Exec specifies a command to execute
+ in the container.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
+ format: int32
+ type: integer
+ grpc:
+ description: GRPC specifies a GRPC HealthCheckRequest.
+ properties:
+ port:
+ description: Port number of the gRPC service.
+ Number must be in the range 1 to 65535.
+ format: int32
+ type: integer
+ service:
+ default: ""
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
+ (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
+
+ If this is not specified, the default behavior is defined by gRPC.
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ description: HTTPGet specifies an HTTP GET request
+ to perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers to set in the request.
+ HTTP allows repeated headers.
+ items:
+ description: HTTPHeader describes a custom
+ header to be used in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ periodSeconds:
+ description: |-
+ How often (in seconds) to perform the probe.
+ Default to 10 seconds. Minimum value is 1.
+ format: int32
+ type: integer
+ successThreshold:
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
+ format: int32
+ type: integer
+ tcpSocket:
+ description: TCPSocket specifies a connection to
+ a TCP port.
+ properties:
+ host:
+ description: 'Optional: Host name to connect
+ to, defaults to the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
+ format: int64
+ type: integer
+ timeoutSeconds:
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ type: object
+ name:
+ description: |-
+ Name of the container specified as a DNS_LABEL.
+ Each container in a pod must have a unique name (DNS_LABEL).
+ Cannot be updated.
+ type: string
+ ports:
+ description: |-
+ List of ports to expose from the container. Not specifying a port here
+ DOES NOT prevent that port from being exposed. Any port which is
+ listening on the default "0.0.0.0" address inside a container will be
+ accessible from the network.
+ Modifying this array with strategic merge patch may corrupt the data.
+ For more information See https://github.com/kubernetes/kubernetes/issues/108255.
+ Cannot be updated.
+ items:
+ description: ContainerPort represents a network port
+ in a single container.
+ properties:
+ containerPort:
+ description: |-
+ Number of port to expose on the pod's IP address.
+ This must be a valid port number, 0 < x < 65536.
+ format: int32
+ type: integer
+ hostIP:
+ description: What host IP to bind the external
+ port to.
+ type: string
+ hostPort:
+ description: |-
+ Number of port to expose on the host.
+ If specified, this must be a valid port number, 0 < x < 65536.
+ If HostNetwork is specified, this must match ContainerPort.
+ Most containers do not need this.
+ format: int32
+ type: integer
+ name:
+ description: |-
+ If specified, this must be an IANA_SVC_NAME and unique within the pod. Each
+ named port in a pod must have a unique name. Name for the port that can be
+ referred to by services.
+ type: string
+ protocol:
+ default: TCP
+ description: |-
+ Protocol for port. Must be UDP, TCP, or SCTP.
+ Defaults to "TCP".
+ type: string
+ required:
+ - containerPort
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - containerPort
+ - protocol
+ x-kubernetes-list-type: map
+ readinessProbe:
+ description: |-
+ Periodic probe of container service readiness.
+ Container will be removed from service endpoints if the probe fails.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ properties:
+ exec:
+ description: Exec specifies a command to execute
+ in the container.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
+ format: int32
+ type: integer
+ grpc:
+ description: GRPC specifies a GRPC HealthCheckRequest.
+ properties:
+ port:
+ description: Port number of the gRPC service.
+ Number must be in the range 1 to 65535.
+ format: int32
+ type: integer
+ service:
+ default: ""
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
+ (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
+
+ If this is not specified, the default behavior is defined by gRPC.
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ description: HTTPGet specifies an HTTP GET request
+ to perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers to set in the request.
+ HTTP allows repeated headers.
+ items:
+ description: HTTPHeader describes a custom
+ header to be used in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ periodSeconds:
+ description: |-
+ How often (in seconds) to perform the probe.
+ Default to 10 seconds. Minimum value is 1.
+ format: int32
+ type: integer
+ successThreshold:
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
+ format: int32
+ type: integer
+ tcpSocket:
+ description: TCPSocket specifies a connection to
+ a TCP port.
+ properties:
+ host:
+ description: 'Optional: Host name to connect
+ to, defaults to the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
+ format: int64
+ type: integer
+ timeoutSeconds:
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ type: object
+ resizePolicy:
+ description: Resources resize policy for the container.
+ items:
+ description: ContainerResizePolicy represents resource
+ resize policy for the container.
+ properties:
+ resourceName:
+ description: |-
+ Name of the resource to which this resource resize policy applies.
+ Supported values: cpu, memory.
+ type: string
+ restartPolicy:
+ description: |-
+ Restart policy to apply when specified resource is resized.
+ If not specified, it defaults to NotRequired.
+ type: string
+ required:
+ - resourceName
+ - restartPolicy
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ resources:
+ description: |-
+ Compute Resources required by this container.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ properties:
+ claims:
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+ This field is immutable. It can only be set for containers.
+ items:
+ description: ResourceClaim references one entry
+ in PodSpec.ResourceClaims.
+ properties:
+ name:
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
+ type: string
+ request:
+ description: |-
+ Request is the name chosen for a request in the referenced claim.
+ If empty, everything from the claim is made available, otherwise
+ only the result of this request.
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ limits:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ type: object
+ requests:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ type: object
+ type: object
+ restartPolicy:
+ description: |-
+ RestartPolicy defines the restart behavior of individual containers in a pod.
+ This field may only be set for init containers, and the only allowed value is "Always".
+ For non-init containers or when this field is not specified,
+ the restart behavior is defined by the Pod's restart policy and the container type.
+ Setting the RestartPolicy as "Always" for the init container will have the following effect:
+ this init container will be continually restarted on
+ exit until all regular containers have terminated. Once all regular
+ containers have completed, all init containers with restartPolicy "Always"
+ will be shut down. This lifecycle differs from normal init containers and
+ is often referred to as a "sidecar" container. Although this init
+ container still starts in the init container sequence, it does not wait
+ for the container to complete before proceeding to the next init
+ container. Instead, the next init container starts immediately after this
+ init container is started, or after any startupProbe has successfully
+ completed.
+ type: string
+ securityContext:
+ description: |-
+ SecurityContext defines the security options the container should be run with.
+ If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext.
+ More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
+ properties:
+ allowPrivilegeEscalation:
+ description: |-
+ AllowPrivilegeEscalation controls whether a process can gain more
+ privileges than its parent process. This bool directly controls if
+ the no_new_privs flag will be set on the container process.
+ AllowPrivilegeEscalation is true always when the container is:
+ 1) run as Privileged
+ 2) has CAP_SYS_ADMIN
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ appArmorProfile:
+ description: |-
+ appArmorProfile is the AppArmor options to use by this container. If set, this profile
+ overrides the pod's appArmorProfile.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile loaded on the node that should be used.
+ The profile must be preconfigured on the node to work.
+ Must match the loaded name of the profile.
+ Must be set if and only if type is "Localhost".
+ type: string
+ type:
+ description: |-
+ type indicates which kind of AppArmor profile will be applied.
+ Valid options are:
+ Localhost - a profile pre-loaded on the node.
+ RuntimeDefault - the container runtime's default profile.
+ Unconfined - no AppArmor enforcement.
+ type: string
+ required:
+ - type
+ type: object
+ capabilities:
+ description: |-
+ The capabilities to add/drop when running containers.
+ Defaults to the default set of capabilities granted by the container runtime.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ add:
+ description: Added capabilities
+ items:
+ description: Capability represent POSIX capabilities
+ type
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ drop:
+ description: Removed capabilities
+ items:
+ description: Capability represent POSIX capabilities
+ type
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ privileged:
+ description: |-
+ Run container in privileged mode.
+ Processes in privileged containers are essentially equivalent to root on the host.
+ Defaults to false.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ procMount:
+ description: |-
+ procMount denotes the type of proc mount to use for the containers.
+ The default value is Default which uses the container runtime defaults for
+ readonly paths and masked paths.
+ This requires the ProcMountType feature flag to be enabled.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: string
+ readOnlyRootFilesystem:
+ description: |-
+ Whether this container has a read-only root filesystem.
+ Default is false.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ runAsGroup:
+ description: |-
+ The GID to run the entrypoint of the container process.
+ Uses runtime default if unset.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ runAsNonRoot:
+ description: |-
+ Indicates that the container must run as a non-root user.
+ If true, the Kubelet will validate the image at runtime to ensure that it
+ does not run as UID 0 (root) and fail to start the container if it does.
+ If unset or false, no such validation will be performed.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: boolean
+ runAsUser:
+ description: |-
+ The UID to run the entrypoint of the container process.
+ Defaults to user specified in image metadata if unspecified.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ seLinuxOptions:
+ description: |-
+ The SELinux context to be applied to the container.
+ If unspecified, the container runtime will allocate a random SELinux context for each
+ container. May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ level:
+ description: Level is SELinux level label that
+ applies to the container.
+ type: string
+ role:
+ description: Role is a SELinux role label that
+ applies to the container.
+ type: string
+ type:
+ description: Type is a SELinux type label that
+ applies to the container.
+ type: string
+ user:
+ description: User is a SELinux user label that
+ applies to the container.
+ type: string
+ type: object
+ seccompProfile:
+ description: |-
+ The seccomp options to use by this container. If seccomp options are
+ provided at both the pod & container level, the container options
+ override the pod options.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile defined in a file on the node should be used.
+ The profile must be preconfigured on the node to work.
+ Must be a descending path, relative to the kubelet's configured seccomp profile location.
+ Must be set if type is "Localhost". Must NOT be set for any other type.
+ type: string
+ type:
+ description: |-
+ type indicates which kind of seccomp profile will be applied.
+ Valid options are:
+
+ Localhost - a profile defined in a file on the node should be used.
+ RuntimeDefault - the container runtime default profile should be used.
+ Unconfined - no profile should be applied.
+ type: string
+ required:
+ - type
+ type: object
+ windowsOptions:
+ description: |-
+ The Windows specific settings applied to all containers.
+ If unspecified, the options from the PodSecurityContext will be used.
+ If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is linux.
+ properties:
+ gmsaCredentialSpec:
+ description: |-
+ GMSACredentialSpec is where the GMSA admission webhook
+ (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the
+ GMSA credential spec named by the GMSACredentialSpecName field.
+ type: string
+ gmsaCredentialSpecName:
+ description: GMSACredentialSpecName is the name
+ of the GMSA credential spec to use.
+ type: string
+ hostProcess:
+ description: |-
+ HostProcess determines if a container should be run as a 'Host Process' container.
+ All of a Pod's containers must have the same effective HostProcess value
+ (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers).
+ In addition, if HostProcess is true then HostNetwork must also be set to true.
+ type: boolean
+ runAsUserName:
+ description: |-
+ The UserName in Windows to run the entrypoint of the container process.
+ Defaults to the user specified in image metadata if unspecified.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: string
+ type: object
+ type: object
+ startupProbe:
+ description: |-
+ 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: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ properties:
+ exec:
+ description: Exec specifies a command to execute
+ in the container.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
+ format: int32
+ type: integer
+ grpc:
+ description: GRPC specifies a GRPC HealthCheckRequest.
+ properties:
+ port:
+ description: Port number of the gRPC service.
+ Number must be in the range 1 to 65535.
+ format: int32
+ type: integer
+ service:
+ default: ""
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
+ (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
+
+ If this is not specified, the default behavior is defined by gRPC.
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ description: HTTPGet specifies an HTTP GET request
+ to perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers to set in the request.
+ HTTP allows repeated headers.
+ items:
+ description: HTTPHeader describes a custom
+ header to be used in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ periodSeconds:
+ description: |-
+ How often (in seconds) to perform the probe.
+ Default to 10 seconds. Minimum value is 1.
+ format: int32
+ type: integer
+ successThreshold:
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
+ format: int32
+ type: integer
+ tcpSocket:
+ description: TCPSocket specifies a connection to
+ a TCP port.
+ properties:
+ host:
+ description: 'Optional: Host name to connect
+ to, defaults to the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
+ format: int64
+ type: integer
+ timeoutSeconds:
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ type: object
+ stdin:
+ description: |-
+ Whether this container should allocate a buffer for stdin in the container runtime. If this
+ is not set, reads from stdin in the container will always result in EOF.
+ Default is false.
+ type: boolean
+ stdinOnce:
+ description: |-
+ Whether the container runtime should close the stdin channel after it has been opened by
+ a single attach. When stdin is true the stdin stream will remain open across multiple attach
+ sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the
+ first client attaches to stdin, and then remains open and accepts data until the client disconnects,
+ at which time stdin is closed and remains closed until the container is restarted. If this
+ flag is false, a container processes that reads from stdin will never receive an EOF.
+ Default is false
+ type: boolean
+ terminationMessagePath:
+ description: |-
+ Optional: Path at which the file to which the container's termination message
+ will be written is mounted into the container's filesystem.
+ Message written is intended to be brief final status, such as an assertion failure message.
+ Will be truncated by the node if greater than 4096 bytes. The total message length across
+ all containers will be limited to 12kb.
+ Defaults to /dev/termination-log.
+ Cannot be updated.
+ type: string
+ terminationMessagePolicy:
+ description: |-
+ Indicate how the termination message should be populated. File will use the contents of
+ terminationMessagePath to populate the container status message on both success and failure.
+ FallbackToLogsOnError will use the last chunk of container log output if the termination
+ message file is empty and the container exited with an error.
+ The log output is limited to 2048 bytes or 80 lines, whichever is smaller.
+ Defaults to File.
+ Cannot be updated.
+ type: string
+ tty:
+ description: |-
+ Whether this container should allocate a TTY for itself, also requires 'stdin' to be true.
+ Default is false.
+ type: boolean
+ volumeDevices:
+ description: volumeDevices is the list of block devices
+ to be used by the container.
+ items:
+ description: volumeDevice describes a mapping of a
+ raw block device within a container.
+ properties:
+ devicePath:
+ description: devicePath is the path inside of
+ the container that the device will be mapped
+ to.
+ type: string
+ name:
+ description: name must match the name of a persistentVolumeClaim
+ in the pod
+ type: string
+ required:
+ - devicePath
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
+ volumeMounts:
+ description: |-
+ Pod volumes to mount into the container's filesystem.
+ Cannot be updated.
+ items:
+ description: VolumeMount describes a mounting of a
+ Volume within a container.
+ properties:
+ mountPath:
+ description: |-
+ Path within the container at which the volume should be mounted. Must
+ not contain ':'.
+ type: string
+ mountPropagation:
+ description: |-
+ mountPropagation determines how mounts are propagated from the host
+ to container and the other way around.
+ When not set, MountPropagationNone is used.
+ This field is beta in 1.10.
+ When RecursiveReadOnly is set to IfPossible or to Enabled, MountPropagation must be None or unspecified
+ (which defaults to None).
+ type: string
+ name:
+ description: This must match the Name of a Volume.
+ type: string
+ readOnly:
+ description: |-
+ Mounted read-only if true, read-write otherwise (false or unspecified).
+ Defaults to false.
+ type: boolean
+ recursiveReadOnly:
+ description: |-
+ RecursiveReadOnly specifies whether read-only mounts should be handled
+ recursively.
+
+ If ReadOnly is false, this field has no meaning and must be unspecified.
+
+ If ReadOnly is true, and this field is set to Disabled, the mount is not made
+ recursively read-only. If this field is set to IfPossible, the mount is made
+ recursively read-only, if it is supported by the container runtime. If this
+ field is set to Enabled, the mount is made recursively read-only if it is
+ supported by the container runtime, otherwise the pod will not be started and
+ an error will be generated to indicate the reason.
+
+ If this field is set to IfPossible or Enabled, MountPropagation must be set to
+ None (or be unspecified, which defaults to None).
+
+ If this field is not specified, it is treated as an equivalent of Disabled.
+ type: string
+ subPath:
+ description: |-
+ Path within the volume from which the container's volume should be mounted.
+ Defaults to "" (volume's root).
+ type: string
+ subPathExpr:
+ description: |-
+ Expanded path within the volume from which the container's volume should be mounted.
+ Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.
+ Defaults to "" (volume's root).
+ SubPathExpr and SubPath are mutually exclusive.
+ type: string
+ required:
+ - mountPath
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
+ workingDir:
+ description: |-
+ Container's working directory.
+ If not specified, the container runtime's default will be used, which
+ might be configured in the container image.
+ Cannot be updated.
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ template:
+ description: |-
+ Template is a pod template that can be used to define the driver or executor pod configurations that Spark configurations do not support.
+ Spark version >= 3.0.0 is required.
+ Ref: https://spark.apache.org/docs/latest/running-on-kubernetes.html#pod-template.
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ terminationGracePeriodSeconds:
+ description: Termination grace period seconds for the pod
+ format: int64
+ type: integer
+ tolerations:
+ description: Tolerations specifies the tolerations listed
+ in ".spec.tolerations" to be applied to the pod.
+ items:
+ description: |-
+ The pod this Toleration is attached to tolerates any taint that matches
+ the triple using the matching operator .
+ properties:
+ effect:
+ description: |-
+ Effect indicates the taint effect to match. Empty means match all taint effects.
+ When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute.
+ type: string
+ key:
+ description: |-
+ Key is the taint key that the toleration applies to. Empty means match all taint keys.
+ If the key is empty, operator must be Exists; this combination means to match all values and all keys.
+ type: string
+ operator:
+ description: |-
+ Operator represents a key's relationship to the value.
+ Valid operators are Exists and Equal. Defaults to Equal.
+ Exists is equivalent to wildcard for value, so that a pod can
+ tolerate all taints of a particular category.
+ type: string
+ tolerationSeconds:
+ description: |-
+ TolerationSeconds represents the period of time the toleration (which must be
+ of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default,
+ it is not set, which means tolerate the taint forever (do not evict). Zero and
+ negative values will be treated as 0 (evict immediately) by the system.
+ format: int64
+ type: integer
+ value:
+ description: |-
+ Value is the taint value the toleration matches to.
+ If the operator is Exists, the value should be empty, otherwise just a regular string.
+ type: string
+ type: object
+ type: array
+ volumeMounts:
+ description: VolumeMounts specifies the volumes listed in
+ ".spec.volumes" to mount into the main container's filesystem.
+ items:
+ description: VolumeMount describes a mounting of a Volume
+ within a container.
+ properties:
+ mountPath:
+ description: |-
+ Path within the container at which the volume should be mounted. Must
+ not contain ':'.
+ type: string
+ mountPropagation:
+ description: |-
+ mountPropagation determines how mounts are propagated from the host
+ to container and the other way around.
+ When not set, MountPropagationNone is used.
+ This field is beta in 1.10.
+ When RecursiveReadOnly is set to IfPossible or to Enabled, MountPropagation must be None or unspecified
+ (which defaults to None).
+ type: string
+ name:
+ description: This must match the Name of a Volume.
+ type: string
+ readOnly:
+ description: |-
+ Mounted read-only if true, read-write otherwise (false or unspecified).
+ Defaults to false.
+ type: boolean
+ recursiveReadOnly:
+ description: |-
+ RecursiveReadOnly specifies whether read-only mounts should be handled
+ recursively.
+
+ If ReadOnly is false, this field has no meaning and must be unspecified.
+
+ If ReadOnly is true, and this field is set to Disabled, the mount is not made
+ recursively read-only. If this field is set to IfPossible, the mount is made
+ recursively read-only, if it is supported by the container runtime. If this
+ field is set to Enabled, the mount is made recursively read-only if it is
+ supported by the container runtime, otherwise the pod will not be started and
+ an error will be generated to indicate the reason.
+
+ If this field is set to IfPossible or Enabled, MountPropagation must be set to
+ None (or be unspecified, which defaults to None).
+
+ If this field is not specified, it is treated as an equivalent of Disabled.
+ type: string
+ subPath:
+ description: |-
+ Path within the volume from which the container's volume should be mounted.
+ Defaults to "" (volume's root).
+ type: string
+ subPathExpr:
+ description: |-
+ Expanded path within the volume from which the container's volume should be mounted.
+ Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.
+ Defaults to "" (volume's root).
+ SubPathExpr and SubPath are mutually exclusive.
+ type: string
+ required:
+ - mountPath
+ - name
+ type: object
+ type: array
+ type: object
+ failureRetries:
+ description: |-
+ FailureRetries is the number of times to retry a failed application before giving up.
+ This is best effort and actual retry attempts can be >= the value specified.
+ format: int32
+ type: integer
+ hadoopConf:
+ additionalProperties:
+ type: string
+ description: |-
+ HadoopConf carries user-specified Hadoop configuration properties as they would use the "--conf" option
+ in spark-submit. The SparkApplication controller automatically adds prefix "spark.hadoop." to Hadoop
+ configuration properties.
+ type: object
+ hadoopConfigMap:
+ description: |-
+ HadoopConfigMap carries the name of the ConfigMap containing Hadoop configuration files such as core-site.xml.
+ The controller will add environment variable HADOOP_CONF_DIR to the path where the ConfigMap is mounted to.
+ type: string
+ image:
+ description: |-
+ Image is the container image for the driver, executor, and init-container. Any custom container images for the
+ driver, executor, or init-container takes precedence over this.
+ type: string
+ imagePullPolicy:
+ description: ImagePullPolicy is the image pull policy for the
+ driver, executor, and init-container.
+ type: string
+ imagePullSecrets:
+ description: ImagePullSecrets is the list of image-pull secrets.
+ items:
+ type: string
+ type: array
+ mainApplicationFile:
+ description: MainFile is the path to a bundled JAR, Python, or
+ R file of the application.
+ type: string
+ mainClass:
+ description: |-
+ MainClass is the fully-qualified main class of the Spark application.
+ This only applies to Java/Scala Spark applications.
+ type: string
+ memoryOverheadFactor:
+ description: |-
+ This sets the Memory Overhead Factor that will allocate memory to non-JVM memory.
+ For JVM-based jobs this value will default to 0.10, for non-JVM jobs 0.40. Value of this field will
+ be overridden by `Spec.Driver.MemoryOverhead` and `Spec.Executor.MemoryOverhead` if they are set.
+ type: string
+ mode:
+ description: Mode is the deployment mode of the Spark application.
+ enum:
+ - cluster
+ - client
+ type: string
+ monitoring:
+ description: Monitoring configures how monitoring is handled.
+ properties:
+ exposeDriverMetrics:
+ description: ExposeDriverMetrics specifies whether to expose
+ metrics on the driver.
+ type: boolean
+ exposeExecutorMetrics:
+ description: ExposeExecutorMetrics specifies whether to expose
+ metrics on the executors.
+ type: boolean
+ metricsProperties:
+ description: |-
+ MetricsProperties is the content of a custom metrics.properties for configuring the Spark metric system.
+ If not specified, the content in spark-docker/conf/metrics.properties will be used.
+ type: string
+ metricsPropertiesFile:
+ description: |-
+ MetricsPropertiesFile is the container local path of file metrics.properties for configuring
+ the Spark metric system. If not specified, value /etc/metrics/conf/metrics.properties will be used.
+ type: string
+ prometheus:
+ description: Prometheus is for configuring the Prometheus
+ JMX exporter.
+ properties:
+ configFile:
+ description: |-
+ ConfigFile is the path to the custom Prometheus configuration file provided in the Spark image.
+ ConfigFile takes precedence over Configuration, which is shown below.
+ type: string
+ configuration:
+ description: |-
+ Configuration is the content of the Prometheus configuration needed by the Prometheus JMX exporter.
+ If not specified, the content in spark-docker/conf/prometheus.yaml will be used.
+ Configuration has no effect if ConfigFile is set.
+ type: string
+ jmxExporterJar:
+ description: JmxExporterJar is the path to the Prometheus
+ JMX exporter jar in the container.
+ type: string
+ port:
+ description: |-
+ Port is the port of the HTTP server run by the Prometheus JMX exporter.
+ If not specified, 8090 will be used as the default.
+ format: int32
+ maximum: 49151
+ minimum: 1024
+ type: integer
+ portName:
+ description: |-
+ PortName is the port name of prometheus JMX exporter port.
+ If not specified, jmx-exporter will be used as the default.
+ type: string
+ required:
+ - jmxExporterJar
+ type: object
+ required:
+ - exposeDriverMetrics
+ - exposeExecutorMetrics
+ type: object
+ nodeSelector:
+ additionalProperties:
+ type: string
+ description: |-
+ NodeSelector is the Kubernetes node selector to be added to the driver and executor pods.
+ This field is mutually exclusive with nodeSelector at podSpec level (driver or executor).
+ This field will be deprecated in future versions (at SparkApplicationSpec level).
+ type: object
+ proxyUser:
+ description: |-
+ ProxyUser specifies the user to impersonate when submitting the application.
+ It maps to the command-line flag "--proxy-user" in spark-submit.
+ type: string
+ pythonVersion:
+ description: |-
+ This sets the major Python version of the docker
+ image used to run the driver and executor containers. Can either be 2 or 3, default 2.
+ enum:
+ - "2"
+ - "3"
+ type: string
+ restartPolicy:
+ description: RestartPolicy defines the policy on if and in which
+ conditions the controller should restart an application.
+ properties:
+ onFailureRetries:
+ description: OnFailureRetries the number of times to retry
+ running an application before giving up.
+ format: int32
+ minimum: 0
+ type: integer
+ onFailureRetryInterval:
+ description: OnFailureRetryInterval is the interval in seconds
+ between retries on failed runs.
+ format: int64
+ minimum: 1
+ type: integer
+ onSubmissionFailureRetries:
+ description: |-
+ OnSubmissionFailureRetries is the number of times to retry submitting an application before giving up.
+ This is best effort and actual retry attempts can be >= the value specified due to caching.
+ These are required if RestartPolicy is OnFailure.
+ format: int32
+ minimum: 0
+ type: integer
+ onSubmissionFailureRetryInterval:
+ description: OnSubmissionFailureRetryInterval is the interval
+ in seconds between retries on failed submissions.
+ format: int64
+ minimum: 1
+ type: integer
+ type:
+ description: Type specifies the RestartPolicyType.
+ enum:
+ - Never
+ - Always
+ - OnFailure
+ type: string
+ type: object
+ retryInterval:
+ description: RetryInterval is the unit of intervals in seconds
+ between submission retries.
+ format: int64
+ type: integer
+ sparkConf:
+ additionalProperties:
+ type: string
+ description: |-
+ SparkConf carries user-specified Spark configuration properties as they would use the "--conf" option in
+ spark-submit.
+ type: object
+ sparkConfigMap:
+ description: |-
+ SparkConfigMap carries the name of the ConfigMap containing Spark configuration files such as log4j.properties.
+ The controller will add environment variable SPARK_CONF_DIR to the path where the ConfigMap is mounted to.
+ type: string
+ sparkUIOptions:
+ description: SparkUIOptions allows configuring the Service and
+ the Ingress to expose the sparkUI
+ properties:
+ ingressAnnotations:
+ additionalProperties:
+ type: string
+ description: IngressAnnotations is a map of key,value pairs
+ of annotations that might be added to the ingress object.
+ i.e. specify nginx as ingress.class
+ type: object
+ ingressTLS:
+ description: TlsHosts is useful If we need to declare SSL
+ certificates to the ingress object
+ items:
+ description: IngressTLS describes the transport layer security
+ associated with an ingress.
+ properties:
+ hosts:
+ description: |-
+ hosts is a list of hosts included in the TLS certificate. The values in
+ this list must match the name/s used in the tlsSecret. Defaults to the
+ wildcard host setting for the loadbalancer controller fulfilling this
+ Ingress, if left unspecified.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ secretName:
+ description: |-
+ secretName is the name of the secret used to terminate TLS traffic on
+ port 443. Field is left optional to allow TLS routing based on SNI
+ hostname alone. If the SNI host in a listener conflicts with the "Host"
+ header field used by an IngressRule, the SNI host is used for termination
+ and value of the "Host" header is used for routing.
+ type: string
+ type: object
+ type: array
+ serviceAnnotations:
+ additionalProperties:
+ type: string
+ description: ServiceAnnotations is a map of key,value pairs
+ of annotations that might be added to the service object.
+ type: object
+ serviceLabels:
+ additionalProperties:
+ type: string
+ description: ServiceLabels is a map of key,value pairs of
+ labels that might be added to the service object.
+ type: object
+ servicePort:
+ description: |-
+ ServicePort allows configuring the port at service level that might be different from the targetPort.
+ TargetPort should be the same as the one defined in spark.ui.port
+ format: int32
+ type: integer
+ servicePortName:
+ description: |-
+ ServicePortName allows configuring the name of the service port.
+ This may be useful for sidecar proxies like Envoy injected by Istio which require specific ports names to treat traffic as proper HTTP.
+ Defaults to spark-driver-ui-port.
+ type: string
+ serviceType:
+ description: ServiceType allows configuring the type of the
+ service. Defaults to ClusterIP.
+ type: string
+ type: object
+ sparkVersion:
+ description: SparkVersion is the version of Spark the application
+ uses.
+ type: string
+ timeToLiveSeconds:
+ description: |-
+ TimeToLiveSeconds defines the Time-To-Live (TTL) duration in seconds for this SparkApplication
+ after its termination.
+ The SparkApplication object will be garbage collected if the current time is more than the
+ TimeToLiveSeconds since its termination.
+ format: int64
+ type: integer
+ type:
+ description: Type tells the type of the Spark application.
+ enum:
+ - Java
+ - Python
+ - Scala
+ - R
+ type: string
+ volumes:
+ description: Volumes is the list of Kubernetes volumes that can
+ be mounted by the driver and/or executors.
+ items:
+ description: Volume represents a named volume in a pod that
+ may be accessed by any container in the pod.
+ properties:
+ awsElasticBlockStore:
+ description: |-
+ awsElasticBlockStore represents an AWS Disk resource that is attached to a
+ kubelet's host machine and then exposed to the pod.
+ Deprecated: AWSElasticBlockStore is deprecated. All operations for the in-tree
+ awsElasticBlockStore type are redirected to the ebs.csi.aws.com CSI driver.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
+ properties:
+ fsType:
+ description: |-
+ fsType is the filesystem type of the volume that you want to mount.
+ Tip: Ensure that the filesystem type is supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
+ type: string
+ partition:
+ description: |-
+ partition is the partition in the volume that you want to mount.
+ If omitted, the default is to mount by volume name.
+ Examples: For volume /dev/sda1, you specify the partition as "1".
+ Similarly, the volume partition for /dev/sda is "0" (or you can leave the property empty).
+ format: int32
+ type: integer
+ readOnly:
+ description: |-
+ readOnly value true will force the readOnly setting in VolumeMounts.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
+ type: boolean
+ volumeID:
+ description: |-
+ volumeID is unique ID of the persistent disk resource in AWS (Amazon EBS volume).
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
+ type: string
+ required:
+ - volumeID
+ type: object
+ azureDisk:
+ description: |-
+ azureDisk represents an Azure Data Disk mount on the host and bind mount to the pod.
+ Deprecated: AzureDisk is deprecated. All operations for the in-tree azureDisk type
+ are redirected to the disk.csi.azure.com CSI driver.
+ properties:
+ cachingMode:
+ description: 'cachingMode is the Host Caching mode:
+ None, Read Only, Read Write.'
+ type: string
+ diskName:
+ description: diskName is the Name of the data disk in
+ the blob storage
+ type: string
+ diskURI:
+ description: diskURI is the URI of data disk in the
+ blob storage
+ type: string
+ fsType:
+ default: ext4
+ description: |-
+ fsType is Filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ type: string
+ kind:
+ description: 'kind expected values are Shared: multiple
+ blob disks per storage account Dedicated: single
+ blob disk per storage account Managed: azure managed
+ data disk (only in managed availability set). defaults
+ to shared'
+ type: string
+ readOnly:
+ default: false
+ description: |-
+ readOnly Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ type: boolean
+ required:
+ - diskName
+ - diskURI
+ type: object
+ azureFile:
+ description: |-
+ azureFile represents an Azure File Service mount on the host and bind mount to the pod.
+ Deprecated: AzureFile is deprecated. All operations for the in-tree azureFile type
+ are redirected to the file.csi.azure.com CSI driver.
+ properties:
+ readOnly:
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ type: boolean
+ secretName:
+ description: secretName is the name of secret that
+ contains Azure Storage Account Name and Key
+ type: string
+ shareName:
+ description: shareName is the azure share Name
+ type: string
+ required:
+ - secretName
+ - shareName
+ type: object
+ cephfs:
+ description: |-
+ cephFS represents a Ceph FS mount on the host that shares a pod's lifetime.
+ Deprecated: CephFS is deprecated and the in-tree cephfs type is no longer supported.
+ properties:
+ monitors:
+ description: |-
+ monitors is Required: Monitors is a collection of Ceph monitors
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: 'path is Optional: Used as the mounted
+ root, rather than the full Ceph tree, default is /'
+ type: string
+ readOnly:
+ description: |-
+ readOnly is Optional: Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
+ type: boolean
+ secretFile:
+ description: |-
+ secretFile is Optional: SecretFile is the path to key ring for User, default is /etc/ceph/user.secret
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
+ type: string
+ secretRef:
+ description: |-
+ secretRef is Optional: SecretRef is reference to the authentication secret for User, default is empty.
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ user:
+ description: |-
+ user is optional: User is the rados user name, default is admin
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
+ type: string
+ required:
+ - monitors
+ type: object
+ cinder:
+ description: |-
+ cinder represents a cinder volume attached and mounted on kubelets host machine.
+ Deprecated: Cinder is deprecated. All operations for the in-tree cinder type
+ are redirected to the cinder.csi.openstack.org CSI driver.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
+ properties:
+ fsType:
+ description: |-
+ fsType is the filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
+ type: string
+ readOnly:
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
+ type: boolean
+ secretRef:
+ description: |-
+ secretRef is optional: points to a secret object containing parameters used to connect
+ to OpenStack.
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ volumeID:
+ description: |-
+ volumeID used to identify the volume in cinder.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
+ type: string
+ required:
+ - volumeID
+ type: object
+ configMap:
+ description: configMap represents a configMap that should
+ populate this volume
+ properties:
+ defaultMode:
+ description: |-
+ defaultMode is optional: mode bits used to set permissions on created files by default.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ Defaults to 0644.
+ Directories within the path are not affected by this setting.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
+ format: int32
+ type: integer
+ items:
+ description: |-
+ items if unspecified, each key-value pair in the Data field of the referenced
+ ConfigMap will be projected into the volume as a file whose name is the
+ key and content is the value. If specified, the listed keys will be
+ projected into the specified paths, and unlisted keys will not be
+ present. If a key is specified which is not present in the ConfigMap,
+ the volume setup will error unless it is marked optional. Paths must be
+ relative and may not contain the '..' path or start with '..'.
+ items:
+ description: Maps a string key to a path within a
+ volume.
+ properties:
+ key:
+ description: key is the key to project.
+ type: string
+ mode:
+ description: |-
+ mode is Optional: mode bits used to set permissions on this file.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ If not specified, the volume defaultMode will be used.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
+ format: int32
+ type: integer
+ path:
+ description: |-
+ path is the relative path of the file to map the key to.
+ May not be an absolute path.
+ May not contain the path element '..'.
+ May not start with the string '..'.
+ type: string
+ required:
+ - key
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: optional specify whether the ConfigMap
+ or its keys must be defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ csi:
+ description: csi (Container Storage Interface) represents
+ ephemeral storage that is handled by certain external
+ CSI drivers.
+ properties:
+ driver:
+ description: |-
+ driver is the name of the CSI driver that handles this volume.
+ Consult with your admin for the correct name as registered in the cluster.
+ type: string
+ fsType:
+ description: |-
+ fsType to mount. Ex. "ext4", "xfs", "ntfs".
+ If not provided, the empty value is passed to the associated CSI driver
+ which will determine the default filesystem to apply.
+ type: string
+ nodePublishSecretRef:
+ description: |-
+ nodePublishSecretRef is a reference to the secret object containing
+ sensitive information to pass to the CSI driver to complete the CSI
+ NodePublishVolume and NodeUnpublishVolume calls.
+ This field is optional, and may be empty if no secret is required. If the
+ secret object contains more than one secret, all secret references are passed.
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ readOnly:
+ description: |-
+ readOnly specifies a read-only configuration for the volume.
+ Defaults to false (read/write).
+ type: boolean
+ volumeAttributes:
+ additionalProperties:
+ type: string
+ description: |-
+ volumeAttributes stores driver-specific properties that are passed to the CSI
+ driver. Consult your driver's documentation for supported values.
+ type: object
+ required:
+ - driver
+ type: object
+ downwardAPI:
+ description: downwardAPI represents downward API about the
+ pod that should populate this volume
+ properties:
+ defaultMode:
+ description: |-
+ Optional: mode bits to use on created files by default. Must be a
+ Optional: mode bits used to set permissions on created files by default.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ Defaults to 0644.
+ Directories within the path are not affected by this setting.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
+ format: int32
+ type: integer
+ items:
+ description: Items is a list of downward API volume
+ file
+ items:
+ description: DownwardAPIVolumeFile represents information
+ to create the file containing the pod field
+ properties:
+ fieldRef:
+ description: 'Required: Selects a field of the
+ pod: only annotations, labels, name, namespace
+ and uid are supported.'
+ properties:
+ apiVersion:
+ description: Version of the schema the FieldPath
+ is written in terms of, defaults to "v1".
+ type: string
+ fieldPath:
+ description: Path of the field to select in
+ the specified API version.
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ mode:
+ description: |-
+ Optional: mode bits used to set permissions on this file, must be an octal value
+ between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ If not specified, the volume defaultMode will be used.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
+ format: int32
+ type: integer
+ path:
+ description: 'Required: Path is the relative
+ path name of the file to be created. Must not
+ be absolute or contain the ''..'' path. Must
+ be utf-8 encoded. The first item of the relative
+ path must not start with ''..'''
+ type: string
+ resourceFieldRef:
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, requests.cpu and requests.memory) are currently supported.
+ properties:
+ containerName:
+ description: 'Container name: required for
+ volumes, optional for env vars'
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ description: Specifies the output format of
+ the exposed resources, defaults to "1"
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ description: 'Required: resource to select'
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ required:
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ emptyDir:
+ description: |-
+ emptyDir represents a temporary directory that shares a pod's lifetime.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
+ properties:
+ medium:
+ description: |-
+ medium represents what type of storage medium should back this directory.
+ The default is "" which means to use the node's default medium.
+ Must be an empty string (default) or Memory.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
+ type: string
+ sizeLimit:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ sizeLimit is the total amount of local storage required for this EmptyDir volume.
+ The size limit is also applicable for memory medium.
+ The maximum usage on memory medium EmptyDir would be the minimum value between
+ the SizeLimit specified here and the sum of memory limits of all containers in a pod.
+ The default is nil which means that the limit is undefined.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ ephemeral:
+ description: |-
+ ephemeral represents a volume that is handled by a cluster storage driver.
+ The volume's lifecycle is tied to the pod that defines it - it will be created before the pod starts,
+ and deleted when the pod is removed.
+
+ Use this if:
+ a) the volume is only needed while the pod runs,
+ b) features of normal volumes like restoring from snapshot or capacity
+ tracking are needed,
+ c) the storage driver is specified through a storage class, and
+ d) the storage driver supports dynamic volume provisioning through
+ a PersistentVolumeClaim (see EphemeralVolumeSource for more
+ information on the connection between this volume type
+ and PersistentVolumeClaim).
+
+ Use PersistentVolumeClaim or one of the vendor-specific
+ APIs for volumes that persist for longer than the lifecycle
+ of an individual pod.
+
+ Use CSI for light-weight local ephemeral volumes if the CSI driver is meant to
+ be used that way - see the documentation of the driver for
+ more information.
+
+ A pod can use both types of ephemeral volumes and
+ persistent volumes at the same time.
+ properties:
+ volumeClaimTemplate:
+ description: |-
+ Will be used to create a stand-alone PVC to provision the volume.
+ The pod in which this EphemeralVolumeSource is embedded will be the
+ owner of the PVC, i.e. the PVC will be deleted together with the
+ pod. The name of the PVC will be `-` where
+ `` is the name from the `PodSpec.Volumes` array
+ entry. Pod validation will reject the pod if the concatenated name
+ is not valid for a PVC (for example, too long).
+
+ An existing PVC with that name that is not owned by the pod
+ will *not* be used for the pod to avoid using an unrelated
+ volume by mistake. Starting the pod is then blocked until
+ the unrelated PVC is removed. If such a pre-created PVC is
+ meant to be used by the pod, the PVC has to updated with an
+ owner reference to the pod once the pod exists. Normally
+ this should not be necessary, but it may be useful when
+ manually reconstructing a broken cluster.
+
+ This field is read-only and no changes will be made by Kubernetes
+ to the PVC after it has been created.
+
+ Required, must not be nil.
+ properties:
+ metadata:
+ description: |-
+ May contain labels and annotations that will be copied into the PVC
+ when creating it. No other fields are allowed and will be rejected during
+ validation.
+ properties:
+ annotations:
+ additionalProperties:
+ type: string
+ type: object
+ finalizers:
+ items:
+ type: string
+ type: array
+ labels:
+ additionalProperties:
+ type: string
+ type: object
+ name:
+ type: string
+ namespace:
+ type: string
+ type: object
+ spec:
+ description: |-
+ The specification for the PersistentVolumeClaim. The entire content is
+ copied unchanged into the PVC that gets created from this
+ template. The same fields as in a PersistentVolumeClaim
+ are also valid here.
+ properties:
+ accessModes:
+ description: |-
+ accessModes contains the desired access modes the volume should have.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ dataSource:
+ description: |-
+ dataSource field can be used to specify either:
+ * An existing VolumeSnapshot object (snapshot.storage.k8s.io/VolumeSnapshot)
+ * An existing PVC (PersistentVolumeClaim)
+ If the provisioner or an external controller can support the specified data source,
+ it will create a new volume based on the contents of the specified data source.
+ When the AnyVolumeDataSource feature gate is enabled, dataSource contents will be copied to dataSourceRef,
+ and dataSourceRef contents will be copied to dataSource when dataSourceRef.namespace is not specified.
+ If the namespace is specified, then dataSourceRef will not be copied to dataSource.
+ properties:
+ apiGroup:
+ description: |-
+ APIGroup is the group for the resource being referenced.
+ If APIGroup is not specified, the specified Kind must be in the core API group.
+ For any other third-party types, APIGroup is required.
+ type: string
+ kind:
+ description: Kind is the type of resource
+ being referenced
+ type: string
+ name:
+ description: Name is the name of resource
+ being referenced
+ type: string
+ required:
+ - kind
+ - name
+ type: object
+ x-kubernetes-map-type: atomic
+ dataSourceRef:
+ description: |-
+ dataSourceRef specifies the object from which to populate the volume with data, if a non-empty
+ volume is desired. This may be any object from a non-empty API group (non
+ core object) or a PersistentVolumeClaim object.
+ When this field is specified, volume binding will only succeed if the type of
+ the specified object matches some installed volume populator or dynamic
+ provisioner.
+ This field will replace the functionality of the dataSource field and as such
+ if both fields are non-empty, they must have the same value. For backwards
+ compatibility, when namespace isn't specified in dataSourceRef,
+ both fields (dataSource and dataSourceRef) will be set to the same
+ value automatically if one of them is empty and the other is non-empty.
+ When namespace is specified in dataSourceRef,
+ dataSource isn't set to the same value and must be empty.
+ There are three important differences between dataSource and dataSourceRef:
+ * While dataSource only allows two specific types of objects, dataSourceRef
+ allows any non-core object, as well as PersistentVolumeClaim objects.
+ * While dataSource ignores disallowed values (dropping them), dataSourceRef
+ preserves all values, and generates an error if a disallowed value is
+ specified.
+ * While dataSource only allows local objects, dataSourceRef allows objects
+ in any namespaces.
+ (Beta) Using this field requires the AnyVolumeDataSource feature gate to be enabled.
+ (Alpha) Using the namespace field of dataSourceRef requires the CrossNamespaceVolumeDataSource feature gate to be enabled.
+ properties:
+ apiGroup:
+ description: |-
+ APIGroup is the group for the resource being referenced.
+ If APIGroup is not specified, the specified Kind must be in the core API group.
+ For any other third-party types, APIGroup is required.
+ type: string
+ kind:
+ description: Kind is the type of resource
+ being referenced
+ type: string
+ name:
+ description: Name is the name of resource
+ being referenced
+ type: string
+ namespace:
+ description: |-
+ Namespace is the namespace of resource being referenced
+ Note that when a namespace is specified, a gateway.networking.k8s.io/ReferenceGrant object is required in the referent namespace to allow that namespace's owner to accept the reference. See the ReferenceGrant documentation for details.
+ (Alpha) This field requires the CrossNamespaceVolumeDataSource feature gate to be enabled.
+ type: string
+ required:
+ - kind
+ - name
+ type: object
+ resources:
+ description: |-
+ resources represents the minimum resources the volume should have.
+ If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements
+ that are lower than previous value but must still be higher than capacity recorded in the
+ status field of the claim.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
+ properties:
+ limits:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ type: object
+ requests:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ type: object
+ type: object
+ selector:
+ description: selector is a label query over
+ volumes to consider for binding.
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list
+ of label selector requirements. The requirements
+ are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key is the label key
+ that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ storageClassName:
+ description: |-
+ storageClassName is the name of the StorageClass required by the claim.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1
+ type: string
+ volumeAttributesClassName:
+ description: |-
+ volumeAttributesClassName may be used to set the VolumeAttributesClass used by this claim.
+ If specified, the CSI driver will create or update the volume with the attributes defined
+ in the corresponding VolumeAttributesClass. This has a different purpose than storageClassName,
+ it can be changed after the claim is created. An empty string value means that no VolumeAttributesClass
+ will be applied to the claim but it's not allowed to reset this field to empty string once it is set.
+ If unspecified and the PersistentVolumeClaim is unbound, the default VolumeAttributesClass
+ will be set by the persistentvolume controller if it exists.
+ If the resource referred to by volumeAttributesClass does not exist, this PersistentVolumeClaim will be
+ set to a Pending state, as reflected by the modifyVolumeStatus field, until such as a resource
+ exists.
+ More info: https://kubernetes.io/docs/concepts/storage/volume-attributes-classes/
+ (Beta) Using this field requires the VolumeAttributesClass feature gate to be enabled (off by default).
+ type: string
+ volumeMode:
+ description: |-
+ volumeMode defines what type of volume is required by the claim.
+ Value of Filesystem is implied when not included in claim spec.
+ type: string
+ volumeName:
+ description: volumeName is the binding reference
+ to the PersistentVolume backing this claim.
+ type: string
+ type: object
+ required:
+ - spec
+ type: object
+ type: object
+ fc:
+ description: fc represents a Fibre Channel resource that
+ is attached to a kubelet's host machine and then exposed
+ to the pod.
+ properties:
+ fsType:
+ description: |-
+ fsType is the filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ type: string
+ lun:
+ description: 'lun is Optional: FC target lun number'
+ format: int32
+ type: integer
+ readOnly:
+ description: |-
+ readOnly is Optional: Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ type: boolean
+ targetWWNs:
+ description: 'targetWWNs is Optional: FC target worldwide
+ names (WWNs)'
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ wwids:
+ description: |-
+ wwids Optional: FC volume world wide identifiers (wwids)
+ Either wwids or combination of targetWWNs and lun must be set, but not both simultaneously.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ flexVolume:
+ description: |-
+ flexVolume represents a generic volume resource that is
+ provisioned/attached using an exec based plugin.
+ Deprecated: FlexVolume is deprecated. Consider using a CSIDriver instead.
+ properties:
+ driver:
+ description: driver is the name of the driver to use
+ for this volume.
+ type: string
+ fsType:
+ description: |-
+ fsType is the filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Ex. "ext4", "xfs", "ntfs". The default filesystem depends on FlexVolume script.
+ type: string
+ options:
+ additionalProperties:
+ type: string
+ description: 'options is Optional: this field holds
+ extra command options if any.'
+ type: object
+ readOnly:
+ description: |-
+ readOnly is Optional: defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ type: boolean
+ secretRef:
+ description: |-
+ secretRef is Optional: secretRef is reference to the secret object containing
+ sensitive information to pass to the plugin scripts. This may be
+ empty if no secret object is specified. If the secret object
+ contains more than one secret, all secrets are passed to the plugin
+ scripts.
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ required:
+ - driver
+ type: object
+ flocker:
+ description: |-
+ flocker represents a Flocker volume attached to a kubelet's host machine. This depends on the Flocker control service being running.
+ Deprecated: Flocker is deprecated and the in-tree flocker type is no longer supported.
+ properties:
+ datasetName:
+ description: |-
+ datasetName is Name of the dataset stored as metadata -> name on the dataset for Flocker
+ should be considered as deprecated
+ type: string
+ datasetUUID:
+ description: datasetUUID is the UUID of the dataset.
+ This is unique identifier of a Flocker dataset
+ type: string
+ type: object
+ gcePersistentDisk:
+ description: |-
+ gcePersistentDisk represents a GCE Disk resource that is attached to a
+ kubelet's host machine and then exposed to the pod.
+ Deprecated: GCEPersistentDisk is deprecated. All operations for the in-tree
+ gcePersistentDisk type are redirected to the pd.csi.storage.gke.io CSI driver.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
+ properties:
+ fsType:
+ description: |-
+ fsType is filesystem type of the volume that you want to mount.
+ Tip: Ensure that the filesystem type is supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
+ type: string
+ partition:
+ description: |-
+ partition is the partition in the volume that you want to mount.
+ If omitted, the default is to mount by volume name.
+ Examples: For volume /dev/sda1, you specify the partition as "1".
+ Similarly, the volume partition for /dev/sda is "0" (or you can leave the property empty).
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
+ format: int32
+ type: integer
+ pdName:
+ description: |-
+ pdName is unique name of the PD resource in GCE. Used to identify the disk in GCE.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
+ type: string
+ readOnly:
+ description: |-
+ readOnly here will force the ReadOnly setting in VolumeMounts.
+ Defaults to false.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
+ type: boolean
+ required:
+ - pdName
+ type: object
+ gitRepo:
+ description: |-
+ gitRepo represents a git repository at a particular revision.
+ Deprecated: GitRepo is deprecated. To provision a container with a git repo, mount an
+ EmptyDir into an InitContainer that clones the repo using git, then mount the EmptyDir
+ into the Pod's container.
+ properties:
+ directory:
+ description: |-
+ directory is the target directory name.
+ Must not contain or start with '..'. If '.' is supplied, the volume directory will be the
+ git repository. Otherwise, if specified, the volume will contain the git repository in
+ the subdirectory with the given name.
+ type: string
+ repository:
+ description: repository is the URL
+ type: string
+ revision:
+ description: revision is the commit hash for the specified
+ revision.
+ type: string
+ required:
+ - repository
+ type: object
+ glusterfs:
+ description: |-
+ glusterfs represents a Glusterfs mount on the host that shares a pod's lifetime.
+ Deprecated: Glusterfs is deprecated and the in-tree glusterfs type is no longer supported.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md
+ properties:
+ endpoints:
+ description: |-
+ endpoints is the endpoint name that details Glusterfs topology.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
+ type: string
+ path:
+ description: |-
+ path is the Glusterfs volume path.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
+ type: string
+ readOnly:
+ description: |-
+ readOnly here will force the Glusterfs volume to be mounted with read-only permissions.
+ Defaults to false.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
+ type: boolean
+ required:
+ - endpoints
+ - path
+ type: object
+ hostPath:
+ description: |-
+ hostPath represents a pre-existing file or directory on the host
+ machine that is directly exposed to the container. This is generally
+ used for system agents or other privileged things that are allowed
+ to see the host machine. Most containers will NOT need this.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath
+ properties:
+ path:
+ description: |-
+ path of the directory on the host.
+ If the path is a symlink, it will follow the link to the real path.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath
+ type: string
+ type:
+ description: |-
+ type for HostPath Volume
+ Defaults to ""
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath
+ type: string
+ required:
+ - path
+ type: object
+ image:
+ description: |-
+ image represents an OCI object (a container image or artifact) pulled and mounted on the kubelet's host machine.
+ The volume is resolved at pod startup depending on which PullPolicy value is provided:
+
+ - Always: the kubelet always attempts to pull the reference. Container creation will fail If the pull fails.
+ - Never: the kubelet never pulls the reference and only uses a local image or artifact. Container creation will fail if the reference isn't present.
+ - IfNotPresent: the kubelet pulls if the reference isn't already present on disk. Container creation will fail if the reference isn't present and the pull fails.
+
+ The volume gets re-resolved if the pod gets deleted and recreated, which means that new remote content will become available on pod recreation.
+ A failure to resolve or pull the image during pod startup will block containers from starting and may add significant latency. Failures will be retried using normal volume backoff and will be reported on the pod reason and message.
+ The types of objects that may be mounted by this volume are defined by the container runtime implementation on a host machine and at minimum must include all valid types supported by the container image field.
+ The OCI object gets mounted in a single directory (spec.containers[*].volumeMounts.mountPath) by merging the manifest layers in the same way as for container images.
+ The volume will be mounted read-only (ro) and non-executable files (noexec).
+ Sub path mounts for containers are not supported (spec.containers[*].volumeMounts.subpath).
+ The field spec.securityContext.fsGroupChangePolicy has no effect on this volume type.
+ properties:
+ pullPolicy:
+ description: |-
+ Policy for pulling OCI objects. Possible values are:
+ Always: the kubelet always attempts to pull the reference. Container creation will fail If the pull fails.
+ Never: the kubelet never pulls the reference and only uses a local image or artifact. Container creation will fail if the reference isn't present.
+ IfNotPresent: the kubelet pulls if the reference isn't already present on disk. Container creation will fail if the reference isn't present and the pull fails.
+ Defaults to Always if :latest tag is specified, or IfNotPresent otherwise.
+ type: string
+ reference:
+ description: |-
+ Required: Image or artifact reference to be used.
+ Behaves in the same way as pod.spec.containers[*].image.
+ Pull secrets will be assembled in the same way as for the container image by looking up node credentials, SA image pull secrets, and pod spec image pull secrets.
+ More info: https://kubernetes.io/docs/concepts/containers/images
+ This field is optional to allow higher level config management to default or override
+ container images in workload controllers like Deployments and StatefulSets.
+ type: string
+ type: object
+ iscsi:
+ description: |-
+ iscsi represents an ISCSI Disk resource that is attached to a
+ kubelet's host machine and then exposed to the pod.
+ More info: https://examples.k8s.io/volumes/iscsi/README.md
+ properties:
+ chapAuthDiscovery:
+ description: chapAuthDiscovery defines whether support
+ iSCSI Discovery CHAP authentication
+ type: boolean
+ chapAuthSession:
+ description: chapAuthSession defines whether support
+ iSCSI Session CHAP authentication
+ type: boolean
+ fsType:
+ description: |-
+ fsType is the filesystem type of the volume that you want to mount.
+ Tip: Ensure that the filesystem type is supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#iscsi
+ type: string
+ initiatorName:
+ description: |-
+ initiatorName is the custom iSCSI Initiator Name.
+ If initiatorName is specified with iscsiInterface simultaneously, new iSCSI interface
+ : will be created for the connection.
+ type: string
+ iqn:
+ description: iqn is the target iSCSI Qualified Name.
+ type: string
+ iscsiInterface:
+ default: default
+ description: |-
+ iscsiInterface is the interface Name that uses an iSCSI transport.
+ Defaults to 'default' (tcp).
+ type: string
+ lun:
+ description: lun represents iSCSI Target Lun number.
+ format: int32
+ type: integer
+ portals:
+ description: |-
+ portals is the iSCSI Target Portal List. The portal is either an IP or ip_addr:port if the port
+ is other than default (typically TCP ports 860 and 3260).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ readOnly:
+ description: |-
+ readOnly here will force the ReadOnly setting in VolumeMounts.
+ Defaults to false.
+ type: boolean
+ secretRef:
+ description: secretRef is the CHAP Secret for iSCSI
+ target and initiator authentication
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ targetPortal:
+ description: |-
+ targetPortal is iSCSI Target Portal. The Portal is either an IP or ip_addr:port if the port
+ is other than default (typically TCP ports 860 and 3260).
+ type: string
+ required:
+ - iqn
+ - lun
+ - targetPortal
+ type: object
+ name:
+ description: |-
+ name of the volume.
+ Must be a DNS_LABEL and unique within the pod.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ nfs:
+ description: |-
+ nfs represents an NFS mount on the host that shares a pod's lifetime
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
+ properties:
+ path:
+ description: |-
+ path that is exported by the NFS server.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
+ type: string
+ readOnly:
+ description: |-
+ readOnly here will force the NFS export to be mounted with read-only permissions.
+ Defaults to false.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
+ type: boolean
+ server:
+ description: |-
+ server is the hostname or IP address of the NFS server.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
+ type: string
+ required:
+ - path
+ - server
+ type: object
+ persistentVolumeClaim:
+ description: |-
+ persistentVolumeClaimVolumeSource represents a reference to a
+ PersistentVolumeClaim in the same namespace.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
+ properties:
+ claimName:
+ description: |-
+ claimName is the name of a PersistentVolumeClaim in the same namespace as the pod using this volume.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
+ type: string
+ readOnly:
+ description: |-
+ readOnly Will force the ReadOnly setting in VolumeMounts.
+ Default false.
+ type: boolean
+ required:
+ - claimName
+ type: object
+ photonPersistentDisk:
+ description: |-
+ photonPersistentDisk represents a PhotonController persistent disk attached and mounted on kubelets host machine.
+ Deprecated: PhotonPersistentDisk is deprecated and the in-tree photonPersistentDisk type is no longer supported.
+ properties:
+ fsType:
+ description: |-
+ fsType is the filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ type: string
+ pdID:
+ description: pdID is the ID that identifies Photon Controller
+ persistent disk
+ type: string
+ required:
+ - pdID
+ type: object
+ portworxVolume:
+ description: |-
+ portworxVolume represents a portworx volume attached and mounted on kubelets host machine.
+ Deprecated: PortworxVolume is deprecated. All operations for the in-tree portworxVolume type
+ are redirected to the pxd.portworx.com CSI driver when the CSIMigrationPortworx feature-gate
+ is on.
+ properties:
+ fsType:
+ description: |-
+ fSType represents the filesystem type to mount
+ Must be a filesystem type supported by the host operating system.
+ Ex. "ext4", "xfs". Implicitly inferred to be "ext4" if unspecified.
+ type: string
+ readOnly:
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ type: boolean
+ volumeID:
+ description: volumeID uniquely identifies a Portworx
+ volume
+ type: string
+ required:
+ - volumeID
+ type: object
+ projected:
+ description: projected items for all in one resources secrets,
+ configmaps, and downward API
+ properties:
+ defaultMode:
+ description: |-
+ defaultMode are the mode bits used to set permissions on created files by default.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ Directories within the path are not affected by this setting.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
+ format: int32
+ type: integer
+ sources:
+ description: |-
+ sources is the list of volume projections. Each entry in this list
+ handles one source.
+ items:
+ description: |-
+ Projection that may be projected along with other supported volume types.
+ Exactly one of these fields must be set.
+ properties:
+ clusterTrustBundle:
+ description: |-
+ ClusterTrustBundle allows a pod to access the `.spec.trustBundle` field
+ of ClusterTrustBundle objects in an auto-updating file.
+
+ Alpha, gated by the ClusterTrustBundleProjection feature gate.
+
+ ClusterTrustBundle objects can either be selected by name, or by the
+ combination of signer name and a label selector.
+
+ Kubelet performs aggressive normalization of the PEM contents written
+ into the pod filesystem. Esoteric PEM features such as inter-block
+ comments and block headers are stripped. Certificates are deduplicated.
+ The ordering of certificates within the file is arbitrary, and Kubelet
+ may change the order over time.
+ properties:
+ labelSelector:
+ description: |-
+ Select all ClusterTrustBundles that match this label selector. Only has
+ effect if signerName is set. Mutually-exclusive with name. If unset,
+ interpreted as "match nothing". If set but empty, interpreted as "match
+ everything".
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list
+ of label selector requirements. The
+ requirements are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key is the label key
+ that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ name:
+ description: |-
+ Select a single ClusterTrustBundle by object name. Mutually-exclusive
+ with signerName and labelSelector.
+ type: string
+ optional:
+ description: |-
+ If true, don't block pod startup if the referenced ClusterTrustBundle(s)
+ aren't available. If using name, then the named ClusterTrustBundle is
+ allowed not to exist. If using signerName, then the combination of
+ signerName and labelSelector is allowed to match zero
+ ClusterTrustBundles.
+ type: boolean
+ path:
+ description: Relative path from the volume
+ root to write the bundle.
+ type: string
+ signerName:
+ description: |-
+ Select all ClusterTrustBundles that match this signer name.
+ Mutually-exclusive with name. The contents of all selected
+ ClusterTrustBundles will be unified and deduplicated.
+ type: string
+ required:
+ - path
+ type: object
+ configMap:
+ description: configMap information about the configMap
+ data to project
+ properties:
+ items:
+ description: |-
+ items if unspecified, each key-value pair in the Data field of the referenced
+ ConfigMap will be projected into the volume as a file whose name is the
+ key and content is the value. If specified, the listed keys will be
+ projected into the specified paths, and unlisted keys will not be
+ present. If a key is specified which is not present in the ConfigMap,
+ the volume setup will error unless it is marked optional. Paths must be
+ relative and may not contain the '..' path or start with '..'.
+ items:
+ description: Maps a string key to a path
+ within a volume.
+ properties:
+ key:
+ description: key is the key to project.
+ type: string
+ mode:
+ description: |-
+ mode is Optional: mode bits used to set permissions on this file.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ If not specified, the volume defaultMode will be used.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
+ format: int32
+ type: integer
+ path:
+ description: |-
+ path is the relative path of the file to map the key to.
+ May not be an absolute path.
+ May not contain the path element '..'.
+ May not start with the string '..'.
+ type: string
+ required:
+ - key
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: optional specify whether the
+ ConfigMap or its keys must be defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ downwardAPI:
+ description: downwardAPI information about the
+ downwardAPI data to project
+ properties:
+ items:
+ description: Items is a list of DownwardAPIVolume
+ file
+ items:
+ description: DownwardAPIVolumeFile represents
+ information to create the file containing
+ the pod field
+ properties:
+ fieldRef:
+ description: 'Required: Selects a field
+ of the pod: only annotations, labels,
+ name, namespace and uid are supported.'
+ properties:
+ apiVersion:
+ description: Version of the schema
+ the FieldPath is written in terms
+ of, defaults to "v1".
+ type: string
+ fieldPath:
+ description: Path of the field to
+ select in the specified API version.
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ mode:
+ description: |-
+ Optional: mode bits used to set permissions on this file, must be an octal value
+ between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ If not specified, the volume defaultMode will be used.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
+ format: int32
+ type: integer
+ path:
+ description: 'Required: Path is the
+ relative path name of the file to
+ be created. Must not be absolute or
+ contain the ''..'' path. Must be utf-8
+ encoded. The first item of the relative
+ path must not start with ''..'''
+ type: string
+ resourceFieldRef:
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, requests.cpu and requests.memory) are currently supported.
+ properties:
+ containerName:
+ description: 'Container name: required
+ for volumes, optional for env
+ vars'
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ description: Specifies the output
+ format of the exposed resources,
+ defaults to "1"
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ description: 'Required: resource
+ to select'
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ required:
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ secret:
+ description: secret information about the secret
+ data to project
+ properties:
+ items:
+ description: |-
+ items if unspecified, each key-value pair in the Data field of the referenced
+ Secret will be projected into the volume as a file whose name is the
+ key and content is the value. If specified, the listed keys will be
+ projected into the specified paths, and unlisted keys will not be
+ present. If a key is specified which is not present in the Secret,
+ the volume setup will error unless it is marked optional. Paths must be
+ relative and may not contain the '..' path or start with '..'.
+ items:
+ description: Maps a string key to a path
+ within a volume.
+ properties:
+ key:
+ description: key is the key to project.
+ type: string
+ mode:
+ description: |-
+ mode is Optional: mode bits used to set permissions on this file.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ If not specified, the volume defaultMode will be used.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
+ format: int32
+ type: integer
+ path:
+ description: |-
+ path is the relative path of the file to map the key to.
+ May not be an absolute path.
+ May not contain the path element '..'.
+ May not start with the string '..'.
+ type: string
+ required:
+ - key
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: optional field specify whether
+ the Secret or its key must be defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ serviceAccountToken:
+ description: serviceAccountToken is information
+ about the serviceAccountToken data to project
+ properties:
+ audience:
+ description: |-
+ audience is the intended audience of the token. A recipient of a token
+ must identify itself with an identifier specified in the audience of the
+ token, and otherwise should reject the token. The audience defaults to the
+ identifier of the apiserver.
+ type: string
+ expirationSeconds:
+ description: |-
+ expirationSeconds is the requested duration of validity of the service
+ account token. As the token approaches expiration, the kubelet volume
+ plugin will proactively rotate the service account token. The kubelet will
+ start trying to rotate the token if the token is older than 80 percent of
+ its time to live or if the token is older than 24 hours.Defaults to 1 hour
+ and must be at least 10 minutes.
+ format: int64
+ type: integer
+ path:
+ description: |-
+ path is the path relative to the mount point of the file to project the
+ token into.
+ type: string
+ required:
+ - path
+ type: object
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ quobyte:
+ description: |-
+ quobyte represents a Quobyte mount on the host that shares a pod's lifetime.
+ Deprecated: Quobyte is deprecated and the in-tree quobyte type is no longer supported.
+ properties:
+ group:
+ description: |-
+ group to map volume access to
+ Default is no group
+ type: string
+ readOnly:
+ description: |-
+ readOnly here will force the Quobyte volume to be mounted with read-only permissions.
+ Defaults to false.
+ type: boolean
+ registry:
+ description: |-
+ registry represents a single or multiple Quobyte Registry services
+ specified as a string as host:port pair (multiple entries are separated with commas)
+ which acts as the central registry for volumes
+ type: string
+ tenant:
+ description: |-
+ tenant owning the given Quobyte volume in the Backend
+ Used with dynamically provisioned Quobyte volumes, value is set by the plugin
+ type: string
+ user:
+ description: |-
+ user to map volume access to
+ Defaults to serivceaccount user
+ type: string
+ volume:
+ description: volume is a string that references an already
+ created Quobyte volume by name.
+ type: string
+ required:
+ - registry
+ - volume
+ type: object
+ rbd:
+ description: |-
+ rbd represents a Rados Block Device mount on the host that shares a pod's lifetime.
+ Deprecated: RBD is deprecated and the in-tree rbd type is no longer supported.
+ More info: https://examples.k8s.io/volumes/rbd/README.md
+ properties:
+ fsType:
+ description: |-
+ fsType is the filesystem type of the volume that you want to mount.
+ Tip: Ensure that the filesystem type is supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#rbd
+ type: string
+ image:
+ description: |-
+ image is the rados image name.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
+ type: string
+ keyring:
+ default: /etc/ceph/keyring
+ description: |-
+ keyring is the path to key ring for RBDUser.
+ Default is /etc/ceph/keyring.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
+ type: string
+ monitors:
+ description: |-
+ monitors is a collection of Ceph monitors.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ pool:
+ default: rbd
+ description: |-
+ pool is the rados pool name.
+ Default is rbd.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
+ type: string
+ readOnly:
+ description: |-
+ readOnly here will force the ReadOnly setting in VolumeMounts.
+ Defaults to false.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
+ type: boolean
+ secretRef:
+ description: |-
+ secretRef is name of the authentication secret for RBDUser. If provided
+ overrides keyring.
+ Default is nil.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ user:
+ default: admin
+ description: |-
+ user is the rados user name.
+ Default is admin.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
+ type: string
+ required:
+ - image
+ - monitors
+ type: object
+ scaleIO:
+ description: |-
+ scaleIO represents a ScaleIO persistent volume attached and mounted on Kubernetes nodes.
+ Deprecated: ScaleIO is deprecated and the in-tree scaleIO type is no longer supported.
+ properties:
+ fsType:
+ default: xfs
+ description: |-
+ fsType is the filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Ex. "ext4", "xfs", "ntfs".
+ Default is "xfs".
+ type: string
+ gateway:
+ description: gateway is the host address of the ScaleIO
+ API Gateway.
+ type: string
+ protectionDomain:
+ description: protectionDomain is the name of the ScaleIO
+ Protection Domain for the configured storage.
+ type: string
+ readOnly:
+ description: |-
+ readOnly Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ type: boolean
+ secretRef:
+ description: |-
+ secretRef references to the secret for ScaleIO user and other
+ sensitive information. If this is not provided, Login operation will fail.
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ sslEnabled:
+ description: sslEnabled Flag enable/disable SSL communication
+ with Gateway, default false
+ type: boolean
+ storageMode:
+ default: ThinProvisioned
+ description: |-
+ storageMode indicates whether the storage for a volume should be ThickProvisioned or ThinProvisioned.
+ Default is ThinProvisioned.
+ type: string
+ storagePool:
+ description: storagePool is the ScaleIO Storage Pool
+ associated with the protection domain.
+ type: string
+ system:
+ description: system is the name of the storage system
+ as configured in ScaleIO.
+ type: string
+ volumeName:
+ description: |-
+ volumeName is the name of a volume already created in the ScaleIO system
+ that is associated with this volume source.
+ type: string
+ required:
+ - gateway
+ - secretRef
+ - system
+ type: object
+ secret:
+ description: |-
+ secret represents a secret that should populate this volume.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#secret
+ properties:
+ defaultMode:
+ description: |-
+ defaultMode is Optional: mode bits used to set permissions on created files by default.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values
+ for mode bits. Defaults to 0644.
+ Directories within the path are not affected by this setting.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
+ format: int32
+ type: integer
+ items:
+ description: |-
+ items If unspecified, each key-value pair in the Data field of the referenced
+ Secret will be projected into the volume as a file whose name is the
+ key and content is the value. If specified, the listed keys will be
+ projected into the specified paths, and unlisted keys will not be
+ present. If a key is specified which is not present in the Secret,
+ the volume setup will error unless it is marked optional. Paths must be
+ relative and may not contain the '..' path or start with '..'.
+ items:
+ description: Maps a string key to a path within a
+ volume.
+ properties:
+ key:
+ description: key is the key to project.
+ type: string
+ mode:
+ description: |-
+ mode is Optional: mode bits used to set permissions on this file.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ If not specified, the volume defaultMode will be used.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
+ format: int32
+ type: integer
+ path:
+ description: |-
+ path is the relative path of the file to map the key to.
+ May not be an absolute path.
+ May not contain the path element '..'.
+ May not start with the string '..'.
+ type: string
+ required:
+ - key
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ optional:
+ description: optional field specify whether the Secret
+ or its keys must be defined
+ type: boolean
+ secretName:
+ description: |-
+ secretName is the name of the secret in the pod's namespace to use.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#secret
+ type: string
+ type: object
+ storageos:
+ description: |-
+ storageOS represents a StorageOS volume attached and mounted on Kubernetes nodes.
+ Deprecated: StorageOS is deprecated and the in-tree storageos type is no longer supported.
+ properties:
+ fsType:
+ description: |-
+ fsType is the filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ type: string
+ readOnly:
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ type: boolean
+ secretRef:
+ description: |-
+ secretRef specifies the secret to use for obtaining the StorageOS API
+ credentials. If not specified, default values will be attempted.
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ volumeName:
+ description: |-
+ volumeName is the human-readable name of the StorageOS volume. Volume
+ names are only unique within a namespace.
+ type: string
+ volumeNamespace:
+ description: |-
+ volumeNamespace specifies the scope of the volume within StorageOS. If no
+ namespace is specified then the Pod's namespace will be used. This allows the
+ Kubernetes name scoping to be mirrored within StorageOS for tighter integration.
+ Set VolumeName to any name to override the default behaviour.
+ Set to "default" if you are not using namespaces within StorageOS.
+ Namespaces that do not pre-exist within StorageOS will be created.
+ type: string
+ type: object
+ vsphereVolume:
+ description: |-
+ vsphereVolume represents a vSphere volume attached and mounted on kubelets host machine.
+ Deprecated: VsphereVolume is deprecated. All operations for the in-tree vsphereVolume type
+ are redirected to the csi.vsphere.vmware.com CSI driver.
+ properties:
+ fsType:
+ description: |-
+ fsType is filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ type: string
+ storagePolicyID:
+ description: storagePolicyID is the storage Policy Based
+ Management (SPBM) profile ID associated with the StoragePolicyName.
+ type: string
+ storagePolicyName:
+ description: storagePolicyName is the storage Policy
+ Based Management (SPBM) profile name.
+ type: string
+ volumePath:
+ description: volumePath is the path that identifies
+ vSphere volume vmdk
+ type: string
+ required:
+ - volumePath
+ type: object
+ required:
+ - name
+ type: object
+ type: array
+ required:
+ - driver
+ - executor
+ - mainApplicationFile
+ - sparkVersion
+ - type
+ type: object
+ required:
+ - schedule
+ - template
+ type: object
+ status:
+ description: ScheduledSparkApplicationStatus defines the observed state
+ of ScheduledSparkApplication.
+ properties:
+ lastRun:
+ description: LastRun is the time when the last run of the application
+ started.
+ format: date-time
+ nullable: true
+ type: string
+ lastRunName:
+ description: LastRunName is the name of the SparkApplication for the
+ most recent run of the application.
+ type: string
+ nextRun:
+ description: NextRun is the time when the next run of the application
+ will start.
+ format: date-time
+ nullable: true
+ type: string
+ pastFailedRunNames:
+ description: PastFailedRunNames keeps the names of SparkApplications
+ for past failed runs.
+ items:
+ type: string
+ type: array
+ pastSuccessfulRunNames:
+ description: PastSuccessfulRunNames keeps the names of SparkApplications
+ for past successful runs.
+ items:
+ type: string
+ type: array
+ reason:
+ description: Reason tells why the ScheduledSparkApplication is in
+ the particular ScheduleState.
+ type: string
+ scheduleState:
+ description: ScheduleState is the current scheduling state of the
+ application.
+ type: string
+ type: object
+ required:
+ - metadata
+ - spec
+ type: object
+ served: true
+ storage: true
+ subresources:
+ status: {}
+
+---
+# Source: spark-operator/crds/sparkoperator.k8s.io_sparkapplications.yaml
+---
+apiVersion: apiextensions.k8s.io/v1
+kind: CustomResourceDefinition
+metadata:
+ annotations:
+ api-approved.kubernetes.io: https://github.com/kubeflow/spark-operator/pull/1298
+ controller-gen.kubebuilder.io/version: v0.17.1
+ name: sparkapplications.sparkoperator.k8s.io
+spec:
+ group: sparkoperator.k8s.io
+ names:
+ kind: SparkApplication
+ listKind: SparkApplicationList
+ plural: sparkapplications
+ shortNames:
+ - sparkapp
+ singular: sparkapplication
+ scope: Namespaced
+ versions:
+ - additionalPrinterColumns:
+ - jsonPath: .status.applicationState.state
+ name: Status
+ type: string
+ - jsonPath: .status.executionAttempts
+ name: Attempts
+ type: string
+ - jsonPath: .status.lastSubmissionAttemptTime
+ name: Start
+ type: string
+ - jsonPath: .status.terminationTime
+ name: Finish
+ type: string
+ - jsonPath: .metadata.creationTimestamp
+ name: Age
+ type: date
+ name: v1beta2
+ schema:
+ openAPIV3Schema:
+ description: SparkApplication is the Schema for the sparkapplications API
+ properties:
+ apiVersion:
+ description: |-
+ APIVersion defines the versioned schema of this representation of an object.
+ Servers should convert recognized schemas to the latest internal value, and
+ may reject unrecognized values.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
+ type: string
+ kind:
+ description: |-
+ Kind is a string value representing the REST resource this object represents.
+ Servers may infer this from the endpoint the client submits requests to.
+ Cannot be updated.
+ In CamelCase.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
+ type: string
+ metadata:
+ type: object
+ spec:
+ description: |-
+ SparkApplicationSpec defines the desired state of SparkApplication
+ It carries every pieces of information a spark-submit command takes and recognizes.
+ properties:
+ arguments:
+ description: Arguments is a list of arguments to be passed to the
+ application.
+ items:
+ type: string
+ type: array
+ batchScheduler:
+ description: BatchScheduler configures which batch scheduler will
+ be used for scheduling
+ type: string
+ batchSchedulerOptions:
+ description: BatchSchedulerOptions provides fine-grained control on
+ how to batch scheduling.
+ properties:
+ priorityClassName:
+ description: PriorityClassName stands for the name of k8s PriorityClass
+ resource, it's being used in Volcano batch scheduler.
+ type: string
+ queue:
+ description: Queue stands for the resource queue which the application
+ belongs to, it's being used in Volcano batch scheduler.
+ type: string
+ resources:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ description: |-
+ Resources stands for the resource list custom request for. Usually it is used to define the lower-bound limit.
+ If specified, volcano scheduler will consider it as the resources requested.
+ type: object
+ type: object
+ deps:
+ description: Deps captures all possible types of dependencies of a
+ Spark application.
+ properties:
+ archives:
+ description: Archives is a list of archives to be extracted into
+ the working directory of each executor.
+ items:
+ type: string
+ type: array
+ excludePackages:
+ description: |-
+ ExcludePackages is a list of "groupId:artifactId", to exclude while resolving the
+ dependencies provided in Packages to avoid dependency conflicts.
+ items:
+ type: string
+ type: array
+ files:
+ description: Files is a list of files the Spark application depends
+ on.
+ items:
+ type: string
+ type: array
+ jars:
+ description: Jars is a list of JAR files the Spark application
+ depends on.
+ items:
+ type: string
+ type: array
+ packages:
+ description: |-
+ Packages is a list of maven coordinates of jars to include on the driver and executor
+ classpaths. This will search the local maven repo, then maven central and any additional
+ remote repositories given by the "repositories" option.
+ Each package should be of the form "groupId:artifactId:version".
+ items:
+ type: string
+ type: array
+ pyFiles:
+ description: PyFiles is a list of Python files the Spark application
+ depends on.
+ items:
+ type: string
+ type: array
+ repositories:
+ description: |-
+ Repositories is a list of additional remote repositories to search for the maven coordinate
+ given with the "packages" option.
+ items:
+ type: string
+ type: array
+ type: object
+ driver:
+ description: Driver is the driver specification.
+ properties:
+ affinity:
+ description: Affinity specifies the affinity/anti-affinity settings
+ for the pod.
+ properties:
+ nodeAffinity:
+ description: Describes node affinity scheduling rules for
+ the pod.
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node matches the corresponding matchExpressions; the
+ node(s) with the highest sum are the most preferred.
+ items:
+ description: |-
+ An empty preferred scheduling term matches all objects with implicit weight 0
+ (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op).
+ properties:
+ preference:
+ description: A node selector term, associated with
+ the corresponding weight.
+ properties:
+ matchExpressions:
+ description: A list of node selector requirements
+ by node's labels.
+ items:
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
+ properties:
+ key:
+ description: The label key that the selector
+ applies to.
+ type: string
+ operator:
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
+ type: string
+ values:
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchFields:
+ description: A list of node selector requirements
+ by node's fields.
+ items:
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
+ properties:
+ key:
+ description: The label key that the selector
+ applies to.
+ type: string
+ operator:
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
+ type: string
+ values:
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ x-kubernetes-map-type: atomic
+ weight:
+ description: Weight associated with matching the
+ corresponding nodeSelectorTerm, in the range 1-100.
+ format: int32
+ type: integer
+ required:
+ - preference
+ - weight
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ If the affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to an update), the system
+ may or may not try to eventually evict the pod from its node.
+ properties:
+ nodeSelectorTerms:
+ description: Required. A list of node selector terms.
+ The terms are ORed.
+ items:
+ description: |-
+ A null or empty node selector term matches no objects. The requirements of
+ them are ANDed.
+ The TopologySelectorTerm type implements a subset of the NodeSelectorTerm.
+ properties:
+ matchExpressions:
+ description: A list of node selector requirements
+ by node's labels.
+ items:
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
+ properties:
+ key:
+ description: The label key that the selector
+ applies to.
+ type: string
+ operator:
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
+ type: string
+ values:
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchFields:
+ description: A list of node selector requirements
+ by node's fields.
+ items:
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
+ properties:
+ key:
+ description: The label key that the selector
+ applies to.
+ type: string
+ operator:
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
+ type: string
+ values:
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ x-kubernetes-map-type: atomic
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - nodeSelectorTerms
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ podAffinity:
+ description: Describes pod affinity scheduling rules (e.g.
+ co-locate this pod in the same node, zone, etc. as some
+ other pod(s)).
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the
+ node(s) with the highest sum are the most preferred.
+ items:
+ description: The weights of all of the matched WeightedPodAffinityTerm
+ fields are added per-node to find the most preferred
+ node(s)
+ properties:
+ podAffinityTerm:
+ description: Required. A pod affinity term, associated
+ with the corresponding weight.
+ properties:
+ labelSelector:
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list
+ of label selector requirements. The requirements
+ are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key is the label key
+ that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both matchLabelKeys and labelSelector.
+ Also, matchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
+ Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list
+ of label selector requirements. The requirements
+ are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key is the label key
+ that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ namespaces:
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
+ type: string
+ required:
+ - topologyKey
+ type: object
+ weight:
+ description: |-
+ weight associated with matching the corresponding podAffinityTerm,
+ in the range 1-100.
+ format: int32
+ type: integer
+ required:
+ - podAffinityTerm
+ - weight
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ If the affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to a pod label update), the
+ system may or may not try to eventually evict the pod from its node.
+ When there are multiple elements, the lists of nodes corresponding to each
+ podAffinityTerm are intersected, i.e. all terms must be satisfied.
+ items:
+ description: |-
+ Defines a set of pods (namely those matching the labelSelector
+ relative to the given namespace(s)) that this pod should be
+ co-located (affinity) or not co-located (anti-affinity) with,
+ where co-located is defined as running on a node whose value of
+ the label with key matches that of any node on which
+ a pod of the set of pods is running
+ properties:
+ labelSelector:
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label
+ selector requirements. The requirements are
+ ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key is the label key that
+ the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both matchLabelKeys and labelSelector.
+ Also, matchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
+ Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label
+ selector requirements. The requirements are
+ ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key is the label key that
+ the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ namespaces:
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
+ type: string
+ required:
+ - topologyKey
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ podAntiAffinity:
+ description: Describes pod anti-affinity scheduling rules
+ (e.g. avoid putting this pod in the same node, zone, etc.
+ as some other pod(s)).
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the anti-affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling anti-affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the
+ node(s) with the highest sum are the most preferred.
+ items:
+ description: The weights of all of the matched WeightedPodAffinityTerm
+ fields are added per-node to find the most preferred
+ node(s)
+ properties:
+ podAffinityTerm:
+ description: Required. A pod affinity term, associated
+ with the corresponding weight.
+ properties:
+ labelSelector:
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list
+ of label selector requirements. The requirements
+ are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key is the label key
+ that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both matchLabelKeys and labelSelector.
+ Also, matchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
+ Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list
+ of label selector requirements. The requirements
+ are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key is the label key
+ that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ namespaces:
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
+ type: string
+ required:
+ - topologyKey
+ type: object
+ weight:
+ description: |-
+ weight associated with matching the corresponding podAffinityTerm,
+ in the range 1-100.
+ format: int32
+ type: integer
+ required:
+ - podAffinityTerm
+ - weight
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ If the anti-affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the anti-affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to a pod label update), the
+ system may or may not try to eventually evict the pod from its node.
+ When there are multiple elements, the lists of nodes corresponding to each
+ podAffinityTerm are intersected, i.e. all terms must be satisfied.
+ items:
+ description: |-
+ Defines a set of pods (namely those matching the labelSelector
+ relative to the given namespace(s)) that this pod should be
+ co-located (affinity) or not co-located (anti-affinity) with,
+ where co-located is defined as running on a node whose value of
+ the label with key matches that of any node on which
+ a pod of the set of pods is running
+ properties:
+ labelSelector:
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label
+ selector requirements. The requirements are
+ ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key is the label key that
+ the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both matchLabelKeys and labelSelector.
+ Also, matchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
+ Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label
+ selector requirements. The requirements are
+ ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key is the label key that
+ the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ namespaces:
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
+ type: string
+ required:
+ - topologyKey
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ type: object
+ annotations:
+ additionalProperties:
+ type: string
+ description: Annotations are the Kubernetes annotations to be
+ added to the pod.
+ type: object
+ configMaps:
+ description: ConfigMaps carries information of other ConfigMaps
+ to add to the pod.
+ items:
+ description: NamePath is a pair of a name and a path to which
+ the named objects should be mounted to.
+ properties:
+ name:
+ type: string
+ path:
+ type: string
+ required:
+ - name
+ - path
+ type: object
+ type: array
+ coreLimit:
+ description: |-
+ CoreLimit specifies a hard limit on CPU cores for the pod.
+ Optional
+ type: string
+ coreRequest:
+ description: |-
+ CoreRequest is the physical CPU core request for the driver.
+ Maps to `spark.kubernetes.driver.request.cores` that is available since Spark 3.0.
+ type: string
+ cores:
+ description: Cores maps to `spark.driver.cores` or `spark.executor.cores`
+ for the driver and executors, respectively.
+ format: int32
+ minimum: 1
+ type: integer
+ dnsConfig:
+ description: DnsConfig dns settings for the pod, following the
+ Kubernetes specifications.
+ properties:
+ nameservers:
+ description: |-
+ A list of DNS name server IP addresses.
+ This will be appended to the base nameservers generated from DNSPolicy.
+ Duplicated nameservers will be removed.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ options:
+ description: |-
+ A list of DNS resolver options.
+ This will be merged with the base options generated from DNSPolicy.
+ Duplicated entries will be removed. Resolution options given in Options
+ will override those that appear in the base DNSPolicy.
+ items:
+ description: PodDNSConfigOption defines DNS resolver options
+ of a pod.
+ properties:
+ name:
+ description: |-
+ Name is this DNS resolver option's name.
+ Required.
+ type: string
+ value:
+ description: Value is this DNS resolver option's value.
+ type: string
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ searches:
+ description: |-
+ A list of DNS search domains for host-name lookup.
+ This will be appended to the base search paths generated from DNSPolicy.
+ Duplicated search paths will be removed.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ env:
+ description: Env carries the environment variables to add to the
+ pod.
+ items:
+ description: EnvVar represents an environment variable present
+ in a Container.
+ properties:
+ name:
+ description: Name of the environment variable. Must be a
+ C_IDENTIFIER.
+ type: string
+ value:
+ description: |-
+ Variable references $(VAR_NAME) are expanded
+ using the previously defined environment variables in the container and
+ any service environment variables. If a variable cannot be resolved,
+ the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e.
+ "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)".
+ Escaped references will never be expanded, regardless of whether the variable
+ exists or not.
+ Defaults to "".
+ type: string
+ valueFrom:
+ description: Source for the environment variable's value.
+ Cannot be used if value is not empty.
+ properties:
+ configMapKeyRef:
+ description: Selects a key of a ConfigMap.
+ properties:
+ key:
+ description: The key to select.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the ConfigMap or its
+ key must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ fieldRef:
+ description: |-
+ Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`,
+ spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.
+ properties:
+ apiVersion:
+ description: Version of the schema the FieldPath
+ is written in terms of, defaults to "v1".
+ type: string
+ fieldPath:
+ description: Path of the field to select in the
+ specified API version.
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ resourceFieldRef:
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported.
+ properties:
+ containerName:
+ description: 'Container name: required for volumes,
+ optional for env vars'
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ description: Specifies the output format of the
+ exposed resources, defaults to "1"
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ description: 'Required: resource to select'
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ secretKeyRef:
+ description: Selects a key of a secret in the pod's
+ namespace
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key
+ must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ required:
+ - name
+ type: object
+ type: array
+ envFrom:
+ description: EnvFrom is a list of sources to populate environment
+ variables in the container.
+ items:
+ description: EnvFromSource represents the source of a set of
+ ConfigMaps
+ properties:
+ configMapRef:
+ description: The ConfigMap to select from
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the ConfigMap must be defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ prefix:
+ description: An optional identifier to prepend to each key
+ in the ConfigMap. Must be a C_IDENTIFIER.
+ type: string
+ secretRef:
+ description: The Secret to select from
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret must be defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ type: array
+ envSecretKeyRefs:
+ additionalProperties:
+ description: NameKey represents the name and key of a SecretKeyRef.
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ required:
+ - key
+ - name
+ type: object
+ description: |-
+ EnvSecretKeyRefs holds a mapping from environment variable names to SecretKeyRefs.
+ Deprecated. Consider using `env` instead.
+ type: object
+ envVars:
+ additionalProperties:
+ type: string
+ description: |-
+ EnvVars carries the environment variables to add to the pod.
+ Deprecated. Consider using `env` instead.
+ type: object
+ gpu:
+ description: GPU specifies GPU requirement for the pod.
+ properties:
+ name:
+ description: 'Name is GPU resource name, such as: nvidia.com/gpu
+ or amd.com/gpu'
+ type: string
+ quantity:
+ description: Quantity is the number of GPUs to request for
+ driver or executor.
+ format: int64
+ type: integer
+ required:
+ - name
+ - quantity
+ type: object
+ hostAliases:
+ description: HostAliases settings for the pod, following the Kubernetes
+ specifications.
+ items:
+ description: |-
+ HostAlias holds the mapping between IP and hostnames that will be injected as an entry in the
+ pod's hosts file.
+ properties:
+ hostnames:
+ description: Hostnames for the above IP address.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ ip:
+ description: IP address of the host file entry.
+ type: string
+ required:
+ - ip
+ type: object
+ type: array
+ hostNetwork:
+ description: HostNetwork indicates whether to request host networking
+ for the pod or not.
+ type: boolean
+ image:
+ description: Image is the container image to use. Overrides Spec.Image
+ if set.
+ type: string
+ initContainers:
+ description: InitContainers is a list of init-containers that
+ run to completion before the main Spark container.
+ items:
+ description: A single application container that you want to
+ run within a pod.
+ properties:
+ args:
+ description: |-
+ Arguments to the entrypoint.
+ The container image's CMD is used if this is not provided.
+ Variable references $(VAR_NAME) are expanded using the container's environment. If a variable
+ cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will
+ produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless
+ of whether the variable exists or not. Cannot be updated.
+ More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ command:
+ description: |-
+ Entrypoint array. Not executed within a shell.
+ The container image's ENTRYPOINT is used if this is not provided.
+ Variable references $(VAR_NAME) are expanded using the container's environment. If a variable
+ cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will
+ produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless
+ of whether the variable exists or not. Cannot be updated.
+ More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ env:
+ description: |-
+ List of environment variables to set in the container.
+ Cannot be updated.
+ items:
+ description: EnvVar represents an environment variable
+ present in a Container.
+ properties:
+ name:
+ description: Name of the environment variable. Must
+ be a C_IDENTIFIER.
+ type: string
+ value:
+ description: |-
+ Variable references $(VAR_NAME) are expanded
+ using the previously defined environment variables in the container and
+ any service environment variables. If a variable cannot be resolved,
+ the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e.
+ "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)".
+ Escaped references will never be expanded, regardless of whether the variable
+ exists or not.
+ Defaults to "".
+ type: string
+ valueFrom:
+ description: Source for the environment variable's
+ value. Cannot be used if value is not empty.
+ properties:
+ configMapKeyRef:
+ description: Selects a key of a ConfigMap.
+ properties:
+ key:
+ description: The key to select.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the ConfigMap
+ or its key must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ fieldRef:
+ description: |-
+ Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`,
+ spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.
+ properties:
+ apiVersion:
+ description: Version of the schema the FieldPath
+ is written in terms of, defaults to "v1".
+ type: string
+ fieldPath:
+ description: Path of the field to select in
+ the specified API version.
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ resourceFieldRef:
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported.
+ properties:
+ containerName:
+ description: 'Container name: required for
+ volumes, optional for env vars'
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ description: Specifies the output format of
+ the exposed resources, defaults to "1"
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ description: 'Required: resource to select'
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ secretKeyRef:
+ description: Selects a key of a secret in the
+ pod's namespace
+ properties:
+ key:
+ description: The key of the secret to select
+ from. Must be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or
+ its key must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ envFrom:
+ description: |-
+ List of sources to populate environment variables in the container.
+ The keys defined within a source must be a C_IDENTIFIER. All invalid keys
+ will be reported as an event when the container is starting. When a key exists in multiple
+ sources, the value associated with the last source will take precedence.
+ Values defined by an Env with a duplicate key will take precedence.
+ Cannot be updated.
+ items:
+ description: EnvFromSource represents the source of a
+ set of ConfigMaps
+ properties:
+ configMapRef:
+ description: The ConfigMap to select from
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the ConfigMap must
+ be defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ prefix:
+ description: An optional identifier to prepend to
+ each key in the ConfigMap. Must be a C_IDENTIFIER.
+ type: string
+ secretRef:
+ description: The Secret to select from
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret must be
+ defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ image:
+ description: |-
+ Container image name.
+ More info: https://kubernetes.io/docs/concepts/containers/images
+ This field is optional to allow higher level config management to default or override
+ container images in workload controllers like Deployments and StatefulSets.
+ type: string
+ imagePullPolicy:
+ description: |-
+ Image pull policy.
+ One of Always, Never, IfNotPresent.
+ Defaults to Always if :latest tag is specified, or IfNotPresent otherwise.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/containers/images#updating-images
+ type: string
+ lifecycle:
+ description: |-
+ Actions that the management system should take in response to container lifecycle events.
+ Cannot be updated.
+ properties:
+ postStart:
+ description: |-
+ PostStart is called immediately after a container is created. If the handler fails,
+ the container is terminated and restarted according to its restart policy.
+ Other management of the container blocks until the hook completes.
+ More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
+ properties:
+ exec:
+ description: Exec specifies a command to execute
+ in the container.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ description: HTTPGet specifies an HTTP GET request
+ to perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers to set in the request.
+ HTTP allows repeated headers.
+ items:
+ description: HTTPHeader describes a custom
+ header to be used in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ description: Sleep represents a duration that the
+ container should sleep.
+ properties:
+ seconds:
+ description: Seconds is the number of seconds
+ to sleep.
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ description: |-
+ Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept
+ for backward compatibility. There is no validation of this field and
+ lifecycle hooks will fail at runtime when it is specified.
+ properties:
+ host:
+ description: 'Optional: Host name to connect
+ to, defaults to the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ preStop:
+ description: |-
+ PreStop is called immediately before a container is terminated due to an
+ API request or management event such as liveness/startup probe failure,
+ preemption, resource contention, etc. The handler is not called if the
+ container crashes or exits. The Pod's termination grace period countdown begins before the
+ PreStop hook is executed. Regardless of the outcome of the handler, the
+ container will eventually terminate within the Pod's termination grace
+ period (unless delayed by finalizers). Other management of the container blocks until the hook completes
+ or until the termination grace period is reached.
+ More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
+ properties:
+ exec:
+ description: Exec specifies a command to execute
+ in the container.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ description: HTTPGet specifies an HTTP GET request
+ to perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers to set in the request.
+ HTTP allows repeated headers.
+ items:
+ description: HTTPHeader describes a custom
+ header to be used in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ description: Sleep represents a duration that the
+ container should sleep.
+ properties:
+ seconds:
+ description: Seconds is the number of seconds
+ to sleep.
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ description: |-
+ Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept
+ for backward compatibility. There is no validation of this field and
+ lifecycle hooks will fail at runtime when it is specified.
+ properties:
+ host:
+ description: 'Optional: Host name to connect
+ to, defaults to the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ type: object
+ livenessProbe:
+ description: |-
+ Periodic probe of container liveness.
+ Container will be restarted if the probe fails.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ properties:
+ exec:
+ description: Exec specifies a command to execute in
+ the container.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
+ format: int32
+ type: integer
+ grpc:
+ description: GRPC specifies a GRPC HealthCheckRequest.
+ properties:
+ port:
+ description: Port number of the gRPC service. Number
+ must be in the range 1 to 65535.
+ format: int32
+ type: integer
+ service:
+ default: ""
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
+ (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
+
+ If this is not specified, the default behavior is defined by gRPC.
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ description: HTTPGet specifies an HTTP GET request to
+ perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers to set in the request.
+ HTTP allows repeated headers.
+ items:
+ description: HTTPHeader describes a custom header
+ to be used in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ periodSeconds:
+ description: |-
+ How often (in seconds) to perform the probe.
+ Default to 10 seconds. Minimum value is 1.
+ format: int32
+ type: integer
+ successThreshold:
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
+ format: int32
+ type: integer
+ tcpSocket:
+ description: TCPSocket specifies a connection to a TCP
+ port.
+ properties:
+ host:
+ description: 'Optional: Host name to connect to,
+ defaults to the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
+ format: int64
+ type: integer
+ timeoutSeconds:
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ type: object
+ name:
+ description: |-
+ Name of the container specified as a DNS_LABEL.
+ Each container in a pod must have a unique name (DNS_LABEL).
+ Cannot be updated.
+ type: string
+ ports:
+ description: |-
+ List of ports to expose from the container. Not specifying a port here
+ DOES NOT prevent that port from being exposed. Any port which is
+ listening on the default "0.0.0.0" address inside a container will be
+ accessible from the network.
+ Modifying this array with strategic merge patch may corrupt the data.
+ For more information See https://github.com/kubernetes/kubernetes/issues/108255.
+ Cannot be updated.
+ items:
+ description: ContainerPort represents a network port in
+ a single container.
+ properties:
+ containerPort:
+ description: |-
+ Number of port to expose on the pod's IP address.
+ This must be a valid port number, 0 < x < 65536.
+ format: int32
+ type: integer
+ hostIP:
+ description: What host IP to bind the external port
+ to.
+ type: string
+ hostPort:
+ description: |-
+ Number of port to expose on the host.
+ If specified, this must be a valid port number, 0 < x < 65536.
+ If HostNetwork is specified, this must match ContainerPort.
+ Most containers do not need this.
+ format: int32
+ type: integer
+ name:
+ description: |-
+ If specified, this must be an IANA_SVC_NAME and unique within the pod. Each
+ named port in a pod must have a unique name. Name for the port that can be
+ referred to by services.
+ type: string
+ protocol:
+ default: TCP
+ description: |-
+ Protocol for port. Must be UDP, TCP, or SCTP.
+ Defaults to "TCP".
+ type: string
+ required:
+ - containerPort
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - containerPort
+ - protocol
+ x-kubernetes-list-type: map
+ readinessProbe:
+ description: |-
+ Periodic probe of container service readiness.
+ Container will be removed from service endpoints if the probe fails.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ properties:
+ exec:
+ description: Exec specifies a command to execute in
+ the container.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
+ format: int32
+ type: integer
+ grpc:
+ description: GRPC specifies a GRPC HealthCheckRequest.
+ properties:
+ port:
+ description: Port number of the gRPC service. Number
+ must be in the range 1 to 65535.
+ format: int32
+ type: integer
+ service:
+ default: ""
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
+ (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
+
+ If this is not specified, the default behavior is defined by gRPC.
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ description: HTTPGet specifies an HTTP GET request to
+ perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers to set in the request.
+ HTTP allows repeated headers.
+ items:
+ description: HTTPHeader describes a custom header
+ to be used in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ periodSeconds:
+ description: |-
+ How often (in seconds) to perform the probe.
+ Default to 10 seconds. Minimum value is 1.
+ format: int32
+ type: integer
+ successThreshold:
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
+ format: int32
+ type: integer
+ tcpSocket:
+ description: TCPSocket specifies a connection to a TCP
+ port.
+ properties:
+ host:
+ description: 'Optional: Host name to connect to,
+ defaults to the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
+ format: int64
+ type: integer
+ timeoutSeconds:
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ type: object
+ resizePolicy:
+ description: Resources resize policy for the container.
+ items:
+ description: ContainerResizePolicy represents resource
+ resize policy for the container.
+ properties:
+ resourceName:
+ description: |-
+ Name of the resource to which this resource resize policy applies.
+ Supported values: cpu, memory.
+ type: string
+ restartPolicy:
+ description: |-
+ Restart policy to apply when specified resource is resized.
+ If not specified, it defaults to NotRequired.
+ type: string
+ required:
+ - resourceName
+ - restartPolicy
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ resources:
+ description: |-
+ Compute Resources required by this container.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ properties:
+ claims:
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+ This field is immutable. It can only be set for containers.
+ items:
+ description: ResourceClaim references one entry in
+ PodSpec.ResourceClaims.
+ properties:
+ name:
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
+ type: string
+ request:
+ description: |-
+ Request is the name chosen for a request in the referenced claim.
+ If empty, everything from the claim is made available, otherwise
+ only the result of this request.
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ limits:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ type: object
+ requests:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ type: object
+ type: object
+ restartPolicy:
+ description: |-
+ RestartPolicy defines the restart behavior of individual containers in a pod.
+ This field may only be set for init containers, and the only allowed value is "Always".
+ For non-init containers or when this field is not specified,
+ the restart behavior is defined by the Pod's restart policy and the container type.
+ Setting the RestartPolicy as "Always" for the init container will have the following effect:
+ this init container will be continually restarted on
+ exit until all regular containers have terminated. Once all regular
+ containers have completed, all init containers with restartPolicy "Always"
+ will be shut down. This lifecycle differs from normal init containers and
+ is often referred to as a "sidecar" container. Although this init
+ container still starts in the init container sequence, it does not wait
+ for the container to complete before proceeding to the next init
+ container. Instead, the next init container starts immediately after this
+ init container is started, or after any startupProbe has successfully
+ completed.
+ type: string
+ securityContext:
+ description: |-
+ SecurityContext defines the security options the container should be run with.
+ If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext.
+ More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
+ properties:
+ allowPrivilegeEscalation:
+ description: |-
+ AllowPrivilegeEscalation controls whether a process can gain more
+ privileges than its parent process. This bool directly controls if
+ the no_new_privs flag will be set on the container process.
+ AllowPrivilegeEscalation is true always when the container is:
+ 1) run as Privileged
+ 2) has CAP_SYS_ADMIN
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ appArmorProfile:
+ description: |-
+ appArmorProfile is the AppArmor options to use by this container. If set, this profile
+ overrides the pod's appArmorProfile.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile loaded on the node that should be used.
+ The profile must be preconfigured on the node to work.
+ Must match the loaded name of the profile.
+ Must be set if and only if type is "Localhost".
+ type: string
+ type:
+ description: |-
+ type indicates which kind of AppArmor profile will be applied.
+ Valid options are:
+ Localhost - a profile pre-loaded on the node.
+ RuntimeDefault - the container runtime's default profile.
+ Unconfined - no AppArmor enforcement.
+ type: string
+ required:
+ - type
+ type: object
+ capabilities:
+ description: |-
+ The capabilities to add/drop when running containers.
+ Defaults to the default set of capabilities granted by the container runtime.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ add:
+ description: Added capabilities
+ items:
+ description: Capability represent POSIX capabilities
+ type
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ drop:
+ description: Removed capabilities
+ items:
+ description: Capability represent POSIX capabilities
+ type
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ privileged:
+ description: |-
+ Run container in privileged mode.
+ Processes in privileged containers are essentially equivalent to root on the host.
+ Defaults to false.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ procMount:
+ description: |-
+ procMount denotes the type of proc mount to use for the containers.
+ The default value is Default which uses the container runtime defaults for
+ readonly paths and masked paths.
+ This requires the ProcMountType feature flag to be enabled.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: string
+ readOnlyRootFilesystem:
+ description: |-
+ Whether this container has a read-only root filesystem.
+ Default is false.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ runAsGroup:
+ description: |-
+ The GID to run the entrypoint of the container process.
+ Uses runtime default if unset.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ runAsNonRoot:
+ description: |-
+ Indicates that the container must run as a non-root user.
+ If true, the Kubelet will validate the image at runtime to ensure that it
+ does not run as UID 0 (root) and fail to start the container if it does.
+ If unset or false, no such validation will be performed.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: boolean
+ runAsUser:
+ description: |-
+ The UID to run the entrypoint of the container process.
+ Defaults to user specified in image metadata if unspecified.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ seLinuxOptions:
+ description: |-
+ The SELinux context to be applied to the container.
+ If unspecified, the container runtime will allocate a random SELinux context for each
+ container. May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ level:
+ description: Level is SELinux level label that applies
+ to the container.
+ type: string
+ role:
+ description: Role is a SELinux role label that applies
+ to the container.
+ type: string
+ type:
+ description: Type is a SELinux type label that applies
+ to the container.
+ type: string
+ user:
+ description: User is a SELinux user label that applies
+ to the container.
+ type: string
+ type: object
+ seccompProfile:
+ description: |-
+ The seccomp options to use by this container. If seccomp options are
+ provided at both the pod & container level, the container options
+ override the pod options.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile defined in a file on the node should be used.
+ The profile must be preconfigured on the node to work.
+ Must be a descending path, relative to the kubelet's configured seccomp profile location.
+ Must be set if type is "Localhost". Must NOT be set for any other type.
+ type: string
+ type:
+ description: |-
+ type indicates which kind of seccomp profile will be applied.
+ Valid options are:
+
+ Localhost - a profile defined in a file on the node should be used.
+ RuntimeDefault - the container runtime default profile should be used.
+ Unconfined - no profile should be applied.
+ type: string
+ required:
+ - type
+ type: object
+ windowsOptions:
+ description: |-
+ The Windows specific settings applied to all containers.
+ If unspecified, the options from the PodSecurityContext will be used.
+ If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is linux.
+ properties:
+ gmsaCredentialSpec:
+ description: |-
+ GMSACredentialSpec is where the GMSA admission webhook
+ (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the
+ GMSA credential spec named by the GMSACredentialSpecName field.
+ type: string
+ gmsaCredentialSpecName:
+ description: GMSACredentialSpecName is the name
+ of the GMSA credential spec to use.
+ type: string
+ hostProcess:
+ description: |-
+ HostProcess determines if a container should be run as a 'Host Process' container.
+ All of a Pod's containers must have the same effective HostProcess value
+ (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers).
+ In addition, if HostProcess is true then HostNetwork must also be set to true.
+ type: boolean
+ runAsUserName:
+ description: |-
+ The UserName in Windows to run the entrypoint of the container process.
+ Defaults to the user specified in image metadata if unspecified.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: string
+ type: object
+ type: object
+ startupProbe:
+ description: |-
+ 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: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ properties:
+ exec:
+ description: Exec specifies a command to execute in
+ the container.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
+ format: int32
+ type: integer
+ grpc:
+ description: GRPC specifies a GRPC HealthCheckRequest.
+ properties:
+ port:
+ description: Port number of the gRPC service. Number
+ must be in the range 1 to 65535.
+ format: int32
+ type: integer
+ service:
+ default: ""
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
+ (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
+
+ If this is not specified, the default behavior is defined by gRPC.
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ description: HTTPGet specifies an HTTP GET request to
+ perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers to set in the request.
+ HTTP allows repeated headers.
+ items:
+ description: HTTPHeader describes a custom header
+ to be used in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ periodSeconds:
+ description: |-
+ How often (in seconds) to perform the probe.
+ Default to 10 seconds. Minimum value is 1.
+ format: int32
+ type: integer
+ successThreshold:
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
+ format: int32
+ type: integer
+ tcpSocket:
+ description: TCPSocket specifies a connection to a TCP
+ port.
+ properties:
+ host:
+ description: 'Optional: Host name to connect to,
+ defaults to the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
+ format: int64
+ type: integer
+ timeoutSeconds:
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ type: object
+ stdin:
+ description: |-
+ Whether this container should allocate a buffer for stdin in the container runtime. If this
+ is not set, reads from stdin in the container will always result in EOF.
+ Default is false.
+ type: boolean
+ stdinOnce:
+ description: |-
+ Whether the container runtime should close the stdin channel after it has been opened by
+ a single attach. When stdin is true the stdin stream will remain open across multiple attach
+ sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the
+ first client attaches to stdin, and then remains open and accepts data until the client disconnects,
+ at which time stdin is closed and remains closed until the container is restarted. If this
+ flag is false, a container processes that reads from stdin will never receive an EOF.
+ Default is false
+ type: boolean
+ terminationMessagePath:
+ description: |-
+ Optional: Path at which the file to which the container's termination message
+ will be written is mounted into the container's filesystem.
+ Message written is intended to be brief final status, such as an assertion failure message.
+ Will be truncated by the node if greater than 4096 bytes. The total message length across
+ all containers will be limited to 12kb.
+ Defaults to /dev/termination-log.
+ Cannot be updated.
+ type: string
+ terminationMessagePolicy:
+ description: |-
+ Indicate how the termination message should be populated. File will use the contents of
+ terminationMessagePath to populate the container status message on both success and failure.
+ FallbackToLogsOnError will use the last chunk of container log output if the termination
+ message file is empty and the container exited with an error.
+ The log output is limited to 2048 bytes or 80 lines, whichever is smaller.
+ Defaults to File.
+ Cannot be updated.
+ type: string
+ tty:
+ description: |-
+ Whether this container should allocate a TTY for itself, also requires 'stdin' to be true.
+ Default is false.
+ type: boolean
+ volumeDevices:
+ description: volumeDevices is the list of block devices
+ to be used by the container.
+ items:
+ description: volumeDevice describes a mapping of a raw
+ block device within a container.
+ properties:
+ devicePath:
+ description: devicePath is the path inside of the
+ container that the device will be mapped to.
+ type: string
+ name:
+ description: name must match the name of a persistentVolumeClaim
+ in the pod
+ type: string
+ required:
+ - devicePath
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
+ volumeMounts:
+ description: |-
+ Pod volumes to mount into the container's filesystem.
+ Cannot be updated.
+ items:
+ description: VolumeMount describes a mounting of a Volume
+ within a container.
+ properties:
+ mountPath:
+ description: |-
+ Path within the container at which the volume should be mounted. Must
+ not contain ':'.
+ type: string
+ mountPropagation:
+ description: |-
+ mountPropagation determines how mounts are propagated from the host
+ to container and the other way around.
+ When not set, MountPropagationNone is used.
+ This field is beta in 1.10.
+ When RecursiveReadOnly is set to IfPossible or to Enabled, MountPropagation must be None or unspecified
+ (which defaults to None).
+ type: string
+ name:
+ description: This must match the Name of a Volume.
+ type: string
+ readOnly:
+ description: |-
+ Mounted read-only if true, read-write otherwise (false or unspecified).
+ Defaults to false.
+ type: boolean
+ recursiveReadOnly:
+ description: |-
+ RecursiveReadOnly specifies whether read-only mounts should be handled
+ recursively.
+
+ If ReadOnly is false, this field has no meaning and must be unspecified.
+
+ If ReadOnly is true, and this field is set to Disabled, the mount is not made
+ recursively read-only. If this field is set to IfPossible, the mount is made
+ recursively read-only, if it is supported by the container runtime. If this
+ field is set to Enabled, the mount is made recursively read-only if it is
+ supported by the container runtime, otherwise the pod will not be started and
+ an error will be generated to indicate the reason.
+
+ If this field is set to IfPossible or Enabled, MountPropagation must be set to
+ None (or be unspecified, which defaults to None).
+
+ If this field is not specified, it is treated as an equivalent of Disabled.
+ type: string
+ subPath:
+ description: |-
+ Path within the volume from which the container's volume should be mounted.
+ Defaults to "" (volume's root).
+ type: string
+ subPathExpr:
+ description: |-
+ Expanded path within the volume from which the container's volume should be mounted.
+ Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.
+ Defaults to "" (volume's root).
+ SubPathExpr and SubPath are mutually exclusive.
+ type: string
+ required:
+ - mountPath
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
+ workingDir:
+ description: |-
+ Container's working directory.
+ If not specified, the container runtime's default will be used, which
+ might be configured in the container image.
+ Cannot be updated.
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ javaOptions:
+ description: |-
+ JavaOptions is a string of extra JVM options to pass to the driver. For instance,
+ GC settings or other logging.
+ type: string
+ kubernetesMaster:
+ description: |-
+ KubernetesMaster is the URL of the Kubernetes master used by the driver to manage executor pods and
+ other Kubernetes resources. Default to https://kubernetes.default.svc.
+ type: string
+ labels:
+ additionalProperties:
+ type: string
+ description: Labels are the Kubernetes labels to be added to the
+ pod.
+ type: object
+ lifecycle:
+ description: Lifecycle for running preStop or postStart commands
+ properties:
+ postStart:
+ description: |-
+ PostStart is called immediately after a container is created. If the handler fails,
+ the container is terminated and restarted according to its restart policy.
+ Other management of the container blocks until the hook completes.
+ More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
+ properties:
+ exec:
+ description: Exec specifies a command to execute in the
+ container.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ description: HTTPGet specifies an HTTP GET request to
+ perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers to set in the request.
+ HTTP allows repeated headers.
+ items:
+ description: HTTPHeader describes a custom header
+ to be used in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ description: Sleep represents a duration that the container
+ should sleep.
+ properties:
+ seconds:
+ description: Seconds is the number of seconds to sleep.
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ description: |-
+ Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept
+ for backward compatibility. There is no validation of this field and
+ lifecycle hooks will fail at runtime when it is specified.
+ properties:
+ host:
+ description: 'Optional: Host name to connect to, defaults
+ to the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ preStop:
+ description: |-
+ PreStop is called immediately before a container is terminated due to an
+ API request or management event such as liveness/startup probe failure,
+ preemption, resource contention, etc. The handler is not called if the
+ container crashes or exits. The Pod's termination grace period countdown begins before the
+ PreStop hook is executed. Regardless of the outcome of the handler, the
+ container will eventually terminate within the Pod's termination grace
+ period (unless delayed by finalizers). Other management of the container blocks until the hook completes
+ or until the termination grace period is reached.
+ More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
+ properties:
+ exec:
+ description: Exec specifies a command to execute in the
+ container.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ description: HTTPGet specifies an HTTP GET request to
+ perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers to set in the request.
+ HTTP allows repeated headers.
+ items:
+ description: HTTPHeader describes a custom header
+ to be used in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ description: Sleep represents a duration that the container
+ should sleep.
+ properties:
+ seconds:
+ description: Seconds is the number of seconds to sleep.
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ description: |-
+ Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept
+ for backward compatibility. There is no validation of this field and
+ lifecycle hooks will fail at runtime when it is specified.
+ properties:
+ host:
+ description: 'Optional: Host name to connect to, defaults
+ to the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ type: object
+ memory:
+ description: Memory is the amount of memory to request for the
+ pod.
+ type: string
+ memoryOverhead:
+ description: MemoryOverhead is the amount of off-heap memory to
+ allocate in cluster mode, in MiB unless otherwise specified.
+ type: string
+ nodeSelector:
+ additionalProperties:
+ type: string
+ description: |-
+ NodeSelector is the Kubernetes node selector to be added to the driver and executor pods.
+ This field is mutually exclusive with nodeSelector at SparkApplication level (which will be deprecated).
+ type: object
+ podName:
+ description: |-
+ PodName is the name of the driver pod that the user creates. This is used for the
+ in-cluster client mode in which the user creates a client pod where the driver of
+ the user application runs. It's an error to set this field if Mode is not
+ in-cluster-client.
+ pattern: '[a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*'
+ type: string
+ podSecurityContext:
+ description: PodSecurityContext specifies the PodSecurityContext
+ to apply.
+ properties:
+ appArmorProfile:
+ description: |-
+ appArmorProfile is the AppArmor options to use by the containers in this pod.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile loaded on the node that should be used.
+ The profile must be preconfigured on the node to work.
+ Must match the loaded name of the profile.
+ Must be set if and only if type is "Localhost".
+ type: string
+ type:
+ description: |-
+ type indicates which kind of AppArmor profile will be applied.
+ Valid options are:
+ Localhost - a profile pre-loaded on the node.
+ RuntimeDefault - the container runtime's default profile.
+ Unconfined - no AppArmor enforcement.
+ type: string
+ required:
+ - type
+ type: object
+ fsGroup:
+ description: |-
+ A special supplemental group that applies to all containers in a pod.
+ Some volume types allow the Kubelet to change the ownership of that volume
+ to be owned by the pod:
+
+ 1. The owning GID will be the FSGroup
+ 2. The setgid bit is set (new files created in the volume will be owned by FSGroup)
+ 3. The permission bits are OR'd with rw-rw----
+
+ If unset, the Kubelet will not modify the ownership and permissions of any volume.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ fsGroupChangePolicy:
+ description: |-
+ fsGroupChangePolicy defines behavior of changing ownership and permission of the volume
+ before being exposed inside Pod. This field will only apply to
+ volume types which support fsGroup based ownership(and permissions).
+ It will have no effect on ephemeral volume types such as: secret, configmaps
+ and emptydir.
+ Valid values are "OnRootMismatch" and "Always". If not specified, "Always" is used.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: string
+ runAsGroup:
+ description: |-
+ The GID to run the entrypoint of the container process.
+ Uses runtime default if unset.
+ May also be set in SecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence
+ for that container.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ runAsNonRoot:
+ description: |-
+ Indicates that the container must run as a non-root user.
+ If true, the Kubelet will validate the image at runtime to ensure that it
+ does not run as UID 0 (root) and fail to start the container if it does.
+ If unset or false, no such validation will be performed.
+ May also be set in SecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: boolean
+ runAsUser:
+ description: |-
+ The UID to run the entrypoint of the container process.
+ Defaults to user specified in image metadata if unspecified.
+ May also be set in SecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence
+ for that container.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ seLinuxChangePolicy:
+ description: |-
+ seLinuxChangePolicy defines how the container's SELinux label is applied to all volumes used by the Pod.
+ It has no effect on nodes that do not support SELinux or to volumes does not support SELinux.
+ Valid values are "MountOption" and "Recursive".
+
+ "Recursive" means relabeling of all files on all Pod volumes by the container runtime.
+ This may be slow for large volumes, but allows mixing privileged and unprivileged Pods sharing the same volume on the same node.
+
+ "MountOption" mounts all eligible Pod volumes with `-o context` mount option.
+ This requires all Pods that share the same volume to use the same SELinux label.
+ It is not possible to share the same volume among privileged and unprivileged Pods.
+ Eligible volumes are in-tree FibreChannel and iSCSI volumes, and all CSI volumes
+ whose CSI driver announces SELinux support by setting spec.seLinuxMount: true in their
+ CSIDriver instance. Other volumes are always re-labelled recursively.
+ "MountOption" value is allowed only when SELinuxMount feature gate is enabled.
+
+ If not specified and SELinuxMount feature gate is enabled, "MountOption" is used.
+ If not specified and SELinuxMount feature gate is disabled, "MountOption" is used for ReadWriteOncePod volumes
+ and "Recursive" for all other volumes.
+
+ This field affects only Pods that have SELinux label set, either in PodSecurityContext or in SecurityContext of all containers.
+
+ All Pods that use the same volume should use the same seLinuxChangePolicy, otherwise some pods can get stuck in ContainerCreating state.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: string
+ seLinuxOptions:
+ description: |-
+ The SELinux context to be applied to all containers.
+ If unspecified, the container runtime will allocate a random SELinux context for each
+ container. May also be set in SecurityContext. If set in
+ both SecurityContext and PodSecurityContext, the value specified in SecurityContext
+ takes precedence for that container.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ level:
+ description: Level is SELinux level label that applies
+ to the container.
+ type: string
+ role:
+ description: Role is a SELinux role label that applies
+ to the container.
+ type: string
+ type:
+ description: Type is a SELinux type label that applies
+ to the container.
+ type: string
+ user:
+ description: User is a SELinux user label that applies
+ to the container.
+ type: string
+ type: object
+ seccompProfile:
+ description: |-
+ The seccomp options to use by the containers in this pod.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile defined in a file on the node should be used.
+ The profile must be preconfigured on the node to work.
+ Must be a descending path, relative to the kubelet's configured seccomp profile location.
+ Must be set if type is "Localhost". Must NOT be set for any other type.
+ type: string
+ type:
+ description: |-
+ type indicates which kind of seccomp profile will be applied.
+ Valid options are:
+
+ Localhost - a profile defined in a file on the node should be used.
+ RuntimeDefault - the container runtime default profile should be used.
+ Unconfined - no profile should be applied.
+ type: string
+ required:
+ - type
+ type: object
+ supplementalGroups:
+ description: |-
+ A list of groups applied to the first process run in each container, in
+ addition to the container's primary GID and fsGroup (if specified). If
+ the SupplementalGroupsPolicy feature is enabled, the
+ supplementalGroupsPolicy field determines whether these are in addition
+ to or instead of any group memberships defined in the container image.
+ If unspecified, no additional groups are added, though group memberships
+ defined in the container image may still be used, depending on the
+ supplementalGroupsPolicy field.
+ Note that this field cannot be set when spec.os.name is windows.
+ items:
+ format: int64
+ type: integer
+ type: array
+ x-kubernetes-list-type: atomic
+ supplementalGroupsPolicy:
+ description: |-
+ Defines how supplemental groups of the first container processes are calculated.
+ Valid values are "Merge" and "Strict". If not specified, "Merge" is used.
+ (Alpha) Using the field requires the SupplementalGroupsPolicy feature gate to be enabled
+ and the container runtime must implement support for this feature.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: string
+ sysctls:
+ description: |-
+ Sysctls hold a list of namespaced sysctls used for the pod. Pods with unsupported
+ sysctls (by the container runtime) might fail to launch.
+ Note that this field cannot be set when spec.os.name is windows.
+ items:
+ description: Sysctl defines a kernel parameter to be set
+ properties:
+ name:
+ description: Name of a property to set
+ type: string
+ value:
+ description: Value of a property to set
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ windowsOptions:
+ description: |-
+ The Windows specific settings applied to all containers.
+ If unspecified, the options within a container's SecurityContext will be used.
+ If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is linux.
+ properties:
+ gmsaCredentialSpec:
+ description: |-
+ GMSACredentialSpec is where the GMSA admission webhook
+ (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the
+ GMSA credential spec named by the GMSACredentialSpecName field.
+ type: string
+ gmsaCredentialSpecName:
+ description: GMSACredentialSpecName is the name of the
+ GMSA credential spec to use.
+ type: string
+ hostProcess:
+ description: |-
+ HostProcess determines if a container should be run as a 'Host Process' container.
+ All of a Pod's containers must have the same effective HostProcess value
+ (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers).
+ In addition, if HostProcess is true then HostNetwork must also be set to true.
+ type: boolean
+ runAsUserName:
+ description: |-
+ The UserName in Windows to run the entrypoint of the container process.
+ Defaults to the user specified in image metadata if unspecified.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: string
+ type: object
+ type: object
+ ports:
+ description: Ports settings for the pods, following the Kubernetes
+ specifications.
+ items:
+ description: Port represents the port definition in the pods
+ objects.
+ properties:
+ containerPort:
+ format: int32
+ type: integer
+ name:
+ type: string
+ protocol:
+ type: string
+ required:
+ - containerPort
+ - name
+ - protocol
+ type: object
+ type: array
+ priorityClassName:
+ description: PriorityClassName is the name of the PriorityClass
+ for the driver pod.
+ type: string
+ schedulerName:
+ description: SchedulerName specifies the scheduler that will be
+ used for scheduling
+ type: string
+ secrets:
+ description: Secrets carries information of secrets to add to
+ the pod.
+ items:
+ description: SecretInfo captures information of a secret.
+ properties:
+ name:
+ type: string
+ path:
+ type: string
+ secretType:
+ description: SecretType tells the type of a secret.
+ type: string
+ required:
+ - name
+ - path
+ - secretType
+ type: object
+ type: array
+ securityContext:
+ description: SecurityContext specifies the container's SecurityContext
+ to apply.
+ properties:
+ allowPrivilegeEscalation:
+ description: |-
+ AllowPrivilegeEscalation controls whether a process can gain more
+ privileges than its parent process. This bool directly controls if
+ the no_new_privs flag will be set on the container process.
+ AllowPrivilegeEscalation is true always when the container is:
+ 1) run as Privileged
+ 2) has CAP_SYS_ADMIN
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ appArmorProfile:
+ description: |-
+ appArmorProfile is the AppArmor options to use by this container. If set, this profile
+ overrides the pod's appArmorProfile.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile loaded on the node that should be used.
+ The profile must be preconfigured on the node to work.
+ Must match the loaded name of the profile.
+ Must be set if and only if type is "Localhost".
+ type: string
+ type:
+ description: |-
+ type indicates which kind of AppArmor profile will be applied.
+ Valid options are:
+ Localhost - a profile pre-loaded on the node.
+ RuntimeDefault - the container runtime's default profile.
+ Unconfined - no AppArmor enforcement.
+ type: string
+ required:
+ - type
+ type: object
+ capabilities:
+ description: |-
+ The capabilities to add/drop when running containers.
+ Defaults to the default set of capabilities granted by the container runtime.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ add:
+ description: Added capabilities
+ items:
+ description: Capability represent POSIX capabilities
+ type
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ drop:
+ description: Removed capabilities
+ items:
+ description: Capability represent POSIX capabilities
+ type
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ privileged:
+ description: |-
+ Run container in privileged mode.
+ Processes in privileged containers are essentially equivalent to root on the host.
+ Defaults to false.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ procMount:
+ description: |-
+ procMount denotes the type of proc mount to use for the containers.
+ The default value is Default which uses the container runtime defaults for
+ readonly paths and masked paths.
+ This requires the ProcMountType feature flag to be enabled.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: string
+ readOnlyRootFilesystem:
+ description: |-
+ Whether this container has a read-only root filesystem.
+ Default is false.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ runAsGroup:
+ description: |-
+ The GID to run the entrypoint of the container process.
+ Uses runtime default if unset.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ runAsNonRoot:
+ description: |-
+ Indicates that the container must run as a non-root user.
+ If true, the Kubelet will validate the image at runtime to ensure that it
+ does not run as UID 0 (root) and fail to start the container if it does.
+ If unset or false, no such validation will be performed.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: boolean
+ runAsUser:
+ description: |-
+ The UID to run the entrypoint of the container process.
+ Defaults to user specified in image metadata if unspecified.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ seLinuxOptions:
+ description: |-
+ The SELinux context to be applied to the container.
+ If unspecified, the container runtime will allocate a random SELinux context for each
+ container. May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ level:
+ description: Level is SELinux level label that applies
+ to the container.
+ type: string
+ role:
+ description: Role is a SELinux role label that applies
+ to the container.
+ type: string
+ type:
+ description: Type is a SELinux type label that applies
+ to the container.
+ type: string
+ user:
+ description: User is a SELinux user label that applies
+ to the container.
+ type: string
+ type: object
+ seccompProfile:
+ description: |-
+ The seccomp options to use by this container. If seccomp options are
+ provided at both the pod & container level, the container options
+ override the pod options.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile defined in a file on the node should be used.
+ The profile must be preconfigured on the node to work.
+ Must be a descending path, relative to the kubelet's configured seccomp profile location.
+ Must be set if type is "Localhost". Must NOT be set for any other type.
+ type: string
+ type:
+ description: |-
+ type indicates which kind of seccomp profile will be applied.
+ Valid options are:
+
+ Localhost - a profile defined in a file on the node should be used.
+ RuntimeDefault - the container runtime default profile should be used.
+ Unconfined - no profile should be applied.
+ type: string
+ required:
+ - type
+ type: object
+ windowsOptions:
+ description: |-
+ The Windows specific settings applied to all containers.
+ If unspecified, the options from the PodSecurityContext will be used.
+ If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is linux.
+ properties:
+ gmsaCredentialSpec:
+ description: |-
+ GMSACredentialSpec is where the GMSA admission webhook
+ (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the
+ GMSA credential spec named by the GMSACredentialSpecName field.
+ type: string
+ gmsaCredentialSpecName:
+ description: GMSACredentialSpecName is the name of the
+ GMSA credential spec to use.
+ type: string
+ hostProcess:
+ description: |-
+ HostProcess determines if a container should be run as a 'Host Process' container.
+ All of a Pod's containers must have the same effective HostProcess value
+ (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers).
+ In addition, if HostProcess is true then HostNetwork must also be set to true.
+ type: boolean
+ runAsUserName:
+ description: |-
+ The UserName in Windows to run the entrypoint of the container process.
+ Defaults to the user specified in image metadata if unspecified.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: string
+ type: object
+ type: object
+ serviceAccount:
+ description: ServiceAccount is the name of the custom Kubernetes
+ service account used by the pod.
+ type: string
+ serviceAnnotations:
+ additionalProperties:
+ type: string
+ description: |-
+ ServiceAnnotations defines the annotations to be added to the Kubernetes headless service used by
+ executors to connect to the driver.
+ type: object
+ serviceLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ ServiceLabels defines the labels to be added to the Kubernetes headless service used by
+ executors to connect to the driver.
+ type: object
+ shareProcessNamespace:
+ description: ShareProcessNamespace settings for the pod, following
+ the Kubernetes specifications.
+ type: boolean
+ sidecars:
+ description: Sidecars is a list of sidecar containers that run
+ along side the main Spark container.
+ items:
+ description: A single application container that you want to
+ run within a pod.
+ properties:
+ args:
+ description: |-
+ Arguments to the entrypoint.
+ The container image's CMD is used if this is not provided.
+ Variable references $(VAR_NAME) are expanded using the container's environment. If a variable
+ cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will
+ produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless
+ of whether the variable exists or not. Cannot be updated.
+ More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ command:
+ description: |-
+ Entrypoint array. Not executed within a shell.
+ The container image's ENTRYPOINT is used if this is not provided.
+ Variable references $(VAR_NAME) are expanded using the container's environment. If a variable
+ cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will
+ produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless
+ of whether the variable exists or not. Cannot be updated.
+ More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ env:
+ description: |-
+ List of environment variables to set in the container.
+ Cannot be updated.
+ items:
+ description: EnvVar represents an environment variable
+ present in a Container.
+ properties:
+ name:
+ description: Name of the environment variable. Must
+ be a C_IDENTIFIER.
+ type: string
+ value:
+ description: |-
+ Variable references $(VAR_NAME) are expanded
+ using the previously defined environment variables in the container and
+ any service environment variables. If a variable cannot be resolved,
+ the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e.
+ "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)".
+ Escaped references will never be expanded, regardless of whether the variable
+ exists or not.
+ Defaults to "".
+ type: string
+ valueFrom:
+ description: Source for the environment variable's
+ value. Cannot be used if value is not empty.
+ properties:
+ configMapKeyRef:
+ description: Selects a key of a ConfigMap.
+ properties:
+ key:
+ description: The key to select.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the ConfigMap
+ or its key must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ fieldRef:
+ description: |-
+ Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`,
+ spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.
+ properties:
+ apiVersion:
+ description: Version of the schema the FieldPath
+ is written in terms of, defaults to "v1".
+ type: string
+ fieldPath:
+ description: Path of the field to select in
+ the specified API version.
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ resourceFieldRef:
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported.
+ properties:
+ containerName:
+ description: 'Container name: required for
+ volumes, optional for env vars'
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ description: Specifies the output format of
+ the exposed resources, defaults to "1"
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ description: 'Required: resource to select'
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ secretKeyRef:
+ description: Selects a key of a secret in the
+ pod's namespace
+ properties:
+ key:
+ description: The key of the secret to select
+ from. Must be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or
+ its key must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ envFrom:
+ description: |-
+ List of sources to populate environment variables in the container.
+ The keys defined within a source must be a C_IDENTIFIER. All invalid keys
+ will be reported as an event when the container is starting. When a key exists in multiple
+ sources, the value associated with the last source will take precedence.
+ Values defined by an Env with a duplicate key will take precedence.
+ Cannot be updated.
+ items:
+ description: EnvFromSource represents the source of a
+ set of ConfigMaps
+ properties:
+ configMapRef:
+ description: The ConfigMap to select from
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the ConfigMap must
+ be defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ prefix:
+ description: An optional identifier to prepend to
+ each key in the ConfigMap. Must be a C_IDENTIFIER.
+ type: string
+ secretRef:
+ description: The Secret to select from
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret must be
+ defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ image:
+ description: |-
+ Container image name.
+ More info: https://kubernetes.io/docs/concepts/containers/images
+ This field is optional to allow higher level config management to default or override
+ container images in workload controllers like Deployments and StatefulSets.
+ type: string
+ imagePullPolicy:
+ description: |-
+ Image pull policy.
+ One of Always, Never, IfNotPresent.
+ Defaults to Always if :latest tag is specified, or IfNotPresent otherwise.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/containers/images#updating-images
+ type: string
+ lifecycle:
+ description: |-
+ Actions that the management system should take in response to container lifecycle events.
+ Cannot be updated.
+ properties:
+ postStart:
+ description: |-
+ PostStart is called immediately after a container is created. If the handler fails,
+ the container is terminated and restarted according to its restart policy.
+ Other management of the container blocks until the hook completes.
+ More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
+ properties:
+ exec:
+ description: Exec specifies a command to execute
+ in the container.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ description: HTTPGet specifies an HTTP GET request
+ to perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers to set in the request.
+ HTTP allows repeated headers.
+ items:
+ description: HTTPHeader describes a custom
+ header to be used in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ description: Sleep represents a duration that the
+ container should sleep.
+ properties:
+ seconds:
+ description: Seconds is the number of seconds
+ to sleep.
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ description: |-
+ Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept
+ for backward compatibility. There is no validation of this field and
+ lifecycle hooks will fail at runtime when it is specified.
+ properties:
+ host:
+ description: 'Optional: Host name to connect
+ to, defaults to the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ preStop:
+ description: |-
+ PreStop is called immediately before a container is terminated due to an
+ API request or management event such as liveness/startup probe failure,
+ preemption, resource contention, etc. The handler is not called if the
+ container crashes or exits. The Pod's termination grace period countdown begins before the
+ PreStop hook is executed. Regardless of the outcome of the handler, the
+ container will eventually terminate within the Pod's termination grace
+ period (unless delayed by finalizers). Other management of the container blocks until the hook completes
+ or until the termination grace period is reached.
+ More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
+ properties:
+ exec:
+ description: Exec specifies a command to execute
+ in the container.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ description: HTTPGet specifies an HTTP GET request
+ to perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers to set in the request.
+ HTTP allows repeated headers.
+ items:
+ description: HTTPHeader describes a custom
+ header to be used in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ description: Sleep represents a duration that the
+ container should sleep.
+ properties:
+ seconds:
+ description: Seconds is the number of seconds
+ to sleep.
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ description: |-
+ Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept
+ for backward compatibility. There is no validation of this field and
+ lifecycle hooks will fail at runtime when it is specified.
+ properties:
+ host:
+ description: 'Optional: Host name to connect
+ to, defaults to the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ type: object
+ livenessProbe:
+ description: |-
+ Periodic probe of container liveness.
+ Container will be restarted if the probe fails.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ properties:
+ exec:
+ description: Exec specifies a command to execute in
+ the container.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
+ format: int32
+ type: integer
+ grpc:
+ description: GRPC specifies a GRPC HealthCheckRequest.
+ properties:
+ port:
+ description: Port number of the gRPC service. Number
+ must be in the range 1 to 65535.
+ format: int32
+ type: integer
+ service:
+ default: ""
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
+ (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
+
+ If this is not specified, the default behavior is defined by gRPC.
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ description: HTTPGet specifies an HTTP GET request to
+ perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers to set in the request.
+ HTTP allows repeated headers.
+ items:
+ description: HTTPHeader describes a custom header
+ to be used in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ periodSeconds:
+ description: |-
+ How often (in seconds) to perform the probe.
+ Default to 10 seconds. Minimum value is 1.
+ format: int32
+ type: integer
+ successThreshold:
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
+ format: int32
+ type: integer
+ tcpSocket:
+ description: TCPSocket specifies a connection to a TCP
+ port.
+ properties:
+ host:
+ description: 'Optional: Host name to connect to,
+ defaults to the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
+ format: int64
+ type: integer
+ timeoutSeconds:
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ type: object
+ name:
+ description: |-
+ Name of the container specified as a DNS_LABEL.
+ Each container in a pod must have a unique name (DNS_LABEL).
+ Cannot be updated.
+ type: string
+ ports:
+ description: |-
+ List of ports to expose from the container. Not specifying a port here
+ DOES NOT prevent that port from being exposed. Any port which is
+ listening on the default "0.0.0.0" address inside a container will be
+ accessible from the network.
+ Modifying this array with strategic merge patch may corrupt the data.
+ For more information See https://github.com/kubernetes/kubernetes/issues/108255.
+ Cannot be updated.
+ items:
+ description: ContainerPort represents a network port in
+ a single container.
+ properties:
+ containerPort:
+ description: |-
+ Number of port to expose on the pod's IP address.
+ This must be a valid port number, 0 < x < 65536.
+ format: int32
+ type: integer
+ hostIP:
+ description: What host IP to bind the external port
+ to.
+ type: string
+ hostPort:
+ description: |-
+ Number of port to expose on the host.
+ If specified, this must be a valid port number, 0 < x < 65536.
+ If HostNetwork is specified, this must match ContainerPort.
+ Most containers do not need this.
+ format: int32
+ type: integer
+ name:
+ description: |-
+ If specified, this must be an IANA_SVC_NAME and unique within the pod. Each
+ named port in a pod must have a unique name. Name for the port that can be
+ referred to by services.
+ type: string
+ protocol:
+ default: TCP
+ description: |-
+ Protocol for port. Must be UDP, TCP, or SCTP.
+ Defaults to "TCP".
+ type: string
+ required:
+ - containerPort
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - containerPort
+ - protocol
+ x-kubernetes-list-type: map
+ readinessProbe:
+ description: |-
+ Periodic probe of container service readiness.
+ Container will be removed from service endpoints if the probe fails.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ properties:
+ exec:
+ description: Exec specifies a command to execute in
+ the container.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
+ format: int32
+ type: integer
+ grpc:
+ description: GRPC specifies a GRPC HealthCheckRequest.
+ properties:
+ port:
+ description: Port number of the gRPC service. Number
+ must be in the range 1 to 65535.
+ format: int32
+ type: integer
+ service:
+ default: ""
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
+ (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
+
+ If this is not specified, the default behavior is defined by gRPC.
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ description: HTTPGet specifies an HTTP GET request to
+ perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers to set in the request.
+ HTTP allows repeated headers.
+ items:
+ description: HTTPHeader describes a custom header
+ to be used in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ periodSeconds:
+ description: |-
+ How often (in seconds) to perform the probe.
+ Default to 10 seconds. Minimum value is 1.
+ format: int32
+ type: integer
+ successThreshold:
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
+ format: int32
+ type: integer
+ tcpSocket:
+ description: TCPSocket specifies a connection to a TCP
+ port.
+ properties:
+ host:
+ description: 'Optional: Host name to connect to,
+ defaults to the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
+ format: int64
+ type: integer
+ timeoutSeconds:
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ type: object
+ resizePolicy:
+ description: Resources resize policy for the container.
+ items:
+ description: ContainerResizePolicy represents resource
+ resize policy for the container.
+ properties:
+ resourceName:
+ description: |-
+ Name of the resource to which this resource resize policy applies.
+ Supported values: cpu, memory.
+ type: string
+ restartPolicy:
+ description: |-
+ Restart policy to apply when specified resource is resized.
+ If not specified, it defaults to NotRequired.
+ type: string
+ required:
+ - resourceName
+ - restartPolicy
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ resources:
+ description: |-
+ Compute Resources required by this container.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ properties:
+ claims:
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+ This field is immutable. It can only be set for containers.
+ items:
+ description: ResourceClaim references one entry in
+ PodSpec.ResourceClaims.
+ properties:
+ name:
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
+ type: string
+ request:
+ description: |-
+ Request is the name chosen for a request in the referenced claim.
+ If empty, everything from the claim is made available, otherwise
+ only the result of this request.
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ limits:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ type: object
+ requests:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ type: object
+ type: object
+ restartPolicy:
+ description: |-
+ RestartPolicy defines the restart behavior of individual containers in a pod.
+ This field may only be set for init containers, and the only allowed value is "Always".
+ For non-init containers or when this field is not specified,
+ the restart behavior is defined by the Pod's restart policy and the container type.
+ Setting the RestartPolicy as "Always" for the init container will have the following effect:
+ this init container will be continually restarted on
+ exit until all regular containers have terminated. Once all regular
+ containers have completed, all init containers with restartPolicy "Always"
+ will be shut down. This lifecycle differs from normal init containers and
+ is often referred to as a "sidecar" container. Although this init
+ container still starts in the init container sequence, it does not wait
+ for the container to complete before proceeding to the next init
+ container. Instead, the next init container starts immediately after this
+ init container is started, or after any startupProbe has successfully
+ completed.
+ type: string
+ securityContext:
+ description: |-
+ SecurityContext defines the security options the container should be run with.
+ If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext.
+ More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
+ properties:
+ allowPrivilegeEscalation:
+ description: |-
+ AllowPrivilegeEscalation controls whether a process can gain more
+ privileges than its parent process. This bool directly controls if
+ the no_new_privs flag will be set on the container process.
+ AllowPrivilegeEscalation is true always when the container is:
+ 1) run as Privileged
+ 2) has CAP_SYS_ADMIN
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ appArmorProfile:
+ description: |-
+ appArmorProfile is the AppArmor options to use by this container. If set, this profile
+ overrides the pod's appArmorProfile.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile loaded on the node that should be used.
+ The profile must be preconfigured on the node to work.
+ Must match the loaded name of the profile.
+ Must be set if and only if type is "Localhost".
+ type: string
+ type:
+ description: |-
+ type indicates which kind of AppArmor profile will be applied.
+ Valid options are:
+ Localhost - a profile pre-loaded on the node.
+ RuntimeDefault - the container runtime's default profile.
+ Unconfined - no AppArmor enforcement.
+ type: string
+ required:
+ - type
+ type: object
+ capabilities:
+ description: |-
+ The capabilities to add/drop when running containers.
+ Defaults to the default set of capabilities granted by the container runtime.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ add:
+ description: Added capabilities
+ items:
+ description: Capability represent POSIX capabilities
+ type
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ drop:
+ description: Removed capabilities
+ items:
+ description: Capability represent POSIX capabilities
+ type
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ privileged:
+ description: |-
+ Run container in privileged mode.
+ Processes in privileged containers are essentially equivalent to root on the host.
+ Defaults to false.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ procMount:
+ description: |-
+ procMount denotes the type of proc mount to use for the containers.
+ The default value is Default which uses the container runtime defaults for
+ readonly paths and masked paths.
+ This requires the ProcMountType feature flag to be enabled.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: string
+ readOnlyRootFilesystem:
+ description: |-
+ Whether this container has a read-only root filesystem.
+ Default is false.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ runAsGroup:
+ description: |-
+ The GID to run the entrypoint of the container process.
+ Uses runtime default if unset.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ runAsNonRoot:
+ description: |-
+ Indicates that the container must run as a non-root user.
+ If true, the Kubelet will validate the image at runtime to ensure that it
+ does not run as UID 0 (root) and fail to start the container if it does.
+ If unset or false, no such validation will be performed.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: boolean
+ runAsUser:
+ description: |-
+ The UID to run the entrypoint of the container process.
+ Defaults to user specified in image metadata if unspecified.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ seLinuxOptions:
+ description: |-
+ The SELinux context to be applied to the container.
+ If unspecified, the container runtime will allocate a random SELinux context for each
+ container. May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ level:
+ description: Level is SELinux level label that applies
+ to the container.
+ type: string
+ role:
+ description: Role is a SELinux role label that applies
+ to the container.
+ type: string
+ type:
+ description: Type is a SELinux type label that applies
+ to the container.
+ type: string
+ user:
+ description: User is a SELinux user label that applies
+ to the container.
+ type: string
+ type: object
+ seccompProfile:
+ description: |-
+ The seccomp options to use by this container. If seccomp options are
+ provided at both the pod & container level, the container options
+ override the pod options.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile defined in a file on the node should be used.
+ The profile must be preconfigured on the node to work.
+ Must be a descending path, relative to the kubelet's configured seccomp profile location.
+ Must be set if type is "Localhost". Must NOT be set for any other type.
+ type: string
+ type:
+ description: |-
+ type indicates which kind of seccomp profile will be applied.
+ Valid options are:
+
+ Localhost - a profile defined in a file on the node should be used.
+ RuntimeDefault - the container runtime default profile should be used.
+ Unconfined - no profile should be applied.
+ type: string
+ required:
+ - type
+ type: object
+ windowsOptions:
+ description: |-
+ The Windows specific settings applied to all containers.
+ If unspecified, the options from the PodSecurityContext will be used.
+ If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is linux.
+ properties:
+ gmsaCredentialSpec:
+ description: |-
+ GMSACredentialSpec is where the GMSA admission webhook
+ (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the
+ GMSA credential spec named by the GMSACredentialSpecName field.
+ type: string
+ gmsaCredentialSpecName:
+ description: GMSACredentialSpecName is the name
+ of the GMSA credential spec to use.
+ type: string
+ hostProcess:
+ description: |-
+ HostProcess determines if a container should be run as a 'Host Process' container.
+ All of a Pod's containers must have the same effective HostProcess value
+ (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers).
+ In addition, if HostProcess is true then HostNetwork must also be set to true.
+ type: boolean
+ runAsUserName:
+ description: |-
+ The UserName in Windows to run the entrypoint of the container process.
+ Defaults to the user specified in image metadata if unspecified.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: string
+ type: object
+ type: object
+ startupProbe:
+ description: |-
+ 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: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ properties:
+ exec:
+ description: Exec specifies a command to execute in
+ the container.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
+ format: int32
+ type: integer
+ grpc:
+ description: GRPC specifies a GRPC HealthCheckRequest.
+ properties:
+ port:
+ description: Port number of the gRPC service. Number
+ must be in the range 1 to 65535.
+ format: int32
+ type: integer
+ service:
+ default: ""
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
+ (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
+
+ If this is not specified, the default behavior is defined by gRPC.
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ description: HTTPGet specifies an HTTP GET request to
+ perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers to set in the request.
+ HTTP allows repeated headers.
+ items:
+ description: HTTPHeader describes a custom header
+ to be used in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ periodSeconds:
+ description: |-
+ How often (in seconds) to perform the probe.
+ Default to 10 seconds. Minimum value is 1.
+ format: int32
+ type: integer
+ successThreshold:
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
+ format: int32
+ type: integer
+ tcpSocket:
+ description: TCPSocket specifies a connection to a TCP
+ port.
+ properties:
+ host:
+ description: 'Optional: Host name to connect to,
+ defaults to the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
+ format: int64
+ type: integer
+ timeoutSeconds:
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ type: object
+ stdin:
+ description: |-
+ Whether this container should allocate a buffer for stdin in the container runtime. If this
+ is not set, reads from stdin in the container will always result in EOF.
+ Default is false.
+ type: boolean
+ stdinOnce:
+ description: |-
+ Whether the container runtime should close the stdin channel after it has been opened by
+ a single attach. When stdin is true the stdin stream will remain open across multiple attach
+ sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the
+ first client attaches to stdin, and then remains open and accepts data until the client disconnects,
+ at which time stdin is closed and remains closed until the container is restarted. If this
+ flag is false, a container processes that reads from stdin will never receive an EOF.
+ Default is false
+ type: boolean
+ terminationMessagePath:
+ description: |-
+ Optional: Path at which the file to which the container's termination message
+ will be written is mounted into the container's filesystem.
+ Message written is intended to be brief final status, such as an assertion failure message.
+ Will be truncated by the node if greater than 4096 bytes. The total message length across
+ all containers will be limited to 12kb.
+ Defaults to /dev/termination-log.
+ Cannot be updated.
+ type: string
+ terminationMessagePolicy:
+ description: |-
+ Indicate how the termination message should be populated. File will use the contents of
+ terminationMessagePath to populate the container status message on both success and failure.
+ FallbackToLogsOnError will use the last chunk of container log output if the termination
+ message file is empty and the container exited with an error.
+ The log output is limited to 2048 bytes or 80 lines, whichever is smaller.
+ Defaults to File.
+ Cannot be updated.
+ type: string
+ tty:
+ description: |-
+ Whether this container should allocate a TTY for itself, also requires 'stdin' to be true.
+ Default is false.
+ type: boolean
+ volumeDevices:
+ description: volumeDevices is the list of block devices
+ to be used by the container.
+ items:
+ description: volumeDevice describes a mapping of a raw
+ block device within a container.
+ properties:
+ devicePath:
+ description: devicePath is the path inside of the
+ container that the device will be mapped to.
+ type: string
+ name:
+ description: name must match the name of a persistentVolumeClaim
+ in the pod
+ type: string
+ required:
+ - devicePath
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
+ volumeMounts:
+ description: |-
+ Pod volumes to mount into the container's filesystem.
+ Cannot be updated.
+ items:
+ description: VolumeMount describes a mounting of a Volume
+ within a container.
+ properties:
+ mountPath:
+ description: |-
+ Path within the container at which the volume should be mounted. Must
+ not contain ':'.
+ type: string
+ mountPropagation:
+ description: |-
+ mountPropagation determines how mounts are propagated from the host
+ to container and the other way around.
+ When not set, MountPropagationNone is used.
+ This field is beta in 1.10.
+ When RecursiveReadOnly is set to IfPossible or to Enabled, MountPropagation must be None or unspecified
+ (which defaults to None).
+ type: string
+ name:
+ description: This must match the Name of a Volume.
+ type: string
+ readOnly:
+ description: |-
+ Mounted read-only if true, read-write otherwise (false or unspecified).
+ Defaults to false.
+ type: boolean
+ recursiveReadOnly:
+ description: |-
+ RecursiveReadOnly specifies whether read-only mounts should be handled
+ recursively.
+
+ If ReadOnly is false, this field has no meaning and must be unspecified.
+
+ If ReadOnly is true, and this field is set to Disabled, the mount is not made
+ recursively read-only. If this field is set to IfPossible, the mount is made
+ recursively read-only, if it is supported by the container runtime. If this
+ field is set to Enabled, the mount is made recursively read-only if it is
+ supported by the container runtime, otherwise the pod will not be started and
+ an error will be generated to indicate the reason.
+
+ If this field is set to IfPossible or Enabled, MountPropagation must be set to
+ None (or be unspecified, which defaults to None).
+
+ If this field is not specified, it is treated as an equivalent of Disabled.
+ type: string
+ subPath:
+ description: |-
+ Path within the volume from which the container's volume should be mounted.
+ Defaults to "" (volume's root).
+ type: string
+ subPathExpr:
+ description: |-
+ Expanded path within the volume from which the container's volume should be mounted.
+ Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.
+ Defaults to "" (volume's root).
+ SubPathExpr and SubPath are mutually exclusive.
+ type: string
+ required:
+ - mountPath
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
+ workingDir:
+ description: |-
+ Container's working directory.
+ If not specified, the container runtime's default will be used, which
+ might be configured in the container image.
+ Cannot be updated.
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ template:
+ description: |-
+ Template is a pod template that can be used to define the driver or executor pod configurations that Spark configurations do not support.
+ Spark version >= 3.0.0 is required.
+ Ref: https://spark.apache.org/docs/latest/running-on-kubernetes.html#pod-template.
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ terminationGracePeriodSeconds:
+ description: Termination grace period seconds for the pod
+ format: int64
+ type: integer
+ tolerations:
+ description: Tolerations specifies the tolerations listed in ".spec.tolerations"
+ to be applied to the pod.
+ items:
+ description: |-
+ The pod this Toleration is attached to tolerates any taint that matches
+ the triple using the matching operator .
+ properties:
+ effect:
+ description: |-
+ Effect indicates the taint effect to match. Empty means match all taint effects.
+ When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute.
+ type: string
+ key:
+ description: |-
+ Key is the taint key that the toleration applies to. Empty means match all taint keys.
+ If the key is empty, operator must be Exists; this combination means to match all values and all keys.
+ type: string
+ operator:
+ description: |-
+ Operator represents a key's relationship to the value.
+ Valid operators are Exists and Equal. Defaults to Equal.
+ Exists is equivalent to wildcard for value, so that a pod can
+ tolerate all taints of a particular category.
+ type: string
+ tolerationSeconds:
+ description: |-
+ TolerationSeconds represents the period of time the toleration (which must be
+ of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default,
+ it is not set, which means tolerate the taint forever (do not evict). Zero and
+ negative values will be treated as 0 (evict immediately) by the system.
+ format: int64
+ type: integer
+ value:
+ description: |-
+ Value is the taint value the toleration matches to.
+ If the operator is Exists, the value should be empty, otherwise just a regular string.
+ type: string
+ type: object
+ type: array
+ volumeMounts:
+ description: VolumeMounts specifies the volumes listed in ".spec.volumes"
+ to mount into the main container's filesystem.
+ items:
+ description: VolumeMount describes a mounting of a Volume within
+ a container.
+ properties:
+ mountPath:
+ description: |-
+ Path within the container at which the volume should be mounted. Must
+ not contain ':'.
+ type: string
+ mountPropagation:
+ description: |-
+ mountPropagation determines how mounts are propagated from the host
+ to container and the other way around.
+ When not set, MountPropagationNone is used.
+ This field is beta in 1.10.
+ When RecursiveReadOnly is set to IfPossible or to Enabled, MountPropagation must be None or unspecified
+ (which defaults to None).
+ type: string
+ name:
+ description: This must match the Name of a Volume.
+ type: string
+ readOnly:
+ description: |-
+ Mounted read-only if true, read-write otherwise (false or unspecified).
+ Defaults to false.
+ type: boolean
+ recursiveReadOnly:
+ description: |-
+ RecursiveReadOnly specifies whether read-only mounts should be handled
+ recursively.
+
+ If ReadOnly is false, this field has no meaning and must be unspecified.
+
+ If ReadOnly is true, and this field is set to Disabled, the mount is not made
+ recursively read-only. If this field is set to IfPossible, the mount is made
+ recursively read-only, if it is supported by the container runtime. If this
+ field is set to Enabled, the mount is made recursively read-only if it is
+ supported by the container runtime, otherwise the pod will not be started and
+ an error will be generated to indicate the reason.
+
+ If this field is set to IfPossible or Enabled, MountPropagation must be set to
+ None (or be unspecified, which defaults to None).
+
+ If this field is not specified, it is treated as an equivalent of Disabled.
+ type: string
+ subPath:
+ description: |-
+ Path within the volume from which the container's volume should be mounted.
+ Defaults to "" (volume's root).
+ type: string
+ subPathExpr:
+ description: |-
+ Expanded path within the volume from which the container's volume should be mounted.
+ Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.
+ Defaults to "" (volume's root).
+ SubPathExpr and SubPath are mutually exclusive.
+ type: string
+ required:
+ - mountPath
+ - name
+ type: object
+ type: array
+ type: object
+ driverIngressOptions:
+ description: DriverIngressOptions allows configuring the Service and
+ the Ingress to expose ports inside Spark Driver
+ items:
+ description: DriverIngressConfiguration is for driver ingress specific
+ configuration parameters.
+ properties:
+ ingressAnnotations:
+ additionalProperties:
+ type: string
+ description: IngressAnnotations is a map of key,value pairs
+ of annotations that might be added to the ingress object.
+ i.e. specify nginx as ingress.class
+ type: object
+ ingressTLS:
+ description: TlsHosts is useful If we need to declare SSL certificates
+ to the ingress object
+ items:
+ description: IngressTLS describes the transport layer security
+ associated with an ingress.
+ properties:
+ hosts:
+ description: |-
+ hosts is a list of hosts included in the TLS certificate. The values in
+ this list must match the name/s used in the tlsSecret. Defaults to the
+ wildcard host setting for the loadbalancer controller fulfilling this
+ Ingress, if left unspecified.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ secretName:
+ description: |-
+ secretName is the name of the secret used to terminate TLS traffic on
+ port 443. Field is left optional to allow TLS routing based on SNI
+ hostname alone. If the SNI host in a listener conflicts with the "Host"
+ header field used by an IngressRule, the SNI host is used for termination
+ and value of the "Host" header is used for routing.
+ type: string
+ type: object
+ type: array
+ ingressURLFormat:
+ description: IngressURLFormat is the URL for the ingress.
+ type: string
+ serviceAnnotations:
+ additionalProperties:
+ type: string
+ description: ServiceAnnotations is a map of key,value pairs
+ of annotations that might be added to the service object.
+ type: object
+ serviceLabels:
+ additionalProperties:
+ type: string
+ description: ServiceLabels is a map of key,value pairs of labels
+ that might be added to the service object.
+ type: object
+ servicePort:
+ description: ServicePort allows configuring the port at service
+ level that might be different from the targetPort.
+ format: int32
+ type: integer
+ servicePortName:
+ description: |-
+ ServicePortName allows configuring the name of the service port.
+ This may be useful for sidecar proxies like Envoy injected by Istio which require specific ports names to treat traffic as proper HTTP.
+ type: string
+ serviceType:
+ description: ServiceType allows configuring the type of the
+ service. Defaults to ClusterIP.
+ type: string
+ required:
+ - servicePort
+ - servicePortName
+ type: object
+ type: array
+ dynamicAllocation:
+ description: |-
+ DynamicAllocation configures dynamic allocation that becomes available for the Kubernetes
+ scheduler backend since Spark 3.0.
+ properties:
+ enabled:
+ description: Enabled controls whether dynamic allocation is enabled
+ or not.
+ type: boolean
+ initialExecutors:
+ description: |-
+ InitialExecutors is the initial number of executors to request. If .spec.executor.instances
+ is also set, the initial number of executors is set to the bigger of that and this option.
+ format: int32
+ type: integer
+ maxExecutors:
+ description: MaxExecutors is the upper bound for the number of
+ executors if dynamic allocation is enabled.
+ format: int32
+ type: integer
+ minExecutors:
+ description: MinExecutors is the lower bound for the number of
+ executors if dynamic allocation is enabled.
+ format: int32
+ type: integer
+ shuffleTrackingTimeout:
+ description: |-
+ ShuffleTrackingTimeout controls the timeout in milliseconds for executors that are holding
+ shuffle data if shuffle tracking is enabled (true by default if dynamic allocation is enabled).
+ format: int64
+ type: integer
+ type: object
+ executor:
+ description: Executor is the executor specification.
+ properties:
+ affinity:
+ description: Affinity specifies the affinity/anti-affinity settings
+ for the pod.
+ properties:
+ nodeAffinity:
+ description: Describes node affinity scheduling rules for
+ the pod.
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node matches the corresponding matchExpressions; the
+ node(s) with the highest sum are the most preferred.
+ items:
+ description: |-
+ An empty preferred scheduling term matches all objects with implicit weight 0
+ (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op).
+ properties:
+ preference:
+ description: A node selector term, associated with
+ the corresponding weight.
+ properties:
+ matchExpressions:
+ description: A list of node selector requirements
+ by node's labels.
+ items:
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
+ properties:
+ key:
+ description: The label key that the selector
+ applies to.
+ type: string
+ operator:
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
+ type: string
+ values:
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchFields:
+ description: A list of node selector requirements
+ by node's fields.
+ items:
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
+ properties:
+ key:
+ description: The label key that the selector
+ applies to.
+ type: string
+ operator:
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
+ type: string
+ values:
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ x-kubernetes-map-type: atomic
+ weight:
+ description: Weight associated with matching the
+ corresponding nodeSelectorTerm, in the range 1-100.
+ format: int32
+ type: integer
+ required:
+ - preference
+ - weight
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ If the affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to an update), the system
+ may or may not try to eventually evict the pod from its node.
+ properties:
+ nodeSelectorTerms:
+ description: Required. A list of node selector terms.
+ The terms are ORed.
+ items:
+ description: |-
+ A null or empty node selector term matches no objects. The requirements of
+ them are ANDed.
+ The TopologySelectorTerm type implements a subset of the NodeSelectorTerm.
+ properties:
+ matchExpressions:
+ description: A list of node selector requirements
+ by node's labels.
+ items:
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
+ properties:
+ key:
+ description: The label key that the selector
+ applies to.
+ type: string
+ operator:
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
+ type: string
+ values:
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchFields:
+ description: A list of node selector requirements
+ by node's fields.
+ items:
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
+ properties:
+ key:
+ description: The label key that the selector
+ applies to.
+ type: string
+ operator:
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
+ type: string
+ values:
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ x-kubernetes-map-type: atomic
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - nodeSelectorTerms
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ podAffinity:
+ description: Describes pod affinity scheduling rules (e.g.
+ co-locate this pod in the same node, zone, etc. as some
+ other pod(s)).
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the
+ node(s) with the highest sum are the most preferred.
+ items:
+ description: The weights of all of the matched WeightedPodAffinityTerm
+ fields are added per-node to find the most preferred
+ node(s)
+ properties:
+ podAffinityTerm:
+ description: Required. A pod affinity term, associated
+ with the corresponding weight.
+ properties:
+ labelSelector:
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list
+ of label selector requirements. The requirements
+ are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key is the label key
+ that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both matchLabelKeys and labelSelector.
+ Also, matchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
+ Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list
+ of label selector requirements. The requirements
+ are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key is the label key
+ that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ namespaces:
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
+ type: string
+ required:
+ - topologyKey
+ type: object
+ weight:
+ description: |-
+ weight associated with matching the corresponding podAffinityTerm,
+ in the range 1-100.
+ format: int32
+ type: integer
+ required:
+ - podAffinityTerm
+ - weight
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ If the affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to a pod label update), the
+ system may or may not try to eventually evict the pod from its node.
+ When there are multiple elements, the lists of nodes corresponding to each
+ podAffinityTerm are intersected, i.e. all terms must be satisfied.
+ items:
+ description: |-
+ Defines a set of pods (namely those matching the labelSelector
+ relative to the given namespace(s)) that this pod should be
+ co-located (affinity) or not co-located (anti-affinity) with,
+ where co-located is defined as running on a node whose value of
+ the label with key matches that of any node on which
+ a pod of the set of pods is running
+ properties:
+ labelSelector:
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label
+ selector requirements. The requirements are
+ ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key is the label key that
+ the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both matchLabelKeys and labelSelector.
+ Also, matchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
+ Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label
+ selector requirements. The requirements are
+ ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key is the label key that
+ the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ namespaces:
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
+ type: string
+ required:
+ - topologyKey
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ podAntiAffinity:
+ description: Describes pod anti-affinity scheduling rules
+ (e.g. avoid putting this pod in the same node, zone, etc.
+ as some other pod(s)).
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the anti-affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling anti-affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the
+ node(s) with the highest sum are the most preferred.
+ items:
+ description: The weights of all of the matched WeightedPodAffinityTerm
+ fields are added per-node to find the most preferred
+ node(s)
+ properties:
+ podAffinityTerm:
+ description: Required. A pod affinity term, associated
+ with the corresponding weight.
+ properties:
+ labelSelector:
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list
+ of label selector requirements. The requirements
+ are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key is the label key
+ that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both matchLabelKeys and labelSelector.
+ Also, matchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
+ Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list
+ of label selector requirements. The requirements
+ are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key is the label key
+ that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ namespaces:
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
+ type: string
+ required:
+ - topologyKey
+ type: object
+ weight:
+ description: |-
+ weight associated with matching the corresponding podAffinityTerm,
+ in the range 1-100.
+ format: int32
+ type: integer
+ required:
+ - podAffinityTerm
+ - weight
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ If the anti-affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the anti-affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to a pod label update), the
+ system may or may not try to eventually evict the pod from its node.
+ When there are multiple elements, the lists of nodes corresponding to each
+ podAffinityTerm are intersected, i.e. all terms must be satisfied.
+ items:
+ description: |-
+ Defines a set of pods (namely those matching the labelSelector
+ relative to the given namespace(s)) that this pod should be
+ co-located (affinity) or not co-located (anti-affinity) with,
+ where co-located is defined as running on a node whose value of
+ the label with key matches that of any node on which
+ a pod of the set of pods is running
+ properties:
+ labelSelector:
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label
+ selector requirements. The requirements are
+ ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key is the label key that
+ the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both matchLabelKeys and labelSelector.
+ Also, matchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
+ Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label
+ selector requirements. The requirements are
+ ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key is the label key that
+ the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ namespaces:
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
+ type: string
+ required:
+ - topologyKey
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ type: object
+ annotations:
+ additionalProperties:
+ type: string
+ description: Annotations are the Kubernetes annotations to be
+ added to the pod.
+ type: object
+ configMaps:
+ description: ConfigMaps carries information of other ConfigMaps
+ to add to the pod.
+ items:
+ description: NamePath is a pair of a name and a path to which
+ the named objects should be mounted to.
+ properties:
+ name:
+ type: string
+ path:
+ type: string
+ required:
+ - name
+ - path
+ type: object
+ type: array
+ coreLimit:
+ description: |-
+ CoreLimit specifies a hard limit on CPU cores for the pod.
+ Optional
+ type: string
+ coreRequest:
+ description: |-
+ CoreRequest is the physical CPU core request for the executors.
+ Maps to `spark.kubernetes.executor.request.cores` that is available since Spark 2.4.
+ type: string
+ cores:
+ description: Cores maps to `spark.driver.cores` or `spark.executor.cores`
+ for the driver and executors, respectively.
+ format: int32
+ minimum: 1
+ type: integer
+ deleteOnTermination:
+ description: |-
+ DeleteOnTermination specify whether executor pods should be deleted in case of failure or normal termination.
+ Maps to `spark.kubernetes.executor.deleteOnTermination` that is available since Spark 3.0.
+ type: boolean
+ dnsConfig:
+ description: DnsConfig dns settings for the pod, following the
+ Kubernetes specifications.
+ properties:
+ nameservers:
+ description: |-
+ A list of DNS name server IP addresses.
+ This will be appended to the base nameservers generated from DNSPolicy.
+ Duplicated nameservers will be removed.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ options:
+ description: |-
+ A list of DNS resolver options.
+ This will be merged with the base options generated from DNSPolicy.
+ Duplicated entries will be removed. Resolution options given in Options
+ will override those that appear in the base DNSPolicy.
+ items:
+ description: PodDNSConfigOption defines DNS resolver options
+ of a pod.
+ properties:
+ name:
+ description: |-
+ Name is this DNS resolver option's name.
+ Required.
+ type: string
+ value:
+ description: Value is this DNS resolver option's value.
+ type: string
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ searches:
+ description: |-
+ A list of DNS search domains for host-name lookup.
+ This will be appended to the base search paths generated from DNSPolicy.
+ Duplicated search paths will be removed.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ env:
+ description: Env carries the environment variables to add to the
+ pod.
+ items:
+ description: EnvVar represents an environment variable present
+ in a Container.
+ properties:
+ name:
+ description: Name of the environment variable. Must be a
+ C_IDENTIFIER.
+ type: string
+ value:
+ description: |-
+ Variable references $(VAR_NAME) are expanded
+ using the previously defined environment variables in the container and
+ any service environment variables. If a variable cannot be resolved,
+ the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e.
+ "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)".
+ Escaped references will never be expanded, regardless of whether the variable
+ exists or not.
+ Defaults to "".
+ type: string
+ valueFrom:
+ description: Source for the environment variable's value.
+ Cannot be used if value is not empty.
+ properties:
+ configMapKeyRef:
+ description: Selects a key of a ConfigMap.
+ properties:
+ key:
+ description: The key to select.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the ConfigMap or its
+ key must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ fieldRef:
+ description: |-
+ Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`,
+ spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.
+ properties:
+ apiVersion:
+ description: Version of the schema the FieldPath
+ is written in terms of, defaults to "v1".
+ type: string
+ fieldPath:
+ description: Path of the field to select in the
+ specified API version.
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ resourceFieldRef:
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported.
+ properties:
+ containerName:
+ description: 'Container name: required for volumes,
+ optional for env vars'
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ description: Specifies the output format of the
+ exposed resources, defaults to "1"
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ description: 'Required: resource to select'
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ secretKeyRef:
+ description: Selects a key of a secret in the pod's
+ namespace
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key
+ must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ required:
+ - name
+ type: object
+ type: array
+ envFrom:
+ description: EnvFrom is a list of sources to populate environment
+ variables in the container.
+ items:
+ description: EnvFromSource represents the source of a set of
+ ConfigMaps
+ properties:
+ configMapRef:
+ description: The ConfigMap to select from
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the ConfigMap must be defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ prefix:
+ description: An optional identifier to prepend to each key
+ in the ConfigMap. Must be a C_IDENTIFIER.
+ type: string
+ secretRef:
+ description: The Secret to select from
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret must be defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ type: array
+ envSecretKeyRefs:
+ additionalProperties:
+ description: NameKey represents the name and key of a SecretKeyRef.
+ properties:
+ key:
+ type: string
+ name:
+ type: string
+ required:
+ - key
+ - name
+ type: object
+ description: |-
+ EnvSecretKeyRefs holds a mapping from environment variable names to SecretKeyRefs.
+ Deprecated. Consider using `env` instead.
+ type: object
+ envVars:
+ additionalProperties:
+ type: string
+ description: |-
+ EnvVars carries the environment variables to add to the pod.
+ Deprecated. Consider using `env` instead.
+ type: object
+ gpu:
+ description: GPU specifies GPU requirement for the pod.
+ properties:
+ name:
+ description: 'Name is GPU resource name, such as: nvidia.com/gpu
+ or amd.com/gpu'
+ type: string
+ quantity:
+ description: Quantity is the number of GPUs to request for
+ driver or executor.
+ format: int64
+ type: integer
+ required:
+ - name
+ - quantity
+ type: object
+ hostAliases:
+ description: HostAliases settings for the pod, following the Kubernetes
+ specifications.
+ items:
+ description: |-
+ HostAlias holds the mapping between IP and hostnames that will be injected as an entry in the
+ pod's hosts file.
+ properties:
+ hostnames:
+ description: Hostnames for the above IP address.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ ip:
+ description: IP address of the host file entry.
+ type: string
+ required:
+ - ip
+ type: object
+ type: array
+ hostNetwork:
+ description: HostNetwork indicates whether to request host networking
+ for the pod or not.
+ type: boolean
+ image:
+ description: Image is the container image to use. Overrides Spec.Image
+ if set.
+ type: string
+ initContainers:
+ description: InitContainers is a list of init-containers that
+ run to completion before the main Spark container.
+ items:
+ description: A single application container that you want to
+ run within a pod.
+ properties:
+ args:
+ description: |-
+ Arguments to the entrypoint.
+ The container image's CMD is used if this is not provided.
+ Variable references $(VAR_NAME) are expanded using the container's environment. If a variable
+ cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will
+ produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless
+ of whether the variable exists or not. Cannot be updated.
+ More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ command:
+ description: |-
+ Entrypoint array. Not executed within a shell.
+ The container image's ENTRYPOINT is used if this is not provided.
+ Variable references $(VAR_NAME) are expanded using the container's environment. If a variable
+ cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will
+ produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless
+ of whether the variable exists or not. Cannot be updated.
+ More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ env:
+ description: |-
+ List of environment variables to set in the container.
+ Cannot be updated.
+ items:
+ description: EnvVar represents an environment variable
+ present in a Container.
+ properties:
+ name:
+ description: Name of the environment variable. Must
+ be a C_IDENTIFIER.
+ type: string
+ value:
+ description: |-
+ Variable references $(VAR_NAME) are expanded
+ using the previously defined environment variables in the container and
+ any service environment variables. If a variable cannot be resolved,
+ the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e.
+ "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)".
+ Escaped references will never be expanded, regardless of whether the variable
+ exists or not.
+ Defaults to "".
+ type: string
+ valueFrom:
+ description: Source for the environment variable's
+ value. Cannot be used if value is not empty.
+ properties:
+ configMapKeyRef:
+ description: Selects a key of a ConfigMap.
+ properties:
+ key:
+ description: The key to select.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the ConfigMap
+ or its key must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ fieldRef:
+ description: |-
+ Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`,
+ spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.
+ properties:
+ apiVersion:
+ description: Version of the schema the FieldPath
+ is written in terms of, defaults to "v1".
+ type: string
+ fieldPath:
+ description: Path of the field to select in
+ the specified API version.
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ resourceFieldRef:
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported.
+ properties:
+ containerName:
+ description: 'Container name: required for
+ volumes, optional for env vars'
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ description: Specifies the output format of
+ the exposed resources, defaults to "1"
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ description: 'Required: resource to select'
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ secretKeyRef:
+ description: Selects a key of a secret in the
+ pod's namespace
+ properties:
+ key:
+ description: The key of the secret to select
+ from. Must be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or
+ its key must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ envFrom:
+ description: |-
+ List of sources to populate environment variables in the container.
+ The keys defined within a source must be a C_IDENTIFIER. All invalid keys
+ will be reported as an event when the container is starting. When a key exists in multiple
+ sources, the value associated with the last source will take precedence.
+ Values defined by an Env with a duplicate key will take precedence.
+ Cannot be updated.
+ items:
+ description: EnvFromSource represents the source of a
+ set of ConfigMaps
+ properties:
+ configMapRef:
+ description: The ConfigMap to select from
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the ConfigMap must
+ be defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ prefix:
+ description: An optional identifier to prepend to
+ each key in the ConfigMap. Must be a C_IDENTIFIER.
+ type: string
+ secretRef:
+ description: The Secret to select from
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret must be
+ defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ image:
+ description: |-
+ Container image name.
+ More info: https://kubernetes.io/docs/concepts/containers/images
+ This field is optional to allow higher level config management to default or override
+ container images in workload controllers like Deployments and StatefulSets.
+ type: string
+ imagePullPolicy:
+ description: |-
+ Image pull policy.
+ One of Always, Never, IfNotPresent.
+ Defaults to Always if :latest tag is specified, or IfNotPresent otherwise.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/containers/images#updating-images
+ type: string
+ lifecycle:
+ description: |-
+ Actions that the management system should take in response to container lifecycle events.
+ Cannot be updated.
+ properties:
+ postStart:
+ description: |-
+ PostStart is called immediately after a container is created. If the handler fails,
+ the container is terminated and restarted according to its restart policy.
+ Other management of the container blocks until the hook completes.
+ More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
+ properties:
+ exec:
+ description: Exec specifies a command to execute
+ in the container.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ description: HTTPGet specifies an HTTP GET request
+ to perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers to set in the request.
+ HTTP allows repeated headers.
+ items:
+ description: HTTPHeader describes a custom
+ header to be used in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ description: Sleep represents a duration that the
+ container should sleep.
+ properties:
+ seconds:
+ description: Seconds is the number of seconds
+ to sleep.
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ description: |-
+ Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept
+ for backward compatibility. There is no validation of this field and
+ lifecycle hooks will fail at runtime when it is specified.
+ properties:
+ host:
+ description: 'Optional: Host name to connect
+ to, defaults to the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ preStop:
+ description: |-
+ PreStop is called immediately before a container is terminated due to an
+ API request or management event such as liveness/startup probe failure,
+ preemption, resource contention, etc. The handler is not called if the
+ container crashes or exits. The Pod's termination grace period countdown begins before the
+ PreStop hook is executed. Regardless of the outcome of the handler, the
+ container will eventually terminate within the Pod's termination grace
+ period (unless delayed by finalizers). Other management of the container blocks until the hook completes
+ or until the termination grace period is reached.
+ More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
+ properties:
+ exec:
+ description: Exec specifies a command to execute
+ in the container.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ description: HTTPGet specifies an HTTP GET request
+ to perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers to set in the request.
+ HTTP allows repeated headers.
+ items:
+ description: HTTPHeader describes a custom
+ header to be used in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ description: Sleep represents a duration that the
+ container should sleep.
+ properties:
+ seconds:
+ description: Seconds is the number of seconds
+ to sleep.
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ description: |-
+ Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept
+ for backward compatibility. There is no validation of this field and
+ lifecycle hooks will fail at runtime when it is specified.
+ properties:
+ host:
+ description: 'Optional: Host name to connect
+ to, defaults to the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ type: object
+ livenessProbe:
+ description: |-
+ Periodic probe of container liveness.
+ Container will be restarted if the probe fails.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ properties:
+ exec:
+ description: Exec specifies a command to execute in
+ the container.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
+ format: int32
+ type: integer
+ grpc:
+ description: GRPC specifies a GRPC HealthCheckRequest.
+ properties:
+ port:
+ description: Port number of the gRPC service. Number
+ must be in the range 1 to 65535.
+ format: int32
+ type: integer
+ service:
+ default: ""
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
+ (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
+
+ If this is not specified, the default behavior is defined by gRPC.
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ description: HTTPGet specifies an HTTP GET request to
+ perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers to set in the request.
+ HTTP allows repeated headers.
+ items:
+ description: HTTPHeader describes a custom header
+ to be used in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ periodSeconds:
+ description: |-
+ How often (in seconds) to perform the probe.
+ Default to 10 seconds. Minimum value is 1.
+ format: int32
+ type: integer
+ successThreshold:
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
+ format: int32
+ type: integer
+ tcpSocket:
+ description: TCPSocket specifies a connection to a TCP
+ port.
+ properties:
+ host:
+ description: 'Optional: Host name to connect to,
+ defaults to the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
+ format: int64
+ type: integer
+ timeoutSeconds:
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ type: object
+ name:
+ description: |-
+ Name of the container specified as a DNS_LABEL.
+ Each container in a pod must have a unique name (DNS_LABEL).
+ Cannot be updated.
+ type: string
+ ports:
+ description: |-
+ List of ports to expose from the container. Not specifying a port here
+ DOES NOT prevent that port from being exposed. Any port which is
+ listening on the default "0.0.0.0" address inside a container will be
+ accessible from the network.
+ Modifying this array with strategic merge patch may corrupt the data.
+ For more information See https://github.com/kubernetes/kubernetes/issues/108255.
+ Cannot be updated.
+ items:
+ description: ContainerPort represents a network port in
+ a single container.
+ properties:
+ containerPort:
+ description: |-
+ Number of port to expose on the pod's IP address.
+ This must be a valid port number, 0 < x < 65536.
+ format: int32
+ type: integer
+ hostIP:
+ description: What host IP to bind the external port
+ to.
+ type: string
+ hostPort:
+ description: |-
+ Number of port to expose on the host.
+ If specified, this must be a valid port number, 0 < x < 65536.
+ If HostNetwork is specified, this must match ContainerPort.
+ Most containers do not need this.
+ format: int32
+ type: integer
+ name:
+ description: |-
+ If specified, this must be an IANA_SVC_NAME and unique within the pod. Each
+ named port in a pod must have a unique name. Name for the port that can be
+ referred to by services.
+ type: string
+ protocol:
+ default: TCP
+ description: |-
+ Protocol for port. Must be UDP, TCP, or SCTP.
+ Defaults to "TCP".
+ type: string
+ required:
+ - containerPort
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - containerPort
+ - protocol
+ x-kubernetes-list-type: map
+ readinessProbe:
+ description: |-
+ Periodic probe of container service readiness.
+ Container will be removed from service endpoints if the probe fails.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ properties:
+ exec:
+ description: Exec specifies a command to execute in
+ the container.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
+ format: int32
+ type: integer
+ grpc:
+ description: GRPC specifies a GRPC HealthCheckRequest.
+ properties:
+ port:
+ description: Port number of the gRPC service. Number
+ must be in the range 1 to 65535.
+ format: int32
+ type: integer
+ service:
+ default: ""
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
+ (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
+
+ If this is not specified, the default behavior is defined by gRPC.
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ description: HTTPGet specifies an HTTP GET request to
+ perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers to set in the request.
+ HTTP allows repeated headers.
+ items:
+ description: HTTPHeader describes a custom header
+ to be used in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ periodSeconds:
+ description: |-
+ How often (in seconds) to perform the probe.
+ Default to 10 seconds. Minimum value is 1.
+ format: int32
+ type: integer
+ successThreshold:
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
+ format: int32
+ type: integer
+ tcpSocket:
+ description: TCPSocket specifies a connection to a TCP
+ port.
+ properties:
+ host:
+ description: 'Optional: Host name to connect to,
+ defaults to the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
+ format: int64
+ type: integer
+ timeoutSeconds:
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ type: object
+ resizePolicy:
+ description: Resources resize policy for the container.
+ items:
+ description: ContainerResizePolicy represents resource
+ resize policy for the container.
+ properties:
+ resourceName:
+ description: |-
+ Name of the resource to which this resource resize policy applies.
+ Supported values: cpu, memory.
+ type: string
+ restartPolicy:
+ description: |-
+ Restart policy to apply when specified resource is resized.
+ If not specified, it defaults to NotRequired.
+ type: string
+ required:
+ - resourceName
+ - restartPolicy
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ resources:
+ description: |-
+ Compute Resources required by this container.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ properties:
+ claims:
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+ This field is immutable. It can only be set for containers.
+ items:
+ description: ResourceClaim references one entry in
+ PodSpec.ResourceClaims.
+ properties:
+ name:
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
+ type: string
+ request:
+ description: |-
+ Request is the name chosen for a request in the referenced claim.
+ If empty, everything from the claim is made available, otherwise
+ only the result of this request.
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ limits:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ type: object
+ requests:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ type: object
+ type: object
+ restartPolicy:
+ description: |-
+ RestartPolicy defines the restart behavior of individual containers in a pod.
+ This field may only be set for init containers, and the only allowed value is "Always".
+ For non-init containers or when this field is not specified,
+ the restart behavior is defined by the Pod's restart policy and the container type.
+ Setting the RestartPolicy as "Always" for the init container will have the following effect:
+ this init container will be continually restarted on
+ exit until all regular containers have terminated. Once all regular
+ containers have completed, all init containers with restartPolicy "Always"
+ will be shut down. This lifecycle differs from normal init containers and
+ is often referred to as a "sidecar" container. Although this init
+ container still starts in the init container sequence, it does not wait
+ for the container to complete before proceeding to the next init
+ container. Instead, the next init container starts immediately after this
+ init container is started, or after any startupProbe has successfully
+ completed.
+ type: string
+ securityContext:
+ description: |-
+ SecurityContext defines the security options the container should be run with.
+ If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext.
+ More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
+ properties:
+ allowPrivilegeEscalation:
+ description: |-
+ AllowPrivilegeEscalation controls whether a process can gain more
+ privileges than its parent process. This bool directly controls if
+ the no_new_privs flag will be set on the container process.
+ AllowPrivilegeEscalation is true always when the container is:
+ 1) run as Privileged
+ 2) has CAP_SYS_ADMIN
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ appArmorProfile:
+ description: |-
+ appArmorProfile is the AppArmor options to use by this container. If set, this profile
+ overrides the pod's appArmorProfile.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile loaded on the node that should be used.
+ The profile must be preconfigured on the node to work.
+ Must match the loaded name of the profile.
+ Must be set if and only if type is "Localhost".
+ type: string
+ type:
+ description: |-
+ type indicates which kind of AppArmor profile will be applied.
+ Valid options are:
+ Localhost - a profile pre-loaded on the node.
+ RuntimeDefault - the container runtime's default profile.
+ Unconfined - no AppArmor enforcement.
+ type: string
+ required:
+ - type
+ type: object
+ capabilities:
+ description: |-
+ The capabilities to add/drop when running containers.
+ Defaults to the default set of capabilities granted by the container runtime.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ add:
+ description: Added capabilities
+ items:
+ description: Capability represent POSIX capabilities
+ type
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ drop:
+ description: Removed capabilities
+ items:
+ description: Capability represent POSIX capabilities
+ type
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ privileged:
+ description: |-
+ Run container in privileged mode.
+ Processes in privileged containers are essentially equivalent to root on the host.
+ Defaults to false.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ procMount:
+ description: |-
+ procMount denotes the type of proc mount to use for the containers.
+ The default value is Default which uses the container runtime defaults for
+ readonly paths and masked paths.
+ This requires the ProcMountType feature flag to be enabled.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: string
+ readOnlyRootFilesystem:
+ description: |-
+ Whether this container has a read-only root filesystem.
+ Default is false.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ runAsGroup:
+ description: |-
+ The GID to run the entrypoint of the container process.
+ Uses runtime default if unset.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ runAsNonRoot:
+ description: |-
+ Indicates that the container must run as a non-root user.
+ If true, the Kubelet will validate the image at runtime to ensure that it
+ does not run as UID 0 (root) and fail to start the container if it does.
+ If unset or false, no such validation will be performed.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: boolean
+ runAsUser:
+ description: |-
+ The UID to run the entrypoint of the container process.
+ Defaults to user specified in image metadata if unspecified.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ seLinuxOptions:
+ description: |-
+ The SELinux context to be applied to the container.
+ If unspecified, the container runtime will allocate a random SELinux context for each
+ container. May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ level:
+ description: Level is SELinux level label that applies
+ to the container.
+ type: string
+ role:
+ description: Role is a SELinux role label that applies
+ to the container.
+ type: string
+ type:
+ description: Type is a SELinux type label that applies
+ to the container.
+ type: string
+ user:
+ description: User is a SELinux user label that applies
+ to the container.
+ type: string
+ type: object
+ seccompProfile:
+ description: |-
+ The seccomp options to use by this container. If seccomp options are
+ provided at both the pod & container level, the container options
+ override the pod options.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile defined in a file on the node should be used.
+ The profile must be preconfigured on the node to work.
+ Must be a descending path, relative to the kubelet's configured seccomp profile location.
+ Must be set if type is "Localhost". Must NOT be set for any other type.
+ type: string
+ type:
+ description: |-
+ type indicates which kind of seccomp profile will be applied.
+ Valid options are:
+
+ Localhost - a profile defined in a file on the node should be used.
+ RuntimeDefault - the container runtime default profile should be used.
+ Unconfined - no profile should be applied.
+ type: string
+ required:
+ - type
+ type: object
+ windowsOptions:
+ description: |-
+ The Windows specific settings applied to all containers.
+ If unspecified, the options from the PodSecurityContext will be used.
+ If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is linux.
+ properties:
+ gmsaCredentialSpec:
+ description: |-
+ GMSACredentialSpec is where the GMSA admission webhook
+ (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the
+ GMSA credential spec named by the GMSACredentialSpecName field.
+ type: string
+ gmsaCredentialSpecName:
+ description: GMSACredentialSpecName is the name
+ of the GMSA credential spec to use.
+ type: string
+ hostProcess:
+ description: |-
+ HostProcess determines if a container should be run as a 'Host Process' container.
+ All of a Pod's containers must have the same effective HostProcess value
+ (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers).
+ In addition, if HostProcess is true then HostNetwork must also be set to true.
+ type: boolean
+ runAsUserName:
+ description: |-
+ The UserName in Windows to run the entrypoint of the container process.
+ Defaults to the user specified in image metadata if unspecified.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: string
+ type: object
+ type: object
+ startupProbe:
+ description: |-
+ 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: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ properties:
+ exec:
+ description: Exec specifies a command to execute in
+ the container.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
+ format: int32
+ type: integer
+ grpc:
+ description: GRPC specifies a GRPC HealthCheckRequest.
+ properties:
+ port:
+ description: Port number of the gRPC service. Number
+ must be in the range 1 to 65535.
+ format: int32
+ type: integer
+ service:
+ default: ""
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
+ (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
+
+ If this is not specified, the default behavior is defined by gRPC.
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ description: HTTPGet specifies an HTTP GET request to
+ perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers to set in the request.
+ HTTP allows repeated headers.
+ items:
+ description: HTTPHeader describes a custom header
+ to be used in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ periodSeconds:
+ description: |-
+ How often (in seconds) to perform the probe.
+ Default to 10 seconds. Minimum value is 1.
+ format: int32
+ type: integer
+ successThreshold:
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
+ format: int32
+ type: integer
+ tcpSocket:
+ description: TCPSocket specifies a connection to a TCP
+ port.
+ properties:
+ host:
+ description: 'Optional: Host name to connect to,
+ defaults to the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
+ format: int64
+ type: integer
+ timeoutSeconds:
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ type: object
+ stdin:
+ description: |-
+ Whether this container should allocate a buffer for stdin in the container runtime. If this
+ is not set, reads from stdin in the container will always result in EOF.
+ Default is false.
+ type: boolean
+ stdinOnce:
+ description: |-
+ Whether the container runtime should close the stdin channel after it has been opened by
+ a single attach. When stdin is true the stdin stream will remain open across multiple attach
+ sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the
+ first client attaches to stdin, and then remains open and accepts data until the client disconnects,
+ at which time stdin is closed and remains closed until the container is restarted. If this
+ flag is false, a container processes that reads from stdin will never receive an EOF.
+ Default is false
+ type: boolean
+ terminationMessagePath:
+ description: |-
+ Optional: Path at which the file to which the container's termination message
+ will be written is mounted into the container's filesystem.
+ Message written is intended to be brief final status, such as an assertion failure message.
+ Will be truncated by the node if greater than 4096 bytes. The total message length across
+ all containers will be limited to 12kb.
+ Defaults to /dev/termination-log.
+ Cannot be updated.
+ type: string
+ terminationMessagePolicy:
+ description: |-
+ Indicate how the termination message should be populated. File will use the contents of
+ terminationMessagePath to populate the container status message on both success and failure.
+ FallbackToLogsOnError will use the last chunk of container log output if the termination
+ message file is empty and the container exited with an error.
+ The log output is limited to 2048 bytes or 80 lines, whichever is smaller.
+ Defaults to File.
+ Cannot be updated.
+ type: string
+ tty:
+ description: |-
+ Whether this container should allocate a TTY for itself, also requires 'stdin' to be true.
+ Default is false.
+ type: boolean
+ volumeDevices:
+ description: volumeDevices is the list of block devices
+ to be used by the container.
+ items:
+ description: volumeDevice describes a mapping of a raw
+ block device within a container.
+ properties:
+ devicePath:
+ description: devicePath is the path inside of the
+ container that the device will be mapped to.
+ type: string
+ name:
+ description: name must match the name of a persistentVolumeClaim
+ in the pod
+ type: string
+ required:
+ - devicePath
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
+ volumeMounts:
+ description: |-
+ Pod volumes to mount into the container's filesystem.
+ Cannot be updated.
+ items:
+ description: VolumeMount describes a mounting of a Volume
+ within a container.
+ properties:
+ mountPath:
+ description: |-
+ Path within the container at which the volume should be mounted. Must
+ not contain ':'.
+ type: string
+ mountPropagation:
+ description: |-
+ mountPropagation determines how mounts are propagated from the host
+ to container and the other way around.
+ When not set, MountPropagationNone is used.
+ This field is beta in 1.10.
+ When RecursiveReadOnly is set to IfPossible or to Enabled, MountPropagation must be None or unspecified
+ (which defaults to None).
+ type: string
+ name:
+ description: This must match the Name of a Volume.
+ type: string
+ readOnly:
+ description: |-
+ Mounted read-only if true, read-write otherwise (false or unspecified).
+ Defaults to false.
+ type: boolean
+ recursiveReadOnly:
+ description: |-
+ RecursiveReadOnly specifies whether read-only mounts should be handled
+ recursively.
+
+ If ReadOnly is false, this field has no meaning and must be unspecified.
+
+ If ReadOnly is true, and this field is set to Disabled, the mount is not made
+ recursively read-only. If this field is set to IfPossible, the mount is made
+ recursively read-only, if it is supported by the container runtime. If this
+ field is set to Enabled, the mount is made recursively read-only if it is
+ supported by the container runtime, otherwise the pod will not be started and
+ an error will be generated to indicate the reason.
+
+ If this field is set to IfPossible or Enabled, MountPropagation must be set to
+ None (or be unspecified, which defaults to None).
+
+ If this field is not specified, it is treated as an equivalent of Disabled.
+ type: string
+ subPath:
+ description: |-
+ Path within the volume from which the container's volume should be mounted.
+ Defaults to "" (volume's root).
+ type: string
+ subPathExpr:
+ description: |-
+ Expanded path within the volume from which the container's volume should be mounted.
+ Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.
+ Defaults to "" (volume's root).
+ SubPathExpr and SubPath are mutually exclusive.
+ type: string
+ required:
+ - mountPath
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
+ workingDir:
+ description: |-
+ Container's working directory.
+ If not specified, the container runtime's default will be used, which
+ might be configured in the container image.
+ Cannot be updated.
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ instances:
+ description: Instances is the number of executor instances.
+ format: int32
+ minimum: 1
+ type: integer
+ javaOptions:
+ description: |-
+ JavaOptions is a string of extra JVM options to pass to the executors. For instance,
+ GC settings or other logging.
+ type: string
+ labels:
+ additionalProperties:
+ type: string
+ description: Labels are the Kubernetes labels to be added to the
+ pod.
+ type: object
+ lifecycle:
+ description: Lifecycle for running preStop or postStart commands
+ properties:
+ postStart:
+ description: |-
+ PostStart is called immediately after a container is created. If the handler fails,
+ the container is terminated and restarted according to its restart policy.
+ Other management of the container blocks until the hook completes.
+ More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
+ properties:
+ exec:
+ description: Exec specifies a command to execute in the
+ container.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ description: HTTPGet specifies an HTTP GET request to
+ perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers to set in the request.
+ HTTP allows repeated headers.
+ items:
+ description: HTTPHeader describes a custom header
+ to be used in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ description: Sleep represents a duration that the container
+ should sleep.
+ properties:
+ seconds:
+ description: Seconds is the number of seconds to sleep.
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ description: |-
+ Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept
+ for backward compatibility. There is no validation of this field and
+ lifecycle hooks will fail at runtime when it is specified.
+ properties:
+ host:
+ description: 'Optional: Host name to connect to, defaults
+ to the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ preStop:
+ description: |-
+ PreStop is called immediately before a container is terminated due to an
+ API request or management event such as liveness/startup probe failure,
+ preemption, resource contention, etc. The handler is not called if the
+ container crashes or exits. The Pod's termination grace period countdown begins before the
+ PreStop hook is executed. Regardless of the outcome of the handler, the
+ container will eventually terminate within the Pod's termination grace
+ period (unless delayed by finalizers). Other management of the container blocks until the hook completes
+ or until the termination grace period is reached.
+ More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
+ properties:
+ exec:
+ description: Exec specifies a command to execute in the
+ container.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ description: HTTPGet specifies an HTTP GET request to
+ perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers to set in the request.
+ HTTP allows repeated headers.
+ items:
+ description: HTTPHeader describes a custom header
+ to be used in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ description: Sleep represents a duration that the container
+ should sleep.
+ properties:
+ seconds:
+ description: Seconds is the number of seconds to sleep.
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ description: |-
+ Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept
+ for backward compatibility. There is no validation of this field and
+ lifecycle hooks will fail at runtime when it is specified.
+ properties:
+ host:
+ description: 'Optional: Host name to connect to, defaults
+ to the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ type: object
+ memory:
+ description: Memory is the amount of memory to request for the
+ pod.
+ type: string
+ memoryOverhead:
+ description: MemoryOverhead is the amount of off-heap memory to
+ allocate in cluster mode, in MiB unless otherwise specified.
+ type: string
+ nodeSelector:
+ additionalProperties:
+ type: string
+ description: |-
+ NodeSelector is the Kubernetes node selector to be added to the driver and executor pods.
+ This field is mutually exclusive with nodeSelector at SparkApplication level (which will be deprecated).
+ type: object
+ podSecurityContext:
+ description: PodSecurityContext specifies the PodSecurityContext
+ to apply.
+ properties:
+ appArmorProfile:
+ description: |-
+ appArmorProfile is the AppArmor options to use by the containers in this pod.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile loaded on the node that should be used.
+ The profile must be preconfigured on the node to work.
+ Must match the loaded name of the profile.
+ Must be set if and only if type is "Localhost".
+ type: string
+ type:
+ description: |-
+ type indicates which kind of AppArmor profile will be applied.
+ Valid options are:
+ Localhost - a profile pre-loaded on the node.
+ RuntimeDefault - the container runtime's default profile.
+ Unconfined - no AppArmor enforcement.
+ type: string
+ required:
+ - type
+ type: object
+ fsGroup:
+ description: |-
+ A special supplemental group that applies to all containers in a pod.
+ Some volume types allow the Kubelet to change the ownership of that volume
+ to be owned by the pod:
+
+ 1. The owning GID will be the FSGroup
+ 2. The setgid bit is set (new files created in the volume will be owned by FSGroup)
+ 3. The permission bits are OR'd with rw-rw----
+
+ If unset, the Kubelet will not modify the ownership and permissions of any volume.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ fsGroupChangePolicy:
+ description: |-
+ fsGroupChangePolicy defines behavior of changing ownership and permission of the volume
+ before being exposed inside Pod. This field will only apply to
+ volume types which support fsGroup based ownership(and permissions).
+ It will have no effect on ephemeral volume types such as: secret, configmaps
+ and emptydir.
+ Valid values are "OnRootMismatch" and "Always". If not specified, "Always" is used.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: string
+ runAsGroup:
+ description: |-
+ The GID to run the entrypoint of the container process.
+ Uses runtime default if unset.
+ May also be set in SecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence
+ for that container.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ runAsNonRoot:
+ description: |-
+ Indicates that the container must run as a non-root user.
+ If true, the Kubelet will validate the image at runtime to ensure that it
+ does not run as UID 0 (root) and fail to start the container if it does.
+ If unset or false, no such validation will be performed.
+ May also be set in SecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: boolean
+ runAsUser:
+ description: |-
+ The UID to run the entrypoint of the container process.
+ Defaults to user specified in image metadata if unspecified.
+ May also be set in SecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence
+ for that container.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ seLinuxChangePolicy:
+ description: |-
+ seLinuxChangePolicy defines how the container's SELinux label is applied to all volumes used by the Pod.
+ It has no effect on nodes that do not support SELinux or to volumes does not support SELinux.
+ Valid values are "MountOption" and "Recursive".
+
+ "Recursive" means relabeling of all files on all Pod volumes by the container runtime.
+ This may be slow for large volumes, but allows mixing privileged and unprivileged Pods sharing the same volume on the same node.
+
+ "MountOption" mounts all eligible Pod volumes with `-o context` mount option.
+ This requires all Pods that share the same volume to use the same SELinux label.
+ It is not possible to share the same volume among privileged and unprivileged Pods.
+ Eligible volumes are in-tree FibreChannel and iSCSI volumes, and all CSI volumes
+ whose CSI driver announces SELinux support by setting spec.seLinuxMount: true in their
+ CSIDriver instance. Other volumes are always re-labelled recursively.
+ "MountOption" value is allowed only when SELinuxMount feature gate is enabled.
+
+ If not specified and SELinuxMount feature gate is enabled, "MountOption" is used.
+ If not specified and SELinuxMount feature gate is disabled, "MountOption" is used for ReadWriteOncePod volumes
+ and "Recursive" for all other volumes.
+
+ This field affects only Pods that have SELinux label set, either in PodSecurityContext or in SecurityContext of all containers.
+
+ All Pods that use the same volume should use the same seLinuxChangePolicy, otherwise some pods can get stuck in ContainerCreating state.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: string
+ seLinuxOptions:
+ description: |-
+ The SELinux context to be applied to all containers.
+ If unspecified, the container runtime will allocate a random SELinux context for each
+ container. May also be set in SecurityContext. If set in
+ both SecurityContext and PodSecurityContext, the value specified in SecurityContext
+ takes precedence for that container.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ level:
+ description: Level is SELinux level label that applies
+ to the container.
+ type: string
+ role:
+ description: Role is a SELinux role label that applies
+ to the container.
+ type: string
+ type:
+ description: Type is a SELinux type label that applies
+ to the container.
+ type: string
+ user:
+ description: User is a SELinux user label that applies
+ to the container.
+ type: string
+ type: object
+ seccompProfile:
+ description: |-
+ The seccomp options to use by the containers in this pod.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile defined in a file on the node should be used.
+ The profile must be preconfigured on the node to work.
+ Must be a descending path, relative to the kubelet's configured seccomp profile location.
+ Must be set if type is "Localhost". Must NOT be set for any other type.
+ type: string
+ type:
+ description: |-
+ type indicates which kind of seccomp profile will be applied.
+ Valid options are:
+
+ Localhost - a profile defined in a file on the node should be used.
+ RuntimeDefault - the container runtime default profile should be used.
+ Unconfined - no profile should be applied.
+ type: string
+ required:
+ - type
+ type: object
+ supplementalGroups:
+ description: |-
+ A list of groups applied to the first process run in each container, in
+ addition to the container's primary GID and fsGroup (if specified). If
+ the SupplementalGroupsPolicy feature is enabled, the
+ supplementalGroupsPolicy field determines whether these are in addition
+ to or instead of any group memberships defined in the container image.
+ If unspecified, no additional groups are added, though group memberships
+ defined in the container image may still be used, depending on the
+ supplementalGroupsPolicy field.
+ Note that this field cannot be set when spec.os.name is windows.
+ items:
+ format: int64
+ type: integer
+ type: array
+ x-kubernetes-list-type: atomic
+ supplementalGroupsPolicy:
+ description: |-
+ Defines how supplemental groups of the first container processes are calculated.
+ Valid values are "Merge" and "Strict". If not specified, "Merge" is used.
+ (Alpha) Using the field requires the SupplementalGroupsPolicy feature gate to be enabled
+ and the container runtime must implement support for this feature.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: string
+ sysctls:
+ description: |-
+ Sysctls hold a list of namespaced sysctls used for the pod. Pods with unsupported
+ sysctls (by the container runtime) might fail to launch.
+ Note that this field cannot be set when spec.os.name is windows.
+ items:
+ description: Sysctl defines a kernel parameter to be set
+ properties:
+ name:
+ description: Name of a property to set
+ type: string
+ value:
+ description: Value of a property to set
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ windowsOptions:
+ description: |-
+ The Windows specific settings applied to all containers.
+ If unspecified, the options within a container's SecurityContext will be used.
+ If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is linux.
+ properties:
+ gmsaCredentialSpec:
+ description: |-
+ GMSACredentialSpec is where the GMSA admission webhook
+ (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the
+ GMSA credential spec named by the GMSACredentialSpecName field.
+ type: string
+ gmsaCredentialSpecName:
+ description: GMSACredentialSpecName is the name of the
+ GMSA credential spec to use.
+ type: string
+ hostProcess:
+ description: |-
+ HostProcess determines if a container should be run as a 'Host Process' container.
+ All of a Pod's containers must have the same effective HostProcess value
+ (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers).
+ In addition, if HostProcess is true then HostNetwork must also be set to true.
+ type: boolean
+ runAsUserName:
+ description: |-
+ The UserName in Windows to run the entrypoint of the container process.
+ Defaults to the user specified in image metadata if unspecified.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: string
+ type: object
+ type: object
+ ports:
+ description: Ports settings for the pods, following the Kubernetes
+ specifications.
+ items:
+ description: Port represents the port definition in the pods
+ objects.
+ properties:
+ containerPort:
+ format: int32
+ type: integer
+ name:
+ type: string
+ protocol:
+ type: string
+ required:
+ - containerPort
+ - name
+ - protocol
+ type: object
+ type: array
+ priorityClassName:
+ description: PriorityClassName is the name of the PriorityClass
+ for the executor pod.
+ type: string
+ schedulerName:
+ description: SchedulerName specifies the scheduler that will be
+ used for scheduling
+ type: string
+ secrets:
+ description: Secrets carries information of secrets to add to
+ the pod.
+ items:
+ description: SecretInfo captures information of a secret.
+ properties:
+ name:
+ type: string
+ path:
+ type: string
+ secretType:
+ description: SecretType tells the type of a secret.
+ type: string
+ required:
+ - name
+ - path
+ - secretType
+ type: object
+ type: array
+ securityContext:
+ description: SecurityContext specifies the container's SecurityContext
+ to apply.
+ properties:
+ allowPrivilegeEscalation:
+ description: |-
+ AllowPrivilegeEscalation controls whether a process can gain more
+ privileges than its parent process. This bool directly controls if
+ the no_new_privs flag will be set on the container process.
+ AllowPrivilegeEscalation is true always when the container is:
+ 1) run as Privileged
+ 2) has CAP_SYS_ADMIN
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ appArmorProfile:
+ description: |-
+ appArmorProfile is the AppArmor options to use by this container. If set, this profile
+ overrides the pod's appArmorProfile.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile loaded on the node that should be used.
+ The profile must be preconfigured on the node to work.
+ Must match the loaded name of the profile.
+ Must be set if and only if type is "Localhost".
+ type: string
+ type:
+ description: |-
+ type indicates which kind of AppArmor profile will be applied.
+ Valid options are:
+ Localhost - a profile pre-loaded on the node.
+ RuntimeDefault - the container runtime's default profile.
+ Unconfined - no AppArmor enforcement.
+ type: string
+ required:
+ - type
+ type: object
+ capabilities:
+ description: |-
+ The capabilities to add/drop when running containers.
+ Defaults to the default set of capabilities granted by the container runtime.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ add:
+ description: Added capabilities
+ items:
+ description: Capability represent POSIX capabilities
+ type
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ drop:
+ description: Removed capabilities
+ items:
+ description: Capability represent POSIX capabilities
+ type
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ privileged:
+ description: |-
+ Run container in privileged mode.
+ Processes in privileged containers are essentially equivalent to root on the host.
+ Defaults to false.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ procMount:
+ description: |-
+ procMount denotes the type of proc mount to use for the containers.
+ The default value is Default which uses the container runtime defaults for
+ readonly paths and masked paths.
+ This requires the ProcMountType feature flag to be enabled.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: string
+ readOnlyRootFilesystem:
+ description: |-
+ Whether this container has a read-only root filesystem.
+ Default is false.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ runAsGroup:
+ description: |-
+ The GID to run the entrypoint of the container process.
+ Uses runtime default if unset.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ runAsNonRoot:
+ description: |-
+ Indicates that the container must run as a non-root user.
+ If true, the Kubelet will validate the image at runtime to ensure that it
+ does not run as UID 0 (root) and fail to start the container if it does.
+ If unset or false, no such validation will be performed.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: boolean
+ runAsUser:
+ description: |-
+ The UID to run the entrypoint of the container process.
+ Defaults to user specified in image metadata if unspecified.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ seLinuxOptions:
+ description: |-
+ The SELinux context to be applied to the container.
+ If unspecified, the container runtime will allocate a random SELinux context for each
+ container. May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ level:
+ description: Level is SELinux level label that applies
+ to the container.
+ type: string
+ role:
+ description: Role is a SELinux role label that applies
+ to the container.
+ type: string
+ type:
+ description: Type is a SELinux type label that applies
+ to the container.
+ type: string
+ user:
+ description: User is a SELinux user label that applies
+ to the container.
+ type: string
+ type: object
+ seccompProfile:
+ description: |-
+ The seccomp options to use by this container. If seccomp options are
+ provided at both the pod & container level, the container options
+ override the pod options.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile defined in a file on the node should be used.
+ The profile must be preconfigured on the node to work.
+ Must be a descending path, relative to the kubelet's configured seccomp profile location.
+ Must be set if type is "Localhost". Must NOT be set for any other type.
+ type: string
+ type:
+ description: |-
+ type indicates which kind of seccomp profile will be applied.
+ Valid options are:
+
+ Localhost - a profile defined in a file on the node should be used.
+ RuntimeDefault - the container runtime default profile should be used.
+ Unconfined - no profile should be applied.
+ type: string
+ required:
+ - type
+ type: object
+ windowsOptions:
+ description: |-
+ The Windows specific settings applied to all containers.
+ If unspecified, the options from the PodSecurityContext will be used.
+ If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is linux.
+ properties:
+ gmsaCredentialSpec:
+ description: |-
+ GMSACredentialSpec is where the GMSA admission webhook
+ (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the
+ GMSA credential spec named by the GMSACredentialSpecName field.
+ type: string
+ gmsaCredentialSpecName:
+ description: GMSACredentialSpecName is the name of the
+ GMSA credential spec to use.
+ type: string
+ hostProcess:
+ description: |-
+ HostProcess determines if a container should be run as a 'Host Process' container.
+ All of a Pod's containers must have the same effective HostProcess value
+ (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers).
+ In addition, if HostProcess is true then HostNetwork must also be set to true.
+ type: boolean
+ runAsUserName:
+ description: |-
+ The UserName in Windows to run the entrypoint of the container process.
+ Defaults to the user specified in image metadata if unspecified.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: string
+ type: object
+ type: object
+ serviceAccount:
+ description: ServiceAccount is the name of the custom Kubernetes
+ service account used by the pod.
+ type: string
+ shareProcessNamespace:
+ description: ShareProcessNamespace settings for the pod, following
+ the Kubernetes specifications.
+ type: boolean
+ sidecars:
+ description: Sidecars is a list of sidecar containers that run
+ along side the main Spark container.
+ items:
+ description: A single application container that you want to
+ run within a pod.
+ properties:
+ args:
+ description: |-
+ Arguments to the entrypoint.
+ The container image's CMD is used if this is not provided.
+ Variable references $(VAR_NAME) are expanded using the container's environment. If a variable
+ cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will
+ produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless
+ of whether the variable exists or not. Cannot be updated.
+ More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ command:
+ description: |-
+ Entrypoint array. Not executed within a shell.
+ The container image's ENTRYPOINT is used if this is not provided.
+ Variable references $(VAR_NAME) are expanded using the container's environment. If a variable
+ cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will
+ produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless
+ of whether the variable exists or not. Cannot be updated.
+ More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ env:
+ description: |-
+ List of environment variables to set in the container.
+ Cannot be updated.
+ items:
+ description: EnvVar represents an environment variable
+ present in a Container.
+ properties:
+ name:
+ description: Name of the environment variable. Must
+ be a C_IDENTIFIER.
+ type: string
+ value:
+ description: |-
+ Variable references $(VAR_NAME) are expanded
+ using the previously defined environment variables in the container and
+ any service environment variables. If a variable cannot be resolved,
+ the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e.
+ "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)".
+ Escaped references will never be expanded, regardless of whether the variable
+ exists or not.
+ Defaults to "".
+ type: string
+ valueFrom:
+ description: Source for the environment variable's
+ value. Cannot be used if value is not empty.
+ properties:
+ configMapKeyRef:
+ description: Selects a key of a ConfigMap.
+ properties:
+ key:
+ description: The key to select.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the ConfigMap
+ or its key must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ fieldRef:
+ description: |-
+ Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`,
+ spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.
+ properties:
+ apiVersion:
+ description: Version of the schema the FieldPath
+ is written in terms of, defaults to "v1".
+ type: string
+ fieldPath:
+ description: Path of the field to select in
+ the specified API version.
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ resourceFieldRef:
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported.
+ properties:
+ containerName:
+ description: 'Container name: required for
+ volumes, optional for env vars'
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ description: Specifies the output format of
+ the exposed resources, defaults to "1"
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ description: 'Required: resource to select'
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ secretKeyRef:
+ description: Selects a key of a secret in the
+ pod's namespace
+ properties:
+ key:
+ description: The key of the secret to select
+ from. Must be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or
+ its key must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ envFrom:
+ description: |-
+ List of sources to populate environment variables in the container.
+ The keys defined within a source must be a C_IDENTIFIER. All invalid keys
+ will be reported as an event when the container is starting. When a key exists in multiple
+ sources, the value associated with the last source will take precedence.
+ Values defined by an Env with a duplicate key will take precedence.
+ Cannot be updated.
+ items:
+ description: EnvFromSource represents the source of a
+ set of ConfigMaps
+ properties:
+ configMapRef:
+ description: The ConfigMap to select from
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the ConfigMap must
+ be defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ prefix:
+ description: An optional identifier to prepend to
+ each key in the ConfigMap. Must be a C_IDENTIFIER.
+ type: string
+ secretRef:
+ description: The Secret to select from
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret must be
+ defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ image:
+ description: |-
+ Container image name.
+ More info: https://kubernetes.io/docs/concepts/containers/images
+ This field is optional to allow higher level config management to default or override
+ container images in workload controllers like Deployments and StatefulSets.
+ type: string
+ imagePullPolicy:
+ description: |-
+ Image pull policy.
+ One of Always, Never, IfNotPresent.
+ Defaults to Always if :latest tag is specified, or IfNotPresent otherwise.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/containers/images#updating-images
+ type: string
+ lifecycle:
+ description: |-
+ Actions that the management system should take in response to container lifecycle events.
+ Cannot be updated.
+ properties:
+ postStart:
+ description: |-
+ PostStart is called immediately after a container is created. If the handler fails,
+ the container is terminated and restarted according to its restart policy.
+ Other management of the container blocks until the hook completes.
+ More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
+ properties:
+ exec:
+ description: Exec specifies a command to execute
+ in the container.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ description: HTTPGet specifies an HTTP GET request
+ to perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers to set in the request.
+ HTTP allows repeated headers.
+ items:
+ description: HTTPHeader describes a custom
+ header to be used in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ description: Sleep represents a duration that the
+ container should sleep.
+ properties:
+ seconds:
+ description: Seconds is the number of seconds
+ to sleep.
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ description: |-
+ Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept
+ for backward compatibility. There is no validation of this field and
+ lifecycle hooks will fail at runtime when it is specified.
+ properties:
+ host:
+ description: 'Optional: Host name to connect
+ to, defaults to the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ preStop:
+ description: |-
+ PreStop is called immediately before a container is terminated due to an
+ API request or management event such as liveness/startup probe failure,
+ preemption, resource contention, etc. The handler is not called if the
+ container crashes or exits. The Pod's termination grace period countdown begins before the
+ PreStop hook is executed. Regardless of the outcome of the handler, the
+ container will eventually terminate within the Pod's termination grace
+ period (unless delayed by finalizers). Other management of the container blocks until the hook completes
+ or until the termination grace period is reached.
+ More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
+ properties:
+ exec:
+ description: Exec specifies a command to execute
+ in the container.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ description: HTTPGet specifies an HTTP GET request
+ to perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers to set in the request.
+ HTTP allows repeated headers.
+ items:
+ description: HTTPHeader describes a custom
+ header to be used in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ description: Sleep represents a duration that the
+ container should sleep.
+ properties:
+ seconds:
+ description: Seconds is the number of seconds
+ to sleep.
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ description: |-
+ Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept
+ for backward compatibility. There is no validation of this field and
+ lifecycle hooks will fail at runtime when it is specified.
+ properties:
+ host:
+ description: 'Optional: Host name to connect
+ to, defaults to the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ type: object
+ livenessProbe:
+ description: |-
+ Periodic probe of container liveness.
+ Container will be restarted if the probe fails.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ properties:
+ exec:
+ description: Exec specifies a command to execute in
+ the container.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
+ format: int32
+ type: integer
+ grpc:
+ description: GRPC specifies a GRPC HealthCheckRequest.
+ properties:
+ port:
+ description: Port number of the gRPC service. Number
+ must be in the range 1 to 65535.
+ format: int32
+ type: integer
+ service:
+ default: ""
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
+ (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
+
+ If this is not specified, the default behavior is defined by gRPC.
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ description: HTTPGet specifies an HTTP GET request to
+ perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers to set in the request.
+ HTTP allows repeated headers.
+ items:
+ description: HTTPHeader describes a custom header
+ to be used in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ periodSeconds:
+ description: |-
+ How often (in seconds) to perform the probe.
+ Default to 10 seconds. Minimum value is 1.
+ format: int32
+ type: integer
+ successThreshold:
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
+ format: int32
+ type: integer
+ tcpSocket:
+ description: TCPSocket specifies a connection to a TCP
+ port.
+ properties:
+ host:
+ description: 'Optional: Host name to connect to,
+ defaults to the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
+ format: int64
+ type: integer
+ timeoutSeconds:
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ type: object
+ name:
+ description: |-
+ Name of the container specified as a DNS_LABEL.
+ Each container in a pod must have a unique name (DNS_LABEL).
+ Cannot be updated.
+ type: string
+ ports:
+ description: |-
+ List of ports to expose from the container. Not specifying a port here
+ DOES NOT prevent that port from being exposed. Any port which is
+ listening on the default "0.0.0.0" address inside a container will be
+ accessible from the network.
+ Modifying this array with strategic merge patch may corrupt the data.
+ For more information See https://github.com/kubernetes/kubernetes/issues/108255.
+ Cannot be updated.
+ items:
+ description: ContainerPort represents a network port in
+ a single container.
+ properties:
+ containerPort:
+ description: |-
+ Number of port to expose on the pod's IP address.
+ This must be a valid port number, 0 < x < 65536.
+ format: int32
+ type: integer
+ hostIP:
+ description: What host IP to bind the external port
+ to.
+ type: string
+ hostPort:
+ description: |-
+ Number of port to expose on the host.
+ If specified, this must be a valid port number, 0 < x < 65536.
+ If HostNetwork is specified, this must match ContainerPort.
+ Most containers do not need this.
+ format: int32
+ type: integer
+ name:
+ description: |-
+ If specified, this must be an IANA_SVC_NAME and unique within the pod. Each
+ named port in a pod must have a unique name. Name for the port that can be
+ referred to by services.
+ type: string
+ protocol:
+ default: TCP
+ description: |-
+ Protocol for port. Must be UDP, TCP, or SCTP.
+ Defaults to "TCP".
+ type: string
+ required:
+ - containerPort
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - containerPort
+ - protocol
+ x-kubernetes-list-type: map
+ readinessProbe:
+ description: |-
+ Periodic probe of container service readiness.
+ Container will be removed from service endpoints if the probe fails.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ properties:
+ exec:
+ description: Exec specifies a command to execute in
+ the container.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
+ format: int32
+ type: integer
+ grpc:
+ description: GRPC specifies a GRPC HealthCheckRequest.
+ properties:
+ port:
+ description: Port number of the gRPC service. Number
+ must be in the range 1 to 65535.
+ format: int32
+ type: integer
+ service:
+ default: ""
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
+ (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
+
+ If this is not specified, the default behavior is defined by gRPC.
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ description: HTTPGet specifies an HTTP GET request to
+ perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers to set in the request.
+ HTTP allows repeated headers.
+ items:
+ description: HTTPHeader describes a custom header
+ to be used in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ periodSeconds:
+ description: |-
+ How often (in seconds) to perform the probe.
+ Default to 10 seconds. Minimum value is 1.
+ format: int32
+ type: integer
+ successThreshold:
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
+ format: int32
+ type: integer
+ tcpSocket:
+ description: TCPSocket specifies a connection to a TCP
+ port.
+ properties:
+ host:
+ description: 'Optional: Host name to connect to,
+ defaults to the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
+ format: int64
+ type: integer
+ timeoutSeconds:
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ type: object
+ resizePolicy:
+ description: Resources resize policy for the container.
+ items:
+ description: ContainerResizePolicy represents resource
+ resize policy for the container.
+ properties:
+ resourceName:
+ description: |-
+ Name of the resource to which this resource resize policy applies.
+ Supported values: cpu, memory.
+ type: string
+ restartPolicy:
+ description: |-
+ Restart policy to apply when specified resource is resized.
+ If not specified, it defaults to NotRequired.
+ type: string
+ required:
+ - resourceName
+ - restartPolicy
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ resources:
+ description: |-
+ Compute Resources required by this container.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ properties:
+ claims:
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+ This field is immutable. It can only be set for containers.
+ items:
+ description: ResourceClaim references one entry in
+ PodSpec.ResourceClaims.
+ properties:
+ name:
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
+ type: string
+ request:
+ description: |-
+ Request is the name chosen for a request in the referenced claim.
+ If empty, everything from the claim is made available, otherwise
+ only the result of this request.
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ limits:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ type: object
+ requests:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ type: object
+ type: object
+ restartPolicy:
+ description: |-
+ RestartPolicy defines the restart behavior of individual containers in a pod.
+ This field may only be set for init containers, and the only allowed value is "Always".
+ For non-init containers or when this field is not specified,
+ the restart behavior is defined by the Pod's restart policy and the container type.
+ Setting the RestartPolicy as "Always" for the init container will have the following effect:
+ this init container will be continually restarted on
+ exit until all regular containers have terminated. Once all regular
+ containers have completed, all init containers with restartPolicy "Always"
+ will be shut down. This lifecycle differs from normal init containers and
+ is often referred to as a "sidecar" container. Although this init
+ container still starts in the init container sequence, it does not wait
+ for the container to complete before proceeding to the next init
+ container. Instead, the next init container starts immediately after this
+ init container is started, or after any startupProbe has successfully
+ completed.
+ type: string
+ securityContext:
+ description: |-
+ SecurityContext defines the security options the container should be run with.
+ If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext.
+ More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
+ properties:
+ allowPrivilegeEscalation:
+ description: |-
+ AllowPrivilegeEscalation controls whether a process can gain more
+ privileges than its parent process. This bool directly controls if
+ the no_new_privs flag will be set on the container process.
+ AllowPrivilegeEscalation is true always when the container is:
+ 1) run as Privileged
+ 2) has CAP_SYS_ADMIN
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ appArmorProfile:
+ description: |-
+ appArmorProfile is the AppArmor options to use by this container. If set, this profile
+ overrides the pod's appArmorProfile.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile loaded on the node that should be used.
+ The profile must be preconfigured on the node to work.
+ Must match the loaded name of the profile.
+ Must be set if and only if type is "Localhost".
+ type: string
+ type:
+ description: |-
+ type indicates which kind of AppArmor profile will be applied.
+ Valid options are:
+ Localhost - a profile pre-loaded on the node.
+ RuntimeDefault - the container runtime's default profile.
+ Unconfined - no AppArmor enforcement.
+ type: string
+ required:
+ - type
+ type: object
+ capabilities:
+ description: |-
+ The capabilities to add/drop when running containers.
+ Defaults to the default set of capabilities granted by the container runtime.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ add:
+ description: Added capabilities
+ items:
+ description: Capability represent POSIX capabilities
+ type
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ drop:
+ description: Removed capabilities
+ items:
+ description: Capability represent POSIX capabilities
+ type
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ privileged:
+ description: |-
+ Run container in privileged mode.
+ Processes in privileged containers are essentially equivalent to root on the host.
+ Defaults to false.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ procMount:
+ description: |-
+ procMount denotes the type of proc mount to use for the containers.
+ The default value is Default which uses the container runtime defaults for
+ readonly paths and masked paths.
+ This requires the ProcMountType feature flag to be enabled.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: string
+ readOnlyRootFilesystem:
+ description: |-
+ Whether this container has a read-only root filesystem.
+ Default is false.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ runAsGroup:
+ description: |-
+ The GID to run the entrypoint of the container process.
+ Uses runtime default if unset.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ runAsNonRoot:
+ description: |-
+ Indicates that the container must run as a non-root user.
+ If true, the Kubelet will validate the image at runtime to ensure that it
+ does not run as UID 0 (root) and fail to start the container if it does.
+ If unset or false, no such validation will be performed.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: boolean
+ runAsUser:
+ description: |-
+ The UID to run the entrypoint of the container process.
+ Defaults to user specified in image metadata if unspecified.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ seLinuxOptions:
+ description: |-
+ The SELinux context to be applied to the container.
+ If unspecified, the container runtime will allocate a random SELinux context for each
+ container. May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ level:
+ description: Level is SELinux level label that applies
+ to the container.
+ type: string
+ role:
+ description: Role is a SELinux role label that applies
+ to the container.
+ type: string
+ type:
+ description: Type is a SELinux type label that applies
+ to the container.
+ type: string
+ user:
+ description: User is a SELinux user label that applies
+ to the container.
+ type: string
+ type: object
+ seccompProfile:
+ description: |-
+ The seccomp options to use by this container. If seccomp options are
+ provided at both the pod & container level, the container options
+ override the pod options.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile defined in a file on the node should be used.
+ The profile must be preconfigured on the node to work.
+ Must be a descending path, relative to the kubelet's configured seccomp profile location.
+ Must be set if type is "Localhost". Must NOT be set for any other type.
+ type: string
+ type:
+ description: |-
+ type indicates which kind of seccomp profile will be applied.
+ Valid options are:
+
+ Localhost - a profile defined in a file on the node should be used.
+ RuntimeDefault - the container runtime default profile should be used.
+ Unconfined - no profile should be applied.
+ type: string
+ required:
+ - type
+ type: object
+ windowsOptions:
+ description: |-
+ The Windows specific settings applied to all containers.
+ If unspecified, the options from the PodSecurityContext will be used.
+ If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is linux.
+ properties:
+ gmsaCredentialSpec:
+ description: |-
+ GMSACredentialSpec is where the GMSA admission webhook
+ (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the
+ GMSA credential spec named by the GMSACredentialSpecName field.
+ type: string
+ gmsaCredentialSpecName:
+ description: GMSACredentialSpecName is the name
+ of the GMSA credential spec to use.
+ type: string
+ hostProcess:
+ description: |-
+ HostProcess determines if a container should be run as a 'Host Process' container.
+ All of a Pod's containers must have the same effective HostProcess value
+ (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers).
+ In addition, if HostProcess is true then HostNetwork must also be set to true.
+ type: boolean
+ runAsUserName:
+ description: |-
+ The UserName in Windows to run the entrypoint of the container process.
+ Defaults to the user specified in image metadata if unspecified.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: string
+ type: object
+ type: object
+ startupProbe:
+ description: |-
+ 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: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ properties:
+ exec:
+ description: Exec specifies a command to execute in
+ the container.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
+ format: int32
+ type: integer
+ grpc:
+ description: GRPC specifies a GRPC HealthCheckRequest.
+ properties:
+ port:
+ description: Port number of the gRPC service. Number
+ must be in the range 1 to 65535.
+ format: int32
+ type: integer
+ service:
+ default: ""
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
+ (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
+
+ If this is not specified, the default behavior is defined by gRPC.
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ description: HTTPGet specifies an HTTP GET request to
+ perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers to set in the request.
+ HTTP allows repeated headers.
+ items:
+ description: HTTPHeader describes a custom header
+ to be used in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ periodSeconds:
+ description: |-
+ How often (in seconds) to perform the probe.
+ Default to 10 seconds. Minimum value is 1.
+ format: int32
+ type: integer
+ successThreshold:
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
+ format: int32
+ type: integer
+ tcpSocket:
+ description: TCPSocket specifies a connection to a TCP
+ port.
+ properties:
+ host:
+ description: 'Optional: Host name to connect to,
+ defaults to the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
+ format: int64
+ type: integer
+ timeoutSeconds:
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ type: object
+ stdin:
+ description: |-
+ Whether this container should allocate a buffer for stdin in the container runtime. If this
+ is not set, reads from stdin in the container will always result in EOF.
+ Default is false.
+ type: boolean
+ stdinOnce:
+ description: |-
+ Whether the container runtime should close the stdin channel after it has been opened by
+ a single attach. When stdin is true the stdin stream will remain open across multiple attach
+ sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the
+ first client attaches to stdin, and then remains open and accepts data until the client disconnects,
+ at which time stdin is closed and remains closed until the container is restarted. If this
+ flag is false, a container processes that reads from stdin will never receive an EOF.
+ Default is false
+ type: boolean
+ terminationMessagePath:
+ description: |-
+ Optional: Path at which the file to which the container's termination message
+ will be written is mounted into the container's filesystem.
+ Message written is intended to be brief final status, such as an assertion failure message.
+ Will be truncated by the node if greater than 4096 bytes. The total message length across
+ all containers will be limited to 12kb.
+ Defaults to /dev/termination-log.
+ Cannot be updated.
+ type: string
+ terminationMessagePolicy:
+ description: |-
+ Indicate how the termination message should be populated. File will use the contents of
+ terminationMessagePath to populate the container status message on both success and failure.
+ FallbackToLogsOnError will use the last chunk of container log output if the termination
+ message file is empty and the container exited with an error.
+ The log output is limited to 2048 bytes or 80 lines, whichever is smaller.
+ Defaults to File.
+ Cannot be updated.
+ type: string
+ tty:
+ description: |-
+ Whether this container should allocate a TTY for itself, also requires 'stdin' to be true.
+ Default is false.
+ type: boolean
+ volumeDevices:
+ description: volumeDevices is the list of block devices
+ to be used by the container.
+ items:
+ description: volumeDevice describes a mapping of a raw
+ block device within a container.
+ properties:
+ devicePath:
+ description: devicePath is the path inside of the
+ container that the device will be mapped to.
+ type: string
+ name:
+ description: name must match the name of a persistentVolumeClaim
+ in the pod
+ type: string
+ required:
+ - devicePath
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
+ volumeMounts:
+ description: |-
+ Pod volumes to mount into the container's filesystem.
+ Cannot be updated.
+ items:
+ description: VolumeMount describes a mounting of a Volume
+ within a container.
+ properties:
+ mountPath:
+ description: |-
+ Path within the container at which the volume should be mounted. Must
+ not contain ':'.
+ type: string
+ mountPropagation:
+ description: |-
+ mountPropagation determines how mounts are propagated from the host
+ to container and the other way around.
+ When not set, MountPropagationNone is used.
+ This field is beta in 1.10.
+ When RecursiveReadOnly is set to IfPossible or to Enabled, MountPropagation must be None or unspecified
+ (which defaults to None).
+ type: string
+ name:
+ description: This must match the Name of a Volume.
+ type: string
+ readOnly:
+ description: |-
+ Mounted read-only if true, read-write otherwise (false or unspecified).
+ Defaults to false.
+ type: boolean
+ recursiveReadOnly:
+ description: |-
+ RecursiveReadOnly specifies whether read-only mounts should be handled
+ recursively.
+
+ If ReadOnly is false, this field has no meaning and must be unspecified.
+
+ If ReadOnly is true, and this field is set to Disabled, the mount is not made
+ recursively read-only. If this field is set to IfPossible, the mount is made
+ recursively read-only, if it is supported by the container runtime. If this
+ field is set to Enabled, the mount is made recursively read-only if it is
+ supported by the container runtime, otherwise the pod will not be started and
+ an error will be generated to indicate the reason.
+
+ If this field is set to IfPossible or Enabled, MountPropagation must be set to
+ None (or be unspecified, which defaults to None).
+
+ If this field is not specified, it is treated as an equivalent of Disabled.
+ type: string
+ subPath:
+ description: |-
+ Path within the volume from which the container's volume should be mounted.
+ Defaults to "" (volume's root).
+ type: string
+ subPathExpr:
+ description: |-
+ Expanded path within the volume from which the container's volume should be mounted.
+ Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.
+ Defaults to "" (volume's root).
+ SubPathExpr and SubPath are mutually exclusive.
+ type: string
+ required:
+ - mountPath
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
+ workingDir:
+ description: |-
+ Container's working directory.
+ If not specified, the container runtime's default will be used, which
+ might be configured in the container image.
+ Cannot be updated.
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ template:
+ description: |-
+ Template is a pod template that can be used to define the driver or executor pod configurations that Spark configurations do not support.
+ Spark version >= 3.0.0 is required.
+ Ref: https://spark.apache.org/docs/latest/running-on-kubernetes.html#pod-template.
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ terminationGracePeriodSeconds:
+ description: Termination grace period seconds for the pod
+ format: int64
+ type: integer
+ tolerations:
+ description: Tolerations specifies the tolerations listed in ".spec.tolerations"
+ to be applied to the pod.
+ items:
+ description: |-
+ The pod this Toleration is attached to tolerates any taint that matches
+ the triple using the matching operator .
+ properties:
+ effect:
+ description: |-
+ Effect indicates the taint effect to match. Empty means match all taint effects.
+ When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute.
+ type: string
+ key:
+ description: |-
+ Key is the taint key that the toleration applies to. Empty means match all taint keys.
+ If the key is empty, operator must be Exists; this combination means to match all values and all keys.
+ type: string
+ operator:
+ description: |-
+ Operator represents a key's relationship to the value.
+ Valid operators are Exists and Equal. Defaults to Equal.
+ Exists is equivalent to wildcard for value, so that a pod can
+ tolerate all taints of a particular category.
+ type: string
+ tolerationSeconds:
+ description: |-
+ TolerationSeconds represents the period of time the toleration (which must be
+ of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default,
+ it is not set, which means tolerate the taint forever (do not evict). Zero and
+ negative values will be treated as 0 (evict immediately) by the system.
+ format: int64
+ type: integer
+ value:
+ description: |-
+ Value is the taint value the toleration matches to.
+ If the operator is Exists, the value should be empty, otherwise just a regular string.
+ type: string
+ type: object
+ type: array
+ volumeMounts:
+ description: VolumeMounts specifies the volumes listed in ".spec.volumes"
+ to mount into the main container's filesystem.
+ items:
+ description: VolumeMount describes a mounting of a Volume within
+ a container.
+ properties:
+ mountPath:
+ description: |-
+ Path within the container at which the volume should be mounted. Must
+ not contain ':'.
+ type: string
+ mountPropagation:
+ description: |-
+ mountPropagation determines how mounts are propagated from the host
+ to container and the other way around.
+ When not set, MountPropagationNone is used.
+ This field is beta in 1.10.
+ When RecursiveReadOnly is set to IfPossible or to Enabled, MountPropagation must be None or unspecified
+ (which defaults to None).
+ type: string
+ name:
+ description: This must match the Name of a Volume.
+ type: string
+ readOnly:
+ description: |-
+ Mounted read-only if true, read-write otherwise (false or unspecified).
+ Defaults to false.
+ type: boolean
+ recursiveReadOnly:
+ description: |-
+ RecursiveReadOnly specifies whether read-only mounts should be handled
+ recursively.
+
+ If ReadOnly is false, this field has no meaning and must be unspecified.
+
+ If ReadOnly is true, and this field is set to Disabled, the mount is not made
+ recursively read-only. If this field is set to IfPossible, the mount is made
+ recursively read-only, if it is supported by the container runtime. If this
+ field is set to Enabled, the mount is made recursively read-only if it is
+ supported by the container runtime, otherwise the pod will not be started and
+ an error will be generated to indicate the reason.
+
+ If this field is set to IfPossible or Enabled, MountPropagation must be set to
+ None (or be unspecified, which defaults to None).
+
+ If this field is not specified, it is treated as an equivalent of Disabled.
+ type: string
+ subPath:
+ description: |-
+ Path within the volume from which the container's volume should be mounted.
+ Defaults to "" (volume's root).
+ type: string
+ subPathExpr:
+ description: |-
+ Expanded path within the volume from which the container's volume should be mounted.
+ Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.
+ Defaults to "" (volume's root).
+ SubPathExpr and SubPath are mutually exclusive.
+ type: string
+ required:
+ - mountPath
+ - name
+ type: object
+ type: array
+ type: object
+ failureRetries:
+ description: |-
+ FailureRetries is the number of times to retry a failed application before giving up.
+ This is best effort and actual retry attempts can be >= the value specified.
+ format: int32
+ type: integer
+ hadoopConf:
+ additionalProperties:
+ type: string
+ description: |-
+ HadoopConf carries user-specified Hadoop configuration properties as they would use the "--conf" option
+ in spark-submit. The SparkApplication controller automatically adds prefix "spark.hadoop." to Hadoop
+ configuration properties.
+ type: object
+ hadoopConfigMap:
+ description: |-
+ HadoopConfigMap carries the name of the ConfigMap containing Hadoop configuration files such as core-site.xml.
+ The controller will add environment variable HADOOP_CONF_DIR to the path where the ConfigMap is mounted to.
+ type: string
+ image:
+ description: |-
+ Image is the container image for the driver, executor, and init-container. Any custom container images for the
+ driver, executor, or init-container takes precedence over this.
+ type: string
+ imagePullPolicy:
+ description: ImagePullPolicy is the image pull policy for the driver,
+ executor, and init-container.
+ type: string
+ imagePullSecrets:
+ description: ImagePullSecrets is the list of image-pull secrets.
+ items:
+ type: string
+ type: array
+ mainApplicationFile:
+ description: MainFile is the path to a bundled JAR, Python, or R file
+ of the application.
+ type: string
+ mainClass:
+ description: |-
+ MainClass is the fully-qualified main class of the Spark application.
+ This only applies to Java/Scala Spark applications.
+ type: string
+ memoryOverheadFactor:
+ description: |-
+ This sets the Memory Overhead Factor that will allocate memory to non-JVM memory.
+ For JVM-based jobs this value will default to 0.10, for non-JVM jobs 0.40. Value of this field will
+ be overridden by `Spec.Driver.MemoryOverhead` and `Spec.Executor.MemoryOverhead` if they are set.
+ type: string
+ mode:
+ description: Mode is the deployment mode of the Spark application.
+ enum:
+ - cluster
+ - client
+ type: string
+ monitoring:
+ description: Monitoring configures how monitoring is handled.
+ properties:
+ exposeDriverMetrics:
+ description: ExposeDriverMetrics specifies whether to expose metrics
+ on the driver.
+ type: boolean
+ exposeExecutorMetrics:
+ description: ExposeExecutorMetrics specifies whether to expose
+ metrics on the executors.
+ type: boolean
+ metricsProperties:
+ description: |-
+ MetricsProperties is the content of a custom metrics.properties for configuring the Spark metric system.
+ If not specified, the content in spark-docker/conf/metrics.properties will be used.
+ type: string
+ metricsPropertiesFile:
+ description: |-
+ MetricsPropertiesFile is the container local path of file metrics.properties for configuring
+ the Spark metric system. If not specified, value /etc/metrics/conf/metrics.properties will be used.
+ type: string
+ prometheus:
+ description: Prometheus is for configuring the Prometheus JMX
+ exporter.
+ properties:
+ configFile:
+ description: |-
+ ConfigFile is the path to the custom Prometheus configuration file provided in the Spark image.
+ ConfigFile takes precedence over Configuration, which is shown below.
+ type: string
+ configuration:
+ description: |-
+ Configuration is the content of the Prometheus configuration needed by the Prometheus JMX exporter.
+ If not specified, the content in spark-docker/conf/prometheus.yaml will be used.
+ Configuration has no effect if ConfigFile is set.
+ type: string
+ jmxExporterJar:
+ description: JmxExporterJar is the path to the Prometheus
+ JMX exporter jar in the container.
+ type: string
+ port:
+ description: |-
+ Port is the port of the HTTP server run by the Prometheus JMX exporter.
+ If not specified, 8090 will be used as the default.
+ format: int32
+ maximum: 49151
+ minimum: 1024
+ type: integer
+ portName:
+ description: |-
+ PortName is the port name of prometheus JMX exporter port.
+ If not specified, jmx-exporter will be used as the default.
+ type: string
+ required:
+ - jmxExporterJar
+ type: object
+ required:
+ - exposeDriverMetrics
+ - exposeExecutorMetrics
+ type: object
+ nodeSelector:
+ additionalProperties:
+ type: string
+ description: |-
+ NodeSelector is the Kubernetes node selector to be added to the driver and executor pods.
+ This field is mutually exclusive with nodeSelector at podSpec level (driver or executor).
+ This field will be deprecated in future versions (at SparkApplicationSpec level).
+ type: object
+ proxyUser:
+ description: |-
+ ProxyUser specifies the user to impersonate when submitting the application.
+ It maps to the command-line flag "--proxy-user" in spark-submit.
+ type: string
+ pythonVersion:
+ description: |-
+ This sets the major Python version of the docker
+ image used to run the driver and executor containers. Can either be 2 or 3, default 2.
+ enum:
+ - "2"
+ - "3"
+ type: string
+ restartPolicy:
+ description: RestartPolicy defines the policy on if and in which conditions
+ the controller should restart an application.
+ properties:
+ onFailureRetries:
+ description: OnFailureRetries the number of times to retry running
+ an application before giving up.
+ format: int32
+ minimum: 0
+ type: integer
+ onFailureRetryInterval:
+ description: OnFailureRetryInterval is the interval in seconds
+ between retries on failed runs.
+ format: int64
+ minimum: 1
+ type: integer
+ onSubmissionFailureRetries:
+ description: |-
+ OnSubmissionFailureRetries is the number of times to retry submitting an application before giving up.
+ This is best effort and actual retry attempts can be >= the value specified due to caching.
+ These are required if RestartPolicy is OnFailure.
+ format: int32
+ minimum: 0
+ type: integer
+ onSubmissionFailureRetryInterval:
+ description: OnSubmissionFailureRetryInterval is the interval
+ in seconds between retries on failed submissions.
+ format: int64
+ minimum: 1
+ type: integer
+ type:
+ description: Type specifies the RestartPolicyType.
+ enum:
+ - Never
+ - Always
+ - OnFailure
+ type: string
+ type: object
+ retryInterval:
+ description: RetryInterval is the unit of intervals in seconds between
+ submission retries.
+ format: int64
+ type: integer
+ sparkConf:
+ additionalProperties:
+ type: string
+ description: |-
+ SparkConf carries user-specified Spark configuration properties as they would use the "--conf" option in
+ spark-submit.
+ type: object
+ sparkConfigMap:
+ description: |-
+ SparkConfigMap carries the name of the ConfigMap containing Spark configuration files such as log4j.properties.
+ The controller will add environment variable SPARK_CONF_DIR to the path where the ConfigMap is mounted to.
+ type: string
+ sparkUIOptions:
+ description: SparkUIOptions allows configuring the Service and the
+ Ingress to expose the sparkUI
+ properties:
+ ingressAnnotations:
+ additionalProperties:
+ type: string
+ description: IngressAnnotations is a map of key,value pairs of
+ annotations that might be added to the ingress object. i.e.
+ specify nginx as ingress.class
+ type: object
+ ingressTLS:
+ description: TlsHosts is useful If we need to declare SSL certificates
+ to the ingress object
+ items:
+ description: IngressTLS describes the transport layer security
+ associated with an ingress.
+ properties:
+ hosts:
+ description: |-
+ hosts is a list of hosts included in the TLS certificate. The values in
+ this list must match the name/s used in the tlsSecret. Defaults to the
+ wildcard host setting for the loadbalancer controller fulfilling this
+ Ingress, if left unspecified.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ secretName:
+ description: |-
+ secretName is the name of the secret used to terminate TLS traffic on
+ port 443. Field is left optional to allow TLS routing based on SNI
+ hostname alone. If the SNI host in a listener conflicts with the "Host"
+ header field used by an IngressRule, the SNI host is used for termination
+ and value of the "Host" header is used for routing.
+ type: string
+ type: object
+ type: array
+ serviceAnnotations:
+ additionalProperties:
+ type: string
+ description: ServiceAnnotations is a map of key,value pairs of
+ annotations that might be added to the service object.
+ type: object
+ serviceLabels:
+ additionalProperties:
+ type: string
+ description: ServiceLabels is a map of key,value pairs of labels
+ that might be added to the service object.
+ type: object
+ servicePort:
+ description: |-
+ ServicePort allows configuring the port at service level that might be different from the targetPort.
+ TargetPort should be the same as the one defined in spark.ui.port
+ format: int32
+ type: integer
+ servicePortName:
+ description: |-
+ ServicePortName allows configuring the name of the service port.
+ This may be useful for sidecar proxies like Envoy injected by Istio which require specific ports names to treat traffic as proper HTTP.
+ Defaults to spark-driver-ui-port.
+ type: string
+ serviceType:
+ description: ServiceType allows configuring the type of the service.
+ Defaults to ClusterIP.
+ type: string
+ type: object
+ sparkVersion:
+ description: SparkVersion is the version of Spark the application
+ uses.
+ type: string
+ timeToLiveSeconds:
+ description: |-
+ TimeToLiveSeconds defines the Time-To-Live (TTL) duration in seconds for this SparkApplication
+ after its termination.
+ The SparkApplication object will be garbage collected if the current time is more than the
+ TimeToLiveSeconds since its termination.
+ format: int64
+ type: integer
+ type:
+ description: Type tells the type of the Spark application.
+ enum:
+ - Java
+ - Python
+ - Scala
+ - R
+ type: string
+ volumes:
+ description: Volumes is the list of Kubernetes volumes that can be
+ mounted by the driver and/or executors.
+ items:
+ description: Volume represents a named volume in a pod that may
+ be accessed by any container in the pod.
+ properties:
+ awsElasticBlockStore:
+ description: |-
+ awsElasticBlockStore represents an AWS Disk resource that is attached to a
+ kubelet's host machine and then exposed to the pod.
+ Deprecated: AWSElasticBlockStore is deprecated. All operations for the in-tree
+ awsElasticBlockStore type are redirected to the ebs.csi.aws.com CSI driver.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
+ properties:
+ fsType:
+ description: |-
+ fsType is the filesystem type of the volume that you want to mount.
+ Tip: Ensure that the filesystem type is supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
+ type: string
+ partition:
+ description: |-
+ partition is the partition in the volume that you want to mount.
+ If omitted, the default is to mount by volume name.
+ Examples: For volume /dev/sda1, you specify the partition as "1".
+ Similarly, the volume partition for /dev/sda is "0" (or you can leave the property empty).
+ format: int32
+ type: integer
+ readOnly:
+ description: |-
+ readOnly value true will force the readOnly setting in VolumeMounts.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
+ type: boolean
+ volumeID:
+ description: |-
+ volumeID is unique ID of the persistent disk resource in AWS (Amazon EBS volume).
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
+ type: string
+ required:
+ - volumeID
+ type: object
+ azureDisk:
+ description: |-
+ azureDisk represents an Azure Data Disk mount on the host and bind mount to the pod.
+ Deprecated: AzureDisk is deprecated. All operations for the in-tree azureDisk type
+ are redirected to the disk.csi.azure.com CSI driver.
+ properties:
+ cachingMode:
+ description: 'cachingMode is the Host Caching mode: None,
+ Read Only, Read Write.'
+ type: string
+ diskName:
+ description: diskName is the Name of the data disk in the
+ blob storage
+ type: string
+ diskURI:
+ description: diskURI is the URI of data disk in the blob
+ storage
+ type: string
+ fsType:
+ default: ext4
+ description: |-
+ fsType is Filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ type: string
+ kind:
+ description: 'kind expected values are Shared: multiple
+ blob disks per storage account Dedicated: single blob
+ disk per storage account Managed: azure managed data
+ disk (only in managed availability set). defaults to shared'
+ type: string
+ readOnly:
+ default: false
+ description: |-
+ readOnly Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ type: boolean
+ required:
+ - diskName
+ - diskURI
+ type: object
+ azureFile:
+ description: |-
+ azureFile represents an Azure File Service mount on the host and bind mount to the pod.
+ Deprecated: AzureFile is deprecated. All operations for the in-tree azureFile type
+ are redirected to the file.csi.azure.com CSI driver.
+ properties:
+ readOnly:
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ type: boolean
+ secretName:
+ description: secretName is the name of secret that contains
+ Azure Storage Account Name and Key
+ type: string
+ shareName:
+ description: shareName is the azure share Name
+ type: string
+ required:
+ - secretName
+ - shareName
+ type: object
+ cephfs:
+ description: |-
+ cephFS represents a Ceph FS mount on the host that shares a pod's lifetime.
+ Deprecated: CephFS is deprecated and the in-tree cephfs type is no longer supported.
+ properties:
+ monitors:
+ description: |-
+ monitors is Required: Monitors is a collection of Ceph monitors
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: 'path is Optional: Used as the mounted root,
+ rather than the full Ceph tree, default is /'
+ type: string
+ readOnly:
+ description: |-
+ readOnly is Optional: Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
+ type: boolean
+ secretFile:
+ description: |-
+ secretFile is Optional: SecretFile is the path to key ring for User, default is /etc/ceph/user.secret
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
+ type: string
+ secretRef:
+ description: |-
+ secretRef is Optional: SecretRef is reference to the authentication secret for User, default is empty.
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ user:
+ description: |-
+ user is optional: User is the rados user name, default is admin
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
+ type: string
+ required:
+ - monitors
+ type: object
+ cinder:
+ description: |-
+ cinder represents a cinder volume attached and mounted on kubelets host machine.
+ Deprecated: Cinder is deprecated. All operations for the in-tree cinder type
+ are redirected to the cinder.csi.openstack.org CSI driver.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
+ properties:
+ fsType:
+ description: |-
+ fsType is the filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
+ type: string
+ readOnly:
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
+ type: boolean
+ secretRef:
+ description: |-
+ secretRef is optional: points to a secret object containing parameters used to connect
+ to OpenStack.
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ volumeID:
+ description: |-
+ volumeID used to identify the volume in cinder.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
+ type: string
+ required:
+ - volumeID
+ type: object
+ configMap:
+ description: configMap represents a configMap that should populate
+ this volume
+ properties:
+ defaultMode:
+ description: |-
+ defaultMode is optional: mode bits used to set permissions on created files by default.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ Defaults to 0644.
+ Directories within the path are not affected by this setting.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
+ format: int32
+ type: integer
+ items:
+ description: |-
+ items if unspecified, each key-value pair in the Data field of the referenced
+ ConfigMap will be projected into the volume as a file whose name is the
+ key and content is the value. If specified, the listed keys will be
+ projected into the specified paths, and unlisted keys will not be
+ present. If a key is specified which is not present in the ConfigMap,
+ the volume setup will error unless it is marked optional. Paths must be
+ relative and may not contain the '..' path or start with '..'.
+ items:
+ description: Maps a string key to a path within a volume.
+ properties:
+ key:
+ description: key is the key to project.
+ type: string
+ mode:
+ description: |-
+ mode is Optional: mode bits used to set permissions on this file.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ If not specified, the volume defaultMode will be used.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
+ format: int32
+ type: integer
+ path:
+ description: |-
+ path is the relative path of the file to map the key to.
+ May not be an absolute path.
+ May not contain the path element '..'.
+ May not start with the string '..'.
+ type: string
+ required:
+ - key
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: optional specify whether the ConfigMap or its
+ keys must be defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ csi:
+ description: csi (Container Storage Interface) represents ephemeral
+ storage that is handled by certain external CSI drivers.
+ properties:
+ driver:
+ description: |-
+ driver is the name of the CSI driver that handles this volume.
+ Consult with your admin for the correct name as registered in the cluster.
+ type: string
+ fsType:
+ description: |-
+ fsType to mount. Ex. "ext4", "xfs", "ntfs".
+ If not provided, the empty value is passed to the associated CSI driver
+ which will determine the default filesystem to apply.
+ type: string
+ nodePublishSecretRef:
+ description: |-
+ nodePublishSecretRef is a reference to the secret object containing
+ sensitive information to pass to the CSI driver to complete the CSI
+ NodePublishVolume and NodeUnpublishVolume calls.
+ This field is optional, and may be empty if no secret is required. If the
+ secret object contains more than one secret, all secret references are passed.
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ readOnly:
+ description: |-
+ readOnly specifies a read-only configuration for the volume.
+ Defaults to false (read/write).
+ type: boolean
+ volumeAttributes:
+ additionalProperties:
+ type: string
+ description: |-
+ volumeAttributes stores driver-specific properties that are passed to the CSI
+ driver. Consult your driver's documentation for supported values.
+ type: object
+ required:
+ - driver
+ type: object
+ downwardAPI:
+ description: downwardAPI represents downward API about the pod
+ that should populate this volume
+ properties:
+ defaultMode:
+ description: |-
+ Optional: mode bits to use on created files by default. Must be a
+ Optional: mode bits used to set permissions on created files by default.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ Defaults to 0644.
+ Directories within the path are not affected by this setting.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
+ format: int32
+ type: integer
+ items:
+ description: Items is a list of downward API volume file
+ items:
+ description: DownwardAPIVolumeFile represents information
+ to create the file containing the pod field
+ properties:
+ fieldRef:
+ description: 'Required: Selects a field of the pod:
+ only annotations, labels, name, namespace and uid
+ are supported.'
+ properties:
+ apiVersion:
+ description: Version of the schema the FieldPath
+ is written in terms of, defaults to "v1".
+ type: string
+ fieldPath:
+ description: Path of the field to select in the
+ specified API version.
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ mode:
+ description: |-
+ Optional: mode bits used to set permissions on this file, must be an octal value
+ between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ If not specified, the volume defaultMode will be used.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
+ format: int32
+ type: integer
+ path:
+ description: 'Required: Path is the relative path
+ name of the file to be created. Must not be absolute
+ or contain the ''..'' path. Must be utf-8 encoded.
+ The first item of the relative path must not start
+ with ''..'''
+ type: string
+ resourceFieldRef:
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, requests.cpu and requests.memory) are currently supported.
+ properties:
+ containerName:
+ description: 'Container name: required for volumes,
+ optional for env vars'
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ description: Specifies the output format of the
+ exposed resources, defaults to "1"
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ description: 'Required: resource to select'
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ required:
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ emptyDir:
+ description: |-
+ emptyDir represents a temporary directory that shares a pod's lifetime.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
+ properties:
+ medium:
+ description: |-
+ medium represents what type of storage medium should back this directory.
+ The default is "" which means to use the node's default medium.
+ Must be an empty string (default) or Memory.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
+ type: string
+ sizeLimit:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ sizeLimit is the total amount of local storage required for this EmptyDir volume.
+ The size limit is also applicable for memory medium.
+ The maximum usage on memory medium EmptyDir would be the minimum value between
+ the SizeLimit specified here and the sum of memory limits of all containers in a pod.
+ The default is nil which means that the limit is undefined.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ ephemeral:
+ description: |-
+ ephemeral represents a volume that is handled by a cluster storage driver.
+ The volume's lifecycle is tied to the pod that defines it - it will be created before the pod starts,
+ and deleted when the pod is removed.
+
+ Use this if:
+ a) the volume is only needed while the pod runs,
+ b) features of normal volumes like restoring from snapshot or capacity
+ tracking are needed,
+ c) the storage driver is specified through a storage class, and
+ d) the storage driver supports dynamic volume provisioning through
+ a PersistentVolumeClaim (see EphemeralVolumeSource for more
+ information on the connection between this volume type
+ and PersistentVolumeClaim).
+
+ Use PersistentVolumeClaim or one of the vendor-specific
+ APIs for volumes that persist for longer than the lifecycle
+ of an individual pod.
+
+ Use CSI for light-weight local ephemeral volumes if the CSI driver is meant to
+ be used that way - see the documentation of the driver for
+ more information.
+
+ A pod can use both types of ephemeral volumes and
+ persistent volumes at the same time.
+ properties:
+ volumeClaimTemplate:
+ description: |-
+ Will be used to create a stand-alone PVC to provision the volume.
+ The pod in which this EphemeralVolumeSource is embedded will be the
+ owner of the PVC, i.e. the PVC will be deleted together with the
+ pod. The name of the PVC will be `-` where
+ `` is the name from the `PodSpec.Volumes` array
+ entry. Pod validation will reject the pod if the concatenated name
+ is not valid for a PVC (for example, too long).
+
+ An existing PVC with that name that is not owned by the pod
+ will *not* be used for the pod to avoid using an unrelated
+ volume by mistake. Starting the pod is then blocked until
+ the unrelated PVC is removed. If such a pre-created PVC is
+ meant to be used by the pod, the PVC has to updated with an
+ owner reference to the pod once the pod exists. Normally
+ this should not be necessary, but it may be useful when
+ manually reconstructing a broken cluster.
+
+ This field is read-only and no changes will be made by Kubernetes
+ to the PVC after it has been created.
+
+ Required, must not be nil.
+ properties:
+ metadata:
+ description: |-
+ May contain labels and annotations that will be copied into the PVC
+ when creating it. No other fields are allowed and will be rejected during
+ validation.
+ properties:
+ annotations:
+ additionalProperties:
+ type: string
+ type: object
+ finalizers:
+ items:
+ type: string
+ type: array
+ labels:
+ additionalProperties:
+ type: string
+ type: object
+ name:
+ type: string
+ namespace:
+ type: string
+ type: object
+ spec:
+ description: |-
+ The specification for the PersistentVolumeClaim. The entire content is
+ copied unchanged into the PVC that gets created from this
+ template. The same fields as in a PersistentVolumeClaim
+ are also valid here.
+ properties:
+ accessModes:
+ description: |-
+ accessModes contains the desired access modes the volume should have.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ dataSource:
+ description: |-
+ dataSource field can be used to specify either:
+ * An existing VolumeSnapshot object (snapshot.storage.k8s.io/VolumeSnapshot)
+ * An existing PVC (PersistentVolumeClaim)
+ If the provisioner or an external controller can support the specified data source,
+ it will create a new volume based on the contents of the specified data source.
+ When the AnyVolumeDataSource feature gate is enabled, dataSource contents will be copied to dataSourceRef,
+ and dataSourceRef contents will be copied to dataSource when dataSourceRef.namespace is not specified.
+ If the namespace is specified, then dataSourceRef will not be copied to dataSource.
+ properties:
+ apiGroup:
+ description: |-
+ APIGroup is the group for the resource being referenced.
+ If APIGroup is not specified, the specified Kind must be in the core API group.
+ For any other third-party types, APIGroup is required.
+ type: string
+ kind:
+ description: Kind is the type of resource being
+ referenced
+ type: string
+ name:
+ description: Name is the name of resource being
+ referenced
+ type: string
+ required:
+ - kind
+ - name
+ type: object
+ x-kubernetes-map-type: atomic
+ dataSourceRef:
+ description: |-
+ dataSourceRef specifies the object from which to populate the volume with data, if a non-empty
+ volume is desired. This may be any object from a non-empty API group (non
+ core object) or a PersistentVolumeClaim object.
+ When this field is specified, volume binding will only succeed if the type of
+ the specified object matches some installed volume populator or dynamic
+ provisioner.
+ This field will replace the functionality of the dataSource field and as such
+ if both fields are non-empty, they must have the same value. For backwards
+ compatibility, when namespace isn't specified in dataSourceRef,
+ both fields (dataSource and dataSourceRef) will be set to the same
+ value automatically if one of them is empty and the other is non-empty.
+ When namespace is specified in dataSourceRef,
+ dataSource isn't set to the same value and must be empty.
+ There are three important differences between dataSource and dataSourceRef:
+ * While dataSource only allows two specific types of objects, dataSourceRef
+ allows any non-core object, as well as PersistentVolumeClaim objects.
+ * While dataSource ignores disallowed values (dropping them), dataSourceRef
+ preserves all values, and generates an error if a disallowed value is
+ specified.
+ * While dataSource only allows local objects, dataSourceRef allows objects
+ in any namespaces.
+ (Beta) Using this field requires the AnyVolumeDataSource feature gate to be enabled.
+ (Alpha) Using the namespace field of dataSourceRef requires the CrossNamespaceVolumeDataSource feature gate to be enabled.
+ properties:
+ apiGroup:
+ description: |-
+ APIGroup is the group for the resource being referenced.
+ If APIGroup is not specified, the specified Kind must be in the core API group.
+ For any other third-party types, APIGroup is required.
+ type: string
+ kind:
+ description: Kind is the type of resource being
+ referenced
+ type: string
+ name:
+ description: Name is the name of resource being
+ referenced
+ type: string
+ namespace:
+ description: |-
+ Namespace is the namespace of resource being referenced
+ Note that when a namespace is specified, a gateway.networking.k8s.io/ReferenceGrant object is required in the referent namespace to allow that namespace's owner to accept the reference. See the ReferenceGrant documentation for details.
+ (Alpha) This field requires the CrossNamespaceVolumeDataSource feature gate to be enabled.
+ type: string
+ required:
+ - kind
+ - name
+ type: object
+ resources:
+ description: |-
+ resources represents the minimum resources the volume should have.
+ If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements
+ that are lower than previous value but must still be higher than capacity recorded in the
+ status field of the claim.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
+ properties:
+ limits:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ type: object
+ requests:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ type: object
+ type: object
+ selector:
+ description: selector is a label query over volumes
+ to consider for binding.
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label
+ selector requirements. The requirements are
+ ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key is the label key that
+ the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ storageClassName:
+ description: |-
+ storageClassName is the name of the StorageClass required by the claim.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1
+ type: string
+ volumeAttributesClassName:
+ description: |-
+ volumeAttributesClassName may be used to set the VolumeAttributesClass used by this claim.
+ If specified, the CSI driver will create or update the volume with the attributes defined
+ in the corresponding VolumeAttributesClass. This has a different purpose than storageClassName,
+ it can be changed after the claim is created. An empty string value means that no VolumeAttributesClass
+ will be applied to the claim but it's not allowed to reset this field to empty string once it is set.
+ If unspecified and the PersistentVolumeClaim is unbound, the default VolumeAttributesClass
+ will be set by the persistentvolume controller if it exists.
+ If the resource referred to by volumeAttributesClass does not exist, this PersistentVolumeClaim will be
+ set to a Pending state, as reflected by the modifyVolumeStatus field, until such as a resource
+ exists.
+ More info: https://kubernetes.io/docs/concepts/storage/volume-attributes-classes/
+ (Beta) Using this field requires the VolumeAttributesClass feature gate to be enabled (off by default).
+ type: string
+ volumeMode:
+ description: |-
+ volumeMode defines what type of volume is required by the claim.
+ Value of Filesystem is implied when not included in claim spec.
+ type: string
+ volumeName:
+ description: volumeName is the binding reference
+ to the PersistentVolume backing this claim.
+ type: string
+ type: object
+ required:
+ - spec
+ type: object
+ type: object
+ fc:
+ description: fc represents a Fibre Channel resource that is
+ attached to a kubelet's host machine and then exposed to the
+ pod.
+ properties:
+ fsType:
+ description: |-
+ fsType is the filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ type: string
+ lun:
+ description: 'lun is Optional: FC target lun number'
+ format: int32
+ type: integer
+ readOnly:
+ description: |-
+ readOnly is Optional: Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ type: boolean
+ targetWWNs:
+ description: 'targetWWNs is Optional: FC target worldwide
+ names (WWNs)'
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ wwids:
+ description: |-
+ wwids Optional: FC volume world wide identifiers (wwids)
+ Either wwids or combination of targetWWNs and lun must be set, but not both simultaneously.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ flexVolume:
+ description: |-
+ flexVolume represents a generic volume resource that is
+ provisioned/attached using an exec based plugin.
+ Deprecated: FlexVolume is deprecated. Consider using a CSIDriver instead.
+ properties:
+ driver:
+ description: driver is the name of the driver to use for
+ this volume.
+ type: string
+ fsType:
+ description: |-
+ fsType is the filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Ex. "ext4", "xfs", "ntfs". The default filesystem depends on FlexVolume script.
+ type: string
+ options:
+ additionalProperties:
+ type: string
+ description: 'options is Optional: this field holds extra
+ command options if any.'
+ type: object
+ readOnly:
+ description: |-
+ readOnly is Optional: defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ type: boolean
+ secretRef:
+ description: |-
+ secretRef is Optional: secretRef is reference to the secret object containing
+ sensitive information to pass to the plugin scripts. This may be
+ empty if no secret object is specified. If the secret object
+ contains more than one secret, all secrets are passed to the plugin
+ scripts.
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ required:
+ - driver
+ type: object
+ flocker:
+ description: |-
+ flocker represents a Flocker volume attached to a kubelet's host machine. This depends on the Flocker control service being running.
+ Deprecated: Flocker is deprecated and the in-tree flocker type is no longer supported.
+ properties:
+ datasetName:
+ description: |-
+ datasetName is Name of the dataset stored as metadata -> name on the dataset for Flocker
+ should be considered as deprecated
+ type: string
+ datasetUUID:
+ description: datasetUUID is the UUID of the dataset. This
+ is unique identifier of a Flocker dataset
+ type: string
+ type: object
+ gcePersistentDisk:
+ description: |-
+ gcePersistentDisk represents a GCE Disk resource that is attached to a
+ kubelet's host machine and then exposed to the pod.
+ Deprecated: GCEPersistentDisk is deprecated. All operations for the in-tree
+ gcePersistentDisk type are redirected to the pd.csi.storage.gke.io CSI driver.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
+ properties:
+ fsType:
+ description: |-
+ fsType is filesystem type of the volume that you want to mount.
+ Tip: Ensure that the filesystem type is supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
+ type: string
+ partition:
+ description: |-
+ partition is the partition in the volume that you want to mount.
+ If omitted, the default is to mount by volume name.
+ Examples: For volume /dev/sda1, you specify the partition as "1".
+ Similarly, the volume partition for /dev/sda is "0" (or you can leave the property empty).
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
+ format: int32
+ type: integer
+ pdName:
+ description: |-
+ pdName is unique name of the PD resource in GCE. Used to identify the disk in GCE.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
+ type: string
+ readOnly:
+ description: |-
+ readOnly here will force the ReadOnly setting in VolumeMounts.
+ Defaults to false.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
+ type: boolean
+ required:
+ - pdName
+ type: object
+ gitRepo:
+ description: |-
+ gitRepo represents a git repository at a particular revision.
+ Deprecated: GitRepo is deprecated. To provision a container with a git repo, mount an
+ EmptyDir into an InitContainer that clones the repo using git, then mount the EmptyDir
+ into the Pod's container.
+ properties:
+ directory:
+ description: |-
+ directory is the target directory name.
+ Must not contain or start with '..'. If '.' is supplied, the volume directory will be the
+ git repository. Otherwise, if specified, the volume will contain the git repository in
+ the subdirectory with the given name.
+ type: string
+ repository:
+ description: repository is the URL
+ type: string
+ revision:
+ description: revision is the commit hash for the specified
+ revision.
+ type: string
+ required:
+ - repository
+ type: object
+ glusterfs:
+ description: |-
+ glusterfs represents a Glusterfs mount on the host that shares a pod's lifetime.
+ Deprecated: Glusterfs is deprecated and the in-tree glusterfs type is no longer supported.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md
+ properties:
+ endpoints:
+ description: |-
+ endpoints is the endpoint name that details Glusterfs topology.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
+ type: string
+ path:
+ description: |-
+ path is the Glusterfs volume path.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
+ type: string
+ readOnly:
+ description: |-
+ readOnly here will force the Glusterfs volume to be mounted with read-only permissions.
+ Defaults to false.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
+ type: boolean
+ required:
+ - endpoints
+ - path
+ type: object
+ hostPath:
+ description: |-
+ hostPath represents a pre-existing file or directory on the host
+ machine that is directly exposed to the container. This is generally
+ used for system agents or other privileged things that are allowed
+ to see the host machine. Most containers will NOT need this.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath
+ properties:
+ path:
+ description: |-
+ path of the directory on the host.
+ If the path is a symlink, it will follow the link to the real path.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath
+ type: string
+ type:
+ description: |-
+ type for HostPath Volume
+ Defaults to ""
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath
+ type: string
+ required:
+ - path
+ type: object
+ image:
+ description: |-
+ image represents an OCI object (a container image or artifact) pulled and mounted on the kubelet's host machine.
+ The volume is resolved at pod startup depending on which PullPolicy value is provided:
+
+ - Always: the kubelet always attempts to pull the reference. Container creation will fail If the pull fails.
+ - Never: the kubelet never pulls the reference and only uses a local image or artifact. Container creation will fail if the reference isn't present.
+ - IfNotPresent: the kubelet pulls if the reference isn't already present on disk. Container creation will fail if the reference isn't present and the pull fails.
+
+ The volume gets re-resolved if the pod gets deleted and recreated, which means that new remote content will become available on pod recreation.
+ A failure to resolve or pull the image during pod startup will block containers from starting and may add significant latency. Failures will be retried using normal volume backoff and will be reported on the pod reason and message.
+ The types of objects that may be mounted by this volume are defined by the container runtime implementation on a host machine and at minimum must include all valid types supported by the container image field.
+ The OCI object gets mounted in a single directory (spec.containers[*].volumeMounts.mountPath) by merging the manifest layers in the same way as for container images.
+ The volume will be mounted read-only (ro) and non-executable files (noexec).
+ Sub path mounts for containers are not supported (spec.containers[*].volumeMounts.subpath).
+ The field spec.securityContext.fsGroupChangePolicy has no effect on this volume type.
+ properties:
+ pullPolicy:
+ description: |-
+ Policy for pulling OCI objects. Possible values are:
+ Always: the kubelet always attempts to pull the reference. Container creation will fail If the pull fails.
+ Never: the kubelet never pulls the reference and only uses a local image or artifact. Container creation will fail if the reference isn't present.
+ IfNotPresent: the kubelet pulls if the reference isn't already present on disk. Container creation will fail if the reference isn't present and the pull fails.
+ Defaults to Always if :latest tag is specified, or IfNotPresent otherwise.
+ type: string
+ reference:
+ description: |-
+ Required: Image or artifact reference to be used.
+ Behaves in the same way as pod.spec.containers[*].image.
+ Pull secrets will be assembled in the same way as for the container image by looking up node credentials, SA image pull secrets, and pod spec image pull secrets.
+ More info: https://kubernetes.io/docs/concepts/containers/images
+ This field is optional to allow higher level config management to default or override
+ container images in workload controllers like Deployments and StatefulSets.
+ type: string
+ type: object
+ iscsi:
+ description: |-
+ iscsi represents an ISCSI Disk resource that is attached to a
+ kubelet's host machine and then exposed to the pod.
+ More info: https://examples.k8s.io/volumes/iscsi/README.md
+ properties:
+ chapAuthDiscovery:
+ description: chapAuthDiscovery defines whether support iSCSI
+ Discovery CHAP authentication
+ type: boolean
+ chapAuthSession:
+ description: chapAuthSession defines whether support iSCSI
+ Session CHAP authentication
+ type: boolean
+ fsType:
+ description: |-
+ fsType is the filesystem type of the volume that you want to mount.
+ Tip: Ensure that the filesystem type is supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#iscsi
+ type: string
+ initiatorName:
+ description: |-
+ initiatorName is the custom iSCSI Initiator Name.
+ If initiatorName is specified with iscsiInterface simultaneously, new iSCSI interface
+ : will be created for the connection.
+ type: string
+ iqn:
+ description: iqn is the target iSCSI Qualified Name.
+ type: string
+ iscsiInterface:
+ default: default
+ description: |-
+ iscsiInterface is the interface Name that uses an iSCSI transport.
+ Defaults to 'default' (tcp).
+ type: string
+ lun:
+ description: lun represents iSCSI Target Lun number.
+ format: int32
+ type: integer
+ portals:
+ description: |-
+ portals is the iSCSI Target Portal List. The portal is either an IP or ip_addr:port if the port
+ is other than default (typically TCP ports 860 and 3260).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ readOnly:
+ description: |-
+ readOnly here will force the ReadOnly setting in VolumeMounts.
+ Defaults to false.
+ type: boolean
+ secretRef:
+ description: secretRef is the CHAP Secret for iSCSI target
+ and initiator authentication
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ targetPortal:
+ description: |-
+ targetPortal is iSCSI Target Portal. The Portal is either an IP or ip_addr:port if the port
+ is other than default (typically TCP ports 860 and 3260).
+ type: string
+ required:
+ - iqn
+ - lun
+ - targetPortal
+ type: object
+ name:
+ description: |-
+ name of the volume.
+ Must be a DNS_LABEL and unique within the pod.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ nfs:
+ description: |-
+ nfs represents an NFS mount on the host that shares a pod's lifetime
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
+ properties:
+ path:
+ description: |-
+ path that is exported by the NFS server.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
+ type: string
+ readOnly:
+ description: |-
+ readOnly here will force the NFS export to be mounted with read-only permissions.
+ Defaults to false.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
+ type: boolean
+ server:
+ description: |-
+ server is the hostname or IP address of the NFS server.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
+ type: string
+ required:
+ - path
+ - server
+ type: object
+ persistentVolumeClaim:
+ description: |-
+ persistentVolumeClaimVolumeSource represents a reference to a
+ PersistentVolumeClaim in the same namespace.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
+ properties:
+ claimName:
+ description: |-
+ claimName is the name of a PersistentVolumeClaim in the same namespace as the pod using this volume.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
+ type: string
+ readOnly:
+ description: |-
+ readOnly Will force the ReadOnly setting in VolumeMounts.
+ Default false.
+ type: boolean
+ required:
+ - claimName
+ type: object
+ photonPersistentDisk:
+ description: |-
+ photonPersistentDisk represents a PhotonController persistent disk attached and mounted on kubelets host machine.
+ Deprecated: PhotonPersistentDisk is deprecated and the in-tree photonPersistentDisk type is no longer supported.
+ properties:
+ fsType:
+ description: |-
+ fsType is the filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ type: string
+ pdID:
+ description: pdID is the ID that identifies Photon Controller
+ persistent disk
+ type: string
+ required:
+ - pdID
+ type: object
+ portworxVolume:
+ description: |-
+ portworxVolume represents a portworx volume attached and mounted on kubelets host machine.
+ Deprecated: PortworxVolume is deprecated. All operations for the in-tree portworxVolume type
+ are redirected to the pxd.portworx.com CSI driver when the CSIMigrationPortworx feature-gate
+ is on.
+ properties:
+ fsType:
+ description: |-
+ fSType represents the filesystem type to mount
+ Must be a filesystem type supported by the host operating system.
+ Ex. "ext4", "xfs". Implicitly inferred to be "ext4" if unspecified.
+ type: string
+ readOnly:
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ type: boolean
+ volumeID:
+ description: volumeID uniquely identifies a Portworx volume
+ type: string
+ required:
+ - volumeID
+ type: object
+ projected:
+ description: projected items for all in one resources secrets,
+ configmaps, and downward API
+ properties:
+ defaultMode:
+ description: |-
+ defaultMode are the mode bits used to set permissions on created files by default.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ Directories within the path are not affected by this setting.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
+ format: int32
+ type: integer
+ sources:
+ description: |-
+ sources is the list of volume projections. Each entry in this list
+ handles one source.
+ items:
+ description: |-
+ Projection that may be projected along with other supported volume types.
+ Exactly one of these fields must be set.
+ properties:
+ clusterTrustBundle:
+ description: |-
+ ClusterTrustBundle allows a pod to access the `.spec.trustBundle` field
+ of ClusterTrustBundle objects in an auto-updating file.
+
+ Alpha, gated by the ClusterTrustBundleProjection feature gate.
+
+ ClusterTrustBundle objects can either be selected by name, or by the
+ combination of signer name and a label selector.
+
+ Kubelet performs aggressive normalization of the PEM contents written
+ into the pod filesystem. Esoteric PEM features such as inter-block
+ comments and block headers are stripped. Certificates are deduplicated.
+ The ordering of certificates within the file is arbitrary, and Kubelet
+ may change the order over time.
+ properties:
+ labelSelector:
+ description: |-
+ Select all ClusterTrustBundles that match this label selector. Only has
+ effect if signerName is set. Mutually-exclusive with name. If unset,
+ interpreted as "match nothing". If set but empty, interpreted as "match
+ everything".
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of
+ label selector requirements. The requirements
+ are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key is the label key that
+ the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ name:
+ description: |-
+ Select a single ClusterTrustBundle by object name. Mutually-exclusive
+ with signerName and labelSelector.
+ type: string
+ optional:
+ description: |-
+ If true, don't block pod startup if the referenced ClusterTrustBundle(s)
+ aren't available. If using name, then the named ClusterTrustBundle is
+ allowed not to exist. If using signerName, then the combination of
+ signerName and labelSelector is allowed to match zero
+ ClusterTrustBundles.
+ type: boolean
+ path:
+ description: Relative path from the volume root
+ to write the bundle.
+ type: string
+ signerName:
+ description: |-
+ Select all ClusterTrustBundles that match this signer name.
+ Mutually-exclusive with name. The contents of all selected
+ ClusterTrustBundles will be unified and deduplicated.
+ type: string
+ required:
+ - path
+ type: object
+ configMap:
+ description: configMap information about the configMap
+ data to project
+ properties:
+ items:
+ description: |-
+ items if unspecified, each key-value pair in the Data field of the referenced
+ ConfigMap will be projected into the volume as a file whose name is the
+ key and content is the value. If specified, the listed keys will be
+ projected into the specified paths, and unlisted keys will not be
+ present. If a key is specified which is not present in the ConfigMap,
+ the volume setup will error unless it is marked optional. Paths must be
+ relative and may not contain the '..' path or start with '..'.
+ items:
+ description: Maps a string key to a path within
+ a volume.
+ properties:
+ key:
+ description: key is the key to project.
+ type: string
+ mode:
+ description: |-
+ mode is Optional: mode bits used to set permissions on this file.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ If not specified, the volume defaultMode will be used.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
+ format: int32
+ type: integer
+ path:
+ description: |-
+ path is the relative path of the file to map the key to.
+ May not be an absolute path.
+ May not contain the path element '..'.
+ May not start with the string '..'.
+ type: string
+ required:
+ - key
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: optional specify whether the ConfigMap
+ or its keys must be defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ downwardAPI:
+ description: downwardAPI information about the downwardAPI
+ data to project
+ properties:
+ items:
+ description: Items is a list of DownwardAPIVolume
+ file
+ items:
+ description: DownwardAPIVolumeFile represents
+ information to create the file containing
+ the pod field
+ properties:
+ fieldRef:
+ description: 'Required: Selects a field
+ of the pod: only annotations, labels,
+ name, namespace and uid are supported.'
+ properties:
+ apiVersion:
+ description: Version of the schema the
+ FieldPath is written in terms of,
+ defaults to "v1".
+ type: string
+ fieldPath:
+ description: Path of the field to select
+ in the specified API version.
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ mode:
+ description: |-
+ Optional: mode bits used to set permissions on this file, must be an octal value
+ between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ If not specified, the volume defaultMode will be used.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
+ format: int32
+ type: integer
+ path:
+ description: 'Required: Path is the relative
+ path name of the file to be created. Must
+ not be absolute or contain the ''..''
+ path. Must be utf-8 encoded. The first
+ item of the relative path must not start
+ with ''..'''
+ type: string
+ resourceFieldRef:
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, requests.cpu and requests.memory) are currently supported.
+ properties:
+ containerName:
+ description: 'Container name: required
+ for volumes, optional for env vars'
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ description: Specifies the output format
+ of the exposed resources, defaults
+ to "1"
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ description: 'Required: resource to
+ select'
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ required:
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ secret:
+ description: secret information about the secret data
+ to project
+ properties:
+ items:
+ description: |-
+ items if unspecified, each key-value pair in the Data field of the referenced
+ Secret will be projected into the volume as a file whose name is the
+ key and content is the value. If specified, the listed keys will be
+ projected into the specified paths, and unlisted keys will not be
+ present. If a key is specified which is not present in the Secret,
+ the volume setup will error unless it is marked optional. Paths must be
+ relative and may not contain the '..' path or start with '..'.
+ items:
+ description: Maps a string key to a path within
+ a volume.
+ properties:
+ key:
+ description: key is the key to project.
+ type: string
+ mode:
+ description: |-
+ mode is Optional: mode bits used to set permissions on this file.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ If not specified, the volume defaultMode will be used.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
+ format: int32
+ type: integer
+ path:
+ description: |-
+ path is the relative path of the file to map the key to.
+ May not be an absolute path.
+ May not contain the path element '..'.
+ May not start with the string '..'.
+ type: string
+ required:
+ - key
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: optional field specify whether the
+ Secret or its key must be defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ serviceAccountToken:
+ description: serviceAccountToken is information about
+ the serviceAccountToken data to project
+ properties:
+ audience:
+ description: |-
+ audience is the intended audience of the token. A recipient of a token
+ must identify itself with an identifier specified in the audience of the
+ token, and otherwise should reject the token. The audience defaults to the
+ identifier of the apiserver.
+ type: string
+ expirationSeconds:
+ description: |-
+ expirationSeconds is the requested duration of validity of the service
+ account token. As the token approaches expiration, the kubelet volume
+ plugin will proactively rotate the service account token. The kubelet will
+ start trying to rotate the token if the token is older than 80 percent of
+ its time to live or if the token is older than 24 hours.Defaults to 1 hour
+ and must be at least 10 minutes.
+ format: int64
+ type: integer
+ path:
+ description: |-
+ path is the path relative to the mount point of the file to project the
+ token into.
+ type: string
+ required:
+ - path
+ type: object
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ quobyte:
+ description: |-
+ quobyte represents a Quobyte mount on the host that shares a pod's lifetime.
+ Deprecated: Quobyte is deprecated and the in-tree quobyte type is no longer supported.
+ properties:
+ group:
+ description: |-
+ group to map volume access to
+ Default is no group
+ type: string
+ readOnly:
+ description: |-
+ readOnly here will force the Quobyte volume to be mounted with read-only permissions.
+ Defaults to false.
+ type: boolean
+ registry:
+ description: |-
+ registry represents a single or multiple Quobyte Registry services
+ specified as a string as host:port pair (multiple entries are separated with commas)
+ which acts as the central registry for volumes
+ type: string
+ tenant:
+ description: |-
+ tenant owning the given Quobyte volume in the Backend
+ Used with dynamically provisioned Quobyte volumes, value is set by the plugin
+ type: string
+ user:
+ description: |-
+ user to map volume access to
+ Defaults to serivceaccount user
+ type: string
+ volume:
+ description: volume is a string that references an already
+ created Quobyte volume by name.
+ type: string
+ required:
+ - registry
+ - volume
+ type: object
+ rbd:
+ description: |-
+ rbd represents a Rados Block Device mount on the host that shares a pod's lifetime.
+ Deprecated: RBD is deprecated and the in-tree rbd type is no longer supported.
+ More info: https://examples.k8s.io/volumes/rbd/README.md
+ properties:
+ fsType:
+ description: |-
+ fsType is the filesystem type of the volume that you want to mount.
+ Tip: Ensure that the filesystem type is supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#rbd
+ type: string
+ image:
+ description: |-
+ image is the rados image name.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
+ type: string
+ keyring:
+ default: /etc/ceph/keyring
+ description: |-
+ keyring is the path to key ring for RBDUser.
+ Default is /etc/ceph/keyring.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
+ type: string
+ monitors:
+ description: |-
+ monitors is a collection of Ceph monitors.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ pool:
+ default: rbd
+ description: |-
+ pool is the rados pool name.
+ Default is rbd.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
+ type: string
+ readOnly:
+ description: |-
+ readOnly here will force the ReadOnly setting in VolumeMounts.
+ Defaults to false.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
+ type: boolean
+ secretRef:
+ description: |-
+ secretRef is name of the authentication secret for RBDUser. If provided
+ overrides keyring.
+ Default is nil.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ user:
+ default: admin
+ description: |-
+ user is the rados user name.
+ Default is admin.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
+ type: string
+ required:
+ - image
+ - monitors
+ type: object
+ scaleIO:
+ description: |-
+ scaleIO represents a ScaleIO persistent volume attached and mounted on Kubernetes nodes.
+ Deprecated: ScaleIO is deprecated and the in-tree scaleIO type is no longer supported.
+ properties:
+ fsType:
+ default: xfs
+ description: |-
+ fsType is the filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Ex. "ext4", "xfs", "ntfs".
+ Default is "xfs".
+ type: string
+ gateway:
+ description: gateway is the host address of the ScaleIO
+ API Gateway.
+ type: string
+ protectionDomain:
+ description: protectionDomain is the name of the ScaleIO
+ Protection Domain for the configured storage.
+ type: string
+ readOnly:
+ description: |-
+ readOnly Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ type: boolean
+ secretRef:
+ description: |-
+ secretRef references to the secret for ScaleIO user and other
+ sensitive information. If this is not provided, Login operation will fail.
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ sslEnabled:
+ description: sslEnabled Flag enable/disable SSL communication
+ with Gateway, default false
+ type: boolean
+ storageMode:
+ default: ThinProvisioned
+ description: |-
+ storageMode indicates whether the storage for a volume should be ThickProvisioned or ThinProvisioned.
+ Default is ThinProvisioned.
+ type: string
+ storagePool:
+ description: storagePool is the ScaleIO Storage Pool associated
+ with the protection domain.
+ type: string
+ system:
+ description: system is the name of the storage system as
+ configured in ScaleIO.
+ type: string
+ volumeName:
+ description: |-
+ volumeName is the name of a volume already created in the ScaleIO system
+ that is associated with this volume source.
+ type: string
+ required:
+ - gateway
+ - secretRef
+ - system
+ type: object
+ secret:
+ description: |-
+ secret represents a secret that should populate this volume.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#secret
+ properties:
+ defaultMode:
+ description: |-
+ defaultMode is Optional: mode bits used to set permissions on created files by default.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values
+ for mode bits. Defaults to 0644.
+ Directories within the path are not affected by this setting.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
+ format: int32
+ type: integer
+ items:
+ description: |-
+ items If unspecified, each key-value pair in the Data field of the referenced
+ Secret will be projected into the volume as a file whose name is the
+ key and content is the value. If specified, the listed keys will be
+ projected into the specified paths, and unlisted keys will not be
+ present. If a key is specified which is not present in the Secret,
+ the volume setup will error unless it is marked optional. Paths must be
+ relative and may not contain the '..' path or start with '..'.
+ items:
+ description: Maps a string key to a path within a volume.
+ properties:
+ key:
+ description: key is the key to project.
+ type: string
+ mode:
+ description: |-
+ mode is Optional: mode bits used to set permissions on this file.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ If not specified, the volume defaultMode will be used.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
+ format: int32
+ type: integer
+ path:
+ description: |-
+ path is the relative path of the file to map the key to.
+ May not be an absolute path.
+ May not contain the path element '..'.
+ May not start with the string '..'.
+ type: string
+ required:
+ - key
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ optional:
+ description: optional field specify whether the Secret or
+ its keys must be defined
+ type: boolean
+ secretName:
+ description: |-
+ secretName is the name of the secret in the pod's namespace to use.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#secret
+ type: string
+ type: object
+ storageos:
+ description: |-
+ storageOS represents a StorageOS volume attached and mounted on Kubernetes nodes.
+ Deprecated: StorageOS is deprecated and the in-tree storageos type is no longer supported.
+ properties:
+ fsType:
+ description: |-
+ fsType is the filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ type: string
+ readOnly:
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ type: boolean
+ secretRef:
+ description: |-
+ secretRef specifies the secret to use for obtaining the StorageOS API
+ credentials. If not specified, default values will be attempted.
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ volumeName:
+ description: |-
+ volumeName is the human-readable name of the StorageOS volume. Volume
+ names are only unique within a namespace.
+ type: string
+ volumeNamespace:
+ description: |-
+ volumeNamespace specifies the scope of the volume within StorageOS. If no
+ namespace is specified then the Pod's namespace will be used. This allows the
+ Kubernetes name scoping to be mirrored within StorageOS for tighter integration.
+ Set VolumeName to any name to override the default behaviour.
+ Set to "default" if you are not using namespaces within StorageOS.
+ Namespaces that do not pre-exist within StorageOS will be created.
+ type: string
+ type: object
+ vsphereVolume:
+ description: |-
+ vsphereVolume represents a vSphere volume attached and mounted on kubelets host machine.
+ Deprecated: VsphereVolume is deprecated. All operations for the in-tree vsphereVolume type
+ are redirected to the csi.vsphere.vmware.com CSI driver.
+ properties:
+ fsType:
+ description: |-
+ fsType is filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ type: string
+ storagePolicyID:
+ description: storagePolicyID is the storage Policy Based
+ Management (SPBM) profile ID associated with the StoragePolicyName.
+ type: string
+ storagePolicyName:
+ description: storagePolicyName is the storage Policy Based
+ Management (SPBM) profile name.
+ type: string
+ volumePath:
+ description: volumePath is the path that identifies vSphere
+ volume vmdk
+ type: string
+ required:
+ - volumePath
+ type: object
+ required:
+ - name
+ type: object
+ type: array
+ required:
+ - driver
+ - executor
+ - mainApplicationFile
+ - sparkVersion
+ - type
+ type: object
+ status:
+ description: SparkApplicationStatus defines the observed state of SparkApplication
+ properties:
+ applicationState:
+ description: AppState tells the overall application state.
+ properties:
+ errorMessage:
+ type: string
+ state:
+ description: ApplicationStateType represents the type of the current
+ state of an application.
+ type: string
+ required:
+ - state
+ type: object
+ driverInfo:
+ description: DriverInfo has information about the driver.
+ properties:
+ podName:
+ type: string
+ webUIAddress:
+ description: UI Details for the UI created via ClusterIP service
+ accessible from within the cluster.
+ type: string
+ webUIIngressAddress:
+ type: string
+ webUIIngressName:
+ description: Ingress Details if an ingress for the UI was created.
+ type: string
+ webUIPort:
+ format: int32
+ type: integer
+ webUIServiceName:
+ type: string
+ type: object
+ executionAttempts:
+ description: |-
+ ExecutionAttempts is the total number of attempts to run a submitted application to completion.
+ Incremented upon each attempted run of the application and reset upon invalidation.
+ format: int32
+ type: integer
+ executorState:
+ additionalProperties:
+ description: ExecutorState tells the current state of an executor.
+ type: string
+ description: ExecutorState records the state of executors by executor
+ Pod names.
+ type: object
+ lastSubmissionAttemptTime:
+ description: LastSubmissionAttemptTime is the time for the last application
+ submission attempt.
+ format: date-time
+ nullable: true
+ type: string
+ sparkApplicationId:
+ description: SparkApplicationID is set by the spark-distribution(via
+ spark.app.id config) on the driver and executor pods
+ type: string
+ submissionAttempts:
+ description: |-
+ SubmissionAttempts is the total number of attempts to submit an application to run.
+ Incremented upon each attempted submission of the application and reset upon invalidation and rerun.
+ format: int32
+ type: integer
+ submissionID:
+ description: SubmissionID is a unique ID of the current submission
+ of the application.
+ type: string
+ terminationTime:
+ description: CompletionTime is the time when the application runs
+ to completion if it does.
+ format: date-time
+ nullable: true
+ type: string
+ required:
+ - driverInfo
+ type: object
+ required:
+ - metadata
+ - spec
+ type: object
+ served: true
+ storage: true
+ subresources:
+ status: {}
+
+---
+# Source: spark-operator/templates/controller/serviceaccount.yaml
+apiVersion: v1
+kind: ServiceAccount
+automountServiceAccountToken: true
+metadata:
+ name: spark-operator-controller
+ namespace: kubeflow
+ labels:
+ helm.sh/chart: spark-operator-2.1.1
+ app.kubernetes.io/name: spark-operator
+ app.kubernetes.io/instance: spark-operator
+ app.kubernetes.io/version: "2.1.1"
+ app.kubernetes.io/managed-by: Helm
+ app.kubernetes.io/component: controller
+---
+# Source: spark-operator/templates/webhook/serviceaccount.yaml
+apiVersion: v1
+kind: ServiceAccount
+automountServiceAccountToken: true
+metadata:
+ name: spark-operator-webhook
+ namespace: kubeflow
+ labels:
+ helm.sh/chart: spark-operator-2.1.1
+ app.kubernetes.io/name: spark-operator
+ app.kubernetes.io/instance: spark-operator
+ app.kubernetes.io/version: "2.1.1"
+ app.kubernetes.io/managed-by: Helm
+ app.kubernetes.io/component: webhook
+---
+# Source: spark-operator/templates/controller/rbac.yaml
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
+metadata:
+ name: spark-operator-controller
+ namespace: kubeflow
+ labels:
+ helm.sh/chart: spark-operator-2.1.1
+ app.kubernetes.io/name: spark-operator
+ app.kubernetes.io/instance: spark-operator
+ app.kubernetes.io/version: "2.1.1"
+ app.kubernetes.io/managed-by: Helm
+ app.kubernetes.io/component: controller
+rules:
+- apiGroups:
+ - ""
+ resources:
+ - nodes
+ verbs:
+ - get
+- apiGroups:
+ - apiextensions.k8s.io
+ resources:
+ - customresourcedefinitions
+ verbs:
+ - get
+- apiGroups:
+ - ""
+ resources:
+ - pods
+ verbs:
+ - get
+ - list
+ - watch
+ - create
+ - update
+ - patch
+ - delete
+ - deletecollection
+- apiGroups:
+ - ""
+ resources:
+ - configmaps
+ verbs:
+ - get
+ - list
+ - watch
+ - create
+ - update
+ - patch
+ - delete
+- apiGroups:
+ - ""
+ resources:
+ - persistentvolumeclaims
+ verbs:
+ - get
+ - list
+ - watch
+ - create
+ - update
+ - patch
+ - delete
+- apiGroups:
+ - ""
+ resources:
+ - services
+ verbs:
+ - get
+ - list
+ - watch
+ - create
+ - update
+ - patch
+ - delete
+- apiGroups:
+ - ""
+ resources:
+ - events
+ verbs:
+ - create
+ - update
+ - patch
+- apiGroups:
+ - extensions
+ - networking.k8s.io
+ resources:
+ - ingresses
+ verbs:
+ - get
+ - create
+ - delete
+ - list
+ - watch
+- apiGroups:
+ - sparkoperator.k8s.io
+ resources:
+ - sparkapplications
+ - scheduledsparkapplications
+ verbs:
+ - get
+ - list
+ - watch
+ - create
+ - update
+ - patch
+ - delete
+- apiGroups:
+ - sparkoperator.k8s.io
+ resources:
+ - sparkapplications/status
+ - sparkapplications/finalizers
+ - scheduledsparkapplications/status
+ - scheduledsparkapplications/finalizers
+ verbs:
+ - get
+ - update
+ - patch
+---
+# Source: spark-operator/templates/webhook/rbac.yaml
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
+metadata:
+ name: spark-operator-webhook
+ namespace: kubeflow
+ labels:
+ helm.sh/chart: spark-operator-2.1.1
+ app.kubernetes.io/name: spark-operator
+ app.kubernetes.io/instance: spark-operator
+ app.kubernetes.io/version: "2.1.1"
+ app.kubernetes.io/managed-by: Helm
+ app.kubernetes.io/component: webhook
+rules:
+- apiGroups:
+ - ""
+ resources:
+ - events
+ verbs:
+ - create
+ - update
+ - patch
+- apiGroups:
+ - admissionregistration.k8s.io
+ resources:
+ - mutatingwebhookconfigurations
+ - validatingwebhookconfigurations
+ verbs:
+ - list
+ - watch
+- apiGroups:
+ - admissionregistration.k8s.io
+ resources:
+ - mutatingwebhookconfigurations
+ - validatingwebhookconfigurations
+ resourceNames:
+ - spark-operator-webhook
+ verbs:
+ - get
+ - update
+- apiGroups:
+ - ""
+ resources:
+ - pods
+ verbs:
+ - get
+ - list
+ - watch
+- apiGroups:
+ - ""
+ resources:
+ - resourcequotas
+ verbs:
+ - get
+ - list
+ - watch
+- apiGroups:
+ - sparkoperator.k8s.io
+ resources:
+ - sparkapplications
+ - sparkapplications/status
+ - sparkapplications/finalizers
+ - scheduledsparkapplications
+ - scheduledsparkapplications/status
+ - scheduledsparkapplications/finalizers
+ verbs:
+ - get
+ - list
+ - watch
+ - create
+ - update
+ - patch
+ - delete
+---
+# Source: spark-operator/templates/controller/rbac.yaml
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRoleBinding
+metadata:
+ name: spark-operator-controller
+ namespace: kubeflow
+ labels:
+ helm.sh/chart: spark-operator-2.1.1
+ app.kubernetes.io/name: spark-operator
+ app.kubernetes.io/instance: spark-operator
+ app.kubernetes.io/version: "2.1.1"
+ app.kubernetes.io/managed-by: Helm
+ app.kubernetes.io/component: controller
+subjects:
+- kind: ServiceAccount
+ name: spark-operator-controller
+ namespace: kubeflow
+roleRef:
+ apiGroup: rbac.authorization.k8s.io
+ kind: ClusterRole
+ name: spark-operator-controller
+---
+# Source: spark-operator/templates/webhook/rbac.yaml
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRoleBinding
+metadata:
+ name: spark-operator-webhook
+ namespace: kubeflow
+ labels:
+ helm.sh/chart: spark-operator-2.1.1
+ app.kubernetes.io/name: spark-operator
+ app.kubernetes.io/instance: spark-operator
+ app.kubernetes.io/version: "2.1.1"
+ app.kubernetes.io/managed-by: Helm
+ app.kubernetes.io/component: webhook
+subjects:
+- kind: ServiceAccount
+ name: spark-operator-webhook
+ namespace: kubeflow
+roleRef:
+ apiGroup: rbac.authorization.k8s.io
+ kind: ClusterRole
+ name: spark-operator-webhook
+---
+# Source: spark-operator/templates/controller/rbac.yaml
+apiVersion: rbac.authorization.k8s.io/v1
+kind: Role
+metadata:
+ name: spark-operator-controller
+ namespace: kubeflow
+ labels:
+ helm.sh/chart: spark-operator-2.1.1
+ app.kubernetes.io/name: spark-operator
+ app.kubernetes.io/instance: spark-operator
+ app.kubernetes.io/version: "2.1.1"
+ app.kubernetes.io/managed-by: Helm
+ app.kubernetes.io/component: controller
+rules:
+- apiGroups:
+ - coordination.k8s.io
+ resources:
+ - leases
+ verbs:
+ - create
+- apiGroups:
+ - coordination.k8s.io
+ resources:
+ - leases
+ resourceNames:
+ - spark-operator-controller-lock
+ verbs:
+ - get
+ - update
+---
+# Source: spark-operator/templates/webhook/rbac.yaml
+apiVersion: rbac.authorization.k8s.io/v1
+kind: Role
+metadata:
+ name: spark-operator-webhook
+ namespace: kubeflow
+ labels:
+ helm.sh/chart: spark-operator-2.1.1
+ app.kubernetes.io/name: spark-operator
+ app.kubernetes.io/instance: spark-operator
+ app.kubernetes.io/version: "2.1.1"
+ app.kubernetes.io/managed-by: Helm
+ app.kubernetes.io/component: webhook
+rules:
+- apiGroups:
+ - ""
+ resources:
+ - secrets
+ verbs:
+ - create
+- apiGroups:
+ - ""
+ resources:
+ - secrets
+ resourceNames:
+ - spark-operator-webhook-certs
+ verbs:
+ - get
+ - update
+- apiGroups:
+ - coordination.k8s.io
+ resources:
+ - leases
+ verbs:
+ - create
+- apiGroups:
+ - coordination.k8s.io
+ resources:
+ - leases
+ resourceNames:
+ - spark-operator-webhook-lock
+ verbs:
+ - get
+ - update
+---
+# Source: spark-operator/templates/controller/rbac.yaml
+apiVersion: rbac.authorization.k8s.io/v1
+kind: RoleBinding
+metadata:
+ name: spark-operator-controller
+ namespace: kubeflow
+ labels:
+ helm.sh/chart: spark-operator-2.1.1
+ app.kubernetes.io/name: spark-operator
+ app.kubernetes.io/instance: spark-operator
+ app.kubernetes.io/version: "2.1.1"
+ app.kubernetes.io/managed-by: Helm
+ app.kubernetes.io/component: controller
+subjects:
+- kind: ServiceAccount
+ name: spark-operator-controller
+ namespace: kubeflow
+roleRef:
+ apiGroup: rbac.authorization.k8s.io
+ kind: Role
+ name: spark-operator-controller
+---
+# Source: spark-operator/templates/webhook/rbac.yaml
+apiVersion: rbac.authorization.k8s.io/v1
+kind: RoleBinding
+metadata:
+ name: spark-operator-webhook
+ namespace: kubeflow
+ labels:
+ helm.sh/chart: spark-operator-2.1.1
+ app.kubernetes.io/name: spark-operator
+ app.kubernetes.io/instance: spark-operator
+ app.kubernetes.io/version: "2.1.1"
+ app.kubernetes.io/managed-by: Helm
+ app.kubernetes.io/component: webhook
+subjects:
+- kind: ServiceAccount
+ name: spark-operator-webhook
+ namespace: kubeflow
+roleRef:
+ apiGroup: rbac.authorization.k8s.io
+ kind: Role
+ name: spark-operator-webhook
+---
+# Source: spark-operator/templates/webhook/service.yaml
+apiVersion: v1
+kind: Service
+metadata:
+ name: spark-operator-webhook-svc
+ labels:
+ helm.sh/chart: spark-operator-2.1.1
+ app.kubernetes.io/name: spark-operator
+ app.kubernetes.io/instance: spark-operator
+ app.kubernetes.io/version: "2.1.1"
+ app.kubernetes.io/managed-by: Helm
+ app.kubernetes.io/component: webhook
+spec:
+ selector:
+ app.kubernetes.io/name: spark-operator
+ app.kubernetes.io/instance: spark-operator
+ app.kubernetes.io/component: webhook
+ ports:
+ - port: 9443
+ targetPort: "webhook"
+ name: webhook
+---
+# Source: spark-operator/templates/controller/deployment.yaml
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+ name: spark-operator-controller
+ labels:
+ helm.sh/chart: spark-operator-2.1.1
+ app.kubernetes.io/name: spark-operator
+ app.kubernetes.io/instance: spark-operator
+ app.kubernetes.io/version: "2.1.1"
+ app.kubernetes.io/managed-by: Helm
+ app.kubernetes.io/component: controller
+spec:
+ replicas: 1
+ selector:
+ matchLabels:
+ app.kubernetes.io/name: spark-operator
+ app.kubernetes.io/instance: spark-operator
+ app.kubernetes.io/component: controller
+ template:
+ metadata:
+ labels:
+ app.kubernetes.io/name: spark-operator
+ app.kubernetes.io/instance: spark-operator
+ app.kubernetes.io/component: controller
+ annotations:
+ prometheus.io/scrape: "true"
+ prometheus.io/port: "8080"
+ prometheus.io/path: /metrics
+ spec:
+ containers:
+ - name: spark-operator-controller
+ image: docker.io/kubeflow/spark-operator:2.1.1
+ imagePullPolicy: IfNotPresent
+ args:
+ - controller
+ - start
+ - --zap-log-level=info
+ - --namespaces=""
+ - --controller-threads=10
+ - --enable-ui-service=true
+ - --enable-metrics=true
+ - --metrics-bind-address=:8080
+ - --metrics-endpoint=/metrics
+ - --metrics-prefix=
+ - --metrics-labels=app_type
+ - --metrics-job-start-latency-buckets=30,60,90,120,150,180,210,240,270,300
+
+ - --leader-election=true
+ - --leader-election-lock-name=spark-operator-controller-lock
+ - --leader-election-lock-namespace=kubeflow
+ - --workqueue-ratelimiter-bucket-qps=50
+ - --workqueue-ratelimiter-bucket-size=500
+ - --workqueue-ratelimiter-max-delay=6h
+ - --driver-pod-creation-grace-period=10s
+ - --max-tracked-executor-per-app=1000
+ ports:
+ - name: "metrics"
+ containerPort: 8080
+ volumeMounts:
+ - mountPath: /tmp
+ name: tmp
+ readOnly: false
+ livenessProbe:
+ httpGet:
+ port: 8081
+ scheme: HTTP
+ path: /healthz
+ readinessProbe:
+ httpGet:
+ port: 8081
+ scheme: HTTP
+ path: /readyz
+ securityContext:
+ allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ privileged: false
+ readOnlyRootFilesystem: true
+ runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
+ volumes:
+ - emptyDir:
+ sizeLimit: 1Gi
+ name: tmp
+ serviceAccountName: spark-operator-controller
+ automountServiceAccountToken: true
+ securityContext:
+ fsGroup: 185
+---
+# Source: spark-operator/templates/webhook/deployment.yaml
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+ name: spark-operator-webhook
+ labels:
+ helm.sh/chart: spark-operator-2.1.1
+ app.kubernetes.io/name: spark-operator
+ app.kubernetes.io/instance: spark-operator
+ app.kubernetes.io/version: "2.1.1"
+ app.kubernetes.io/managed-by: Helm
+ app.kubernetes.io/component: webhook
+spec:
+ replicas: 1
+ selector:
+ matchLabels:
+ app.kubernetes.io/name: spark-operator
+ app.kubernetes.io/instance: spark-operator
+ app.kubernetes.io/component: webhook
+ template:
+ metadata:
+ labels:
+ app.kubernetes.io/name: spark-operator
+ app.kubernetes.io/instance: spark-operator
+ app.kubernetes.io/component: webhook
+ spec:
+ containers:
+ - name: spark-operator-webhook
+ image: docker.io/kubeflow/spark-operator:2.1.1
+ imagePullPolicy: IfNotPresent
+ args:
+ - webhook
+ - start
+ - --zap-log-level=info
+ - --namespaces=""
+ - --webhook-secret-name=spark-operator-webhook-certs
+ - --webhook-secret-namespace=kubeflow
+ - --webhook-svc-name=spark-operator-webhook-svc
+ - --webhook-svc-namespace=kubeflow
+ - --webhook-port=9443
+ - --mutating-webhook-name=spark-operator-webhook
+ - --validating-webhook-name=spark-operator-webhook
+ - --enable-metrics=true
+ - --metrics-bind-address=:8080
+ - --metrics-endpoint=/metrics
+ - --metrics-prefix=
+ - --metrics-labels=app_type
+
+ - --leader-election=true
+ - --leader-election-lock-name=spark-operator-webhook-lock
+ - --leader-election-lock-namespace=kubeflow
+ ports:
+ - name: "webhook"
+ containerPort: 9443
+ - name: "metrics"
+ containerPort: 8080
+ volumeMounts:
+ - mountPath: /etc/k8s-webhook-server/serving-certs
+ name: serving-certs
+ readOnly: false
+ subPath: serving-certs
+ livenessProbe:
+ httpGet:
+ port: 8081
+ scheme: HTTP
+ path: /healthz
+ readinessProbe:
+ httpGet:
+ port: 8081
+ scheme: HTTP
+ path: /readyz
+ securityContext:
+ allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ privileged: false
+ readOnlyRootFilesystem: true
+ runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
+ volumes:
+ - emptyDir:
+ sizeLimit: 500Mi
+ name: serving-certs
+ serviceAccountName: spark-operator-webhook
+ automountServiceAccountToken: true
+ securityContext:
+ fsGroup: 185
+---
+# Source: spark-operator/templates/webhook/mutatingwebhookconfiguration.yaml
+apiVersion: admissionregistration.k8s.io/v1
+kind: MutatingWebhookConfiguration
+metadata:
+ name: spark-operator-webhook
+ labels:
+ helm.sh/chart: spark-operator-2.1.1
+ app.kubernetes.io/name: spark-operator
+ app.kubernetes.io/instance: spark-operator
+ app.kubernetes.io/version: "2.1.1"
+ app.kubernetes.io/managed-by: Helm
+ app.kubernetes.io/component: webhook
+webhooks:
+- name: mutate--v1-pod.sparkoperator.k8s.io
+ admissionReviewVersions: ["v1"]
+ clientConfig:
+ service:
+ name: spark-operator-webhook-svc
+ namespace: kubeflow
+ port: 9443
+ path: /mutate--v1-pod
+ sideEffects: NoneOnDryRun
+ failurePolicy: Fail
+ objectSelector:
+ matchLabels:
+ sparkoperator.k8s.io/launched-by-spark-operator: "true"
+ rules:
+ - apiGroups: [""]
+ apiVersions: ["v1"]
+ resources: ["pods"]
+ operations: ["CREATE"]
+ timeoutSeconds: 10
+- name: mutate-sparkoperator-k8s-io-v1beta2-sparkapplication.sparkoperator.k8s.io
+ admissionReviewVersions: ["v1"]
+ clientConfig:
+ service:
+ name: spark-operator-webhook-svc
+ namespace: kubeflow
+ port: 9443
+ path: /mutate-sparkoperator-k8s-io-v1beta2-sparkapplication
+ sideEffects: NoneOnDryRun
+ failurePolicy: Fail
+ rules:
+ - apiGroups: ["sparkoperator.k8s.io"]
+ apiVersions: ["v1beta2"]
+ resources: ["sparkapplications"]
+ operations: ["CREATE", "UPDATE"]
+ timeoutSeconds: 10
+- name: mutate-sparkoperator-k8s-io-v1beta2-scheduledsparkapplication.sparkoperator.k8s.io
+ admissionReviewVersions: ["v1"]
+ clientConfig:
+ service:
+ name: spark-operator-webhook-svc
+ namespace: kubeflow
+ port: 9443
+ path: /mutate-sparkoperator-k8s-io-v1beta2-scheduledsparkapplication
+ sideEffects: NoneOnDryRun
+ failurePolicy: Fail
+ rules:
+ - apiGroups: ["sparkoperator.k8s.io"]
+ apiVersions: ["v1beta2"]
+ resources: ["scheduledsparkapplications"]
+ operations: ["CREATE", "UPDATE"]
+ timeoutSeconds: 10
+---
+# Source: spark-operator/templates/webhook/validatingwebhookconfiguration.yaml
+apiVersion: admissionregistration.k8s.io/v1
+kind: ValidatingWebhookConfiguration
+metadata:
+ name: spark-operator-webhook
+ labels:
+ helm.sh/chart: spark-operator-2.1.1
+ app.kubernetes.io/name: spark-operator
+ app.kubernetes.io/instance: spark-operator
+ app.kubernetes.io/version: "2.1.1"
+ app.kubernetes.io/managed-by: Helm
+ app.kubernetes.io/component: webhook
+webhooks:
+- name: validate-sparkoperator-k8s-io-v1beta2-sparkapplication.sparkoperator.k8s.io
+ admissionReviewVersions: ["v1"]
+ clientConfig:
+ service:
+ name: spark-operator-webhook-svc
+ namespace: kubeflow
+ port: 9443
+ path: /validate-sparkoperator-k8s-io-v1beta2-sparkapplication
+ sideEffects: NoneOnDryRun
+ failurePolicy: Fail
+ rules:
+ - apiGroups: ["sparkoperator.k8s.io"]
+ apiVersions: ["v1beta2"]
+ resources: ["sparkapplications"]
+ operations: ["CREATE", "UPDATE"]
+ timeoutSeconds: 10
+- name: validate-sparkoperator-k8s-io-v1beta2-scheduledsparkapplication.sparkoperator.k8s.io
+ admissionReviewVersions: ["v1"]
+ clientConfig:
+ service:
+ name: spark-operator-webhook-svc
+ namespace: kubeflow
+ port: 9443
+ path: /validate-sparkoperator-k8s-io-v1beta2-scheduledsparkapplication
+ sideEffects: NoneOnDryRun
+ failurePolicy: Fail
+ rules:
+ - apiGroups: ["sparkoperator.k8s.io"]
+ apiVersions: ["v1beta2"]
+ resources: ["scheduledsparkapplications"]
+ operations: ["CREATE", "UPDATE"]
+ timeoutSeconds: 10
diff --git a/charts/kubeflow/contrib/ray/kuberay-operator/overlays/kubeflow/kustomization.yaml b/charts/kubeflow/apps/spark/spark-operator/overlays/kubeflow/kustomization.yaml
similarity index 100%
rename from charts/kubeflow/contrib/ray/kuberay-operator/overlays/kubeflow/kustomization.yaml
rename to charts/kubeflow/apps/spark/spark-operator/overlays/kubeflow/kustomization.yaml
diff --git a/charts/kubeflow/apps/spark/spark-operator/overlays/standalone/kustomization.yaml b/charts/kubeflow/apps/spark/spark-operator/overlays/standalone/kustomization.yaml
new file mode 100644
index 0000000..9637061
--- /dev/null
+++ b/charts/kubeflow/apps/spark/spark-operator/overlays/standalone/kustomization.yaml
@@ -0,0 +1,3 @@
+namespace: kubeflow
+resources:
+- ../../base
\ No newline at end of file
diff --git a/charts/kubeflow/apps/spark/sparkapplication_example.yaml b/charts/kubeflow/apps/spark/sparkapplication_example.yaml
new file mode 100644
index 0000000..a574dab
--- /dev/null
+++ b/charts/kubeflow/apps/spark/sparkapplication_example.yaml
@@ -0,0 +1,46 @@
+apiVersion: sparkoperator.k8s.io/v1beta2
+kind: SparkApplication
+metadata:
+ name: spark-pi-python
+ labels:
+ sidecar.istio.io/inject: "false"
+spec:
+ type: Python
+ pythonVersion: "3"
+ mode: cluster
+ image: spark:3.5.2
+ imagePullPolicy: IfNotPresent
+ mainApplicationFile: local:///opt/spark/examples/src/main/python/pi.py
+ sparkVersion: 3.5.2
+ driver:
+ cores: 1
+ memory: 512m
+ serviceAccount: default-editor
+ labels:
+ sidecar.istio.io/inject: "false"
+ securityContext:
+ capabilities:
+ drop:
+ - ALL
+ runAsUser: 185
+ runAsGroup: 0
+ runAsNonRoot: true
+ allowPrivilegeEscalation: false
+ seccompProfile:
+ type: RuntimeDefault
+ executor:
+ instances: 1
+ cores: 1
+ memory: 512m
+ labels:
+ sidecar.istio.io.inject: "false"
+ securityContext:
+ capabilities:
+ drop:
+ - ALL
+ runAsUser: 185
+ runAsGroup: 0
+ runAsNonRoot: true
+ allowPrivilegeEscalation: false
+ seccompProfile:
+ type: RuntimeDefault
diff --git a/charts/kubeflow/apps/tensorboard/tensorboard-controller/upstream/base/kustomization.yaml b/charts/kubeflow/apps/tensorboard/tensorboard-controller/upstream/base/kustomization.yaml
index 0a651ad..f2fbc13 100644
--- a/charts/kubeflow/apps/tensorboard/tensorboard-controller/upstream/base/kustomization.yaml
+++ b/charts/kubeflow/apps/tensorboard/tensorboard-controller/upstream/base/kustomization.yaml
@@ -12,6 +12,6 @@ configMapGenerator:
patchesStrategicMerge:
- patches/add_controller_config.yaml
images:
-- name: docker.io/kubeflownotebookswg/tensorboard-controller
- newName: docker.io/kubeflownotebookswg/tensorboard-controller
- newTag: v1.9.0
+- name: ghcr.io/kubeflow/kubeflow/tensorboard-controller
+ newName: ghcr.io/kubeflow/kubeflow/tensorboard-controller
+ newTag: v1.10.0
diff --git a/charts/kubeflow/apps/tensorboard/tensorboard-controller/upstream/default/manager_auth_proxy_patch.yaml b/charts/kubeflow/apps/tensorboard/tensorboard-controller/upstream/default/manager_auth_proxy_patch.yaml
index 10da88c..bbfa9dd 100644
--- a/charts/kubeflow/apps/tensorboard/tensorboard-controller/upstream/default/manager_auth_proxy_patch.yaml
+++ b/charts/kubeflow/apps/tensorboard/tensorboard-controller/upstream/default/manager_auth_proxy_patch.yaml
@@ -9,7 +9,7 @@ spec:
spec:
containers:
- name: kube-rbac-proxy
- image: gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
+ image: quay.io/brancz/kube-rbac-proxy:v0.8.0
args:
- "--secure-listen-address=0.0.0.0:8443"
- "--upstream=http://127.0.0.1:8080/"
diff --git a/charts/kubeflow/apps/tensorboard/tensorboard-controller/upstream/manager/manager.yaml b/charts/kubeflow/apps/tensorboard/tensorboard-controller/upstream/manager/manager.yaml
index 7630a5b..b4c1808 100644
--- a/charts/kubeflow/apps/tensorboard/tensorboard-controller/upstream/manager/manager.yaml
+++ b/charts/kubeflow/apps/tensorboard/tensorboard-controller/upstream/manager/manager.yaml
@@ -29,7 +29,7 @@ spec:
containers:
- command:
- /manager
- image: docker.io/kubeflownotebookswg/tensorboard-controller
+ image: ghcr.io/kubeflow/kubeflow/tensorboard-controller
name: manager
securityContext:
allowPrivilegeEscalation: false
diff --git a/charts/kubeflow/apps/tensorboard/tensorboards-web-app/upstream/base/deployment.yaml b/charts/kubeflow/apps/tensorboard/tensorboards-web-app/upstream/base/deployment.yaml
index 5676e61..d7613b8 100644
--- a/charts/kubeflow/apps/tensorboard/tensorboards-web-app/upstream/base/deployment.yaml
+++ b/charts/kubeflow/apps/tensorboard/tensorboards-web-app/upstream/base/deployment.yaml
@@ -8,7 +8,7 @@ spec:
spec:
containers:
- name: tensorboards-web-app
- image: docker.io/kubeflownotebookswg/tensorboards-web-app
+ image: ghcr.io/kubeflow/kubeflow/tensorboards-web-app
ports:
- containerPort: 5000
env:
@@ -20,4 +20,6 @@ spec:
value: $(TWA_USERID_PREFIX)
- name: APP_SECURE_COOKIES
value: $(TWA_APP_SECURE_COOKIES)
+ - name: METRICS
+ value: $(TWA_APP_ENABLE_METRICS)
serviceAccountName: service-account
diff --git a/charts/kubeflow/apps/tensorboard/tensorboards-web-app/upstream/base/kustomization.yaml b/charts/kubeflow/apps/tensorboard/tensorboards-web-app/upstream/base/kustomization.yaml
index 366638b..702e76b 100644
--- a/charts/kubeflow/apps/tensorboard/tensorboards-web-app/upstream/base/kustomization.yaml
+++ b/charts/kubeflow/apps/tensorboard/tensorboards-web-app/upstream/base/kustomization.yaml
@@ -12,9 +12,9 @@ commonLabels:
app: tensorboards-web-app
kustomize.component: tensorboards-web-app
images:
-- name: docker.io/kubeflownotebookswg/tensorboards-web-app
- newName: docker.io/kubeflownotebookswg/tensorboards-web-app
- newTag: v1.9.0
+- name: ghcr.io/kubeflow/kubeflow/tensorboards-web-app
+ newName: ghcr.io/kubeflow/kubeflow/tensorboards-web-app
+ newTag: v1.10.0
# We need the name to be unique without the suffix because the original name is what
# gets used with patches
configMapGenerator:
@@ -64,3 +64,10 @@ vars:
apiVersion: v1
kind: ConfigMap
name: parameters
+- name: TWA_APP_ENABLE_METRICS
+ fieldref:
+ fieldPath: data.TWA_APP_ENABLE_METRICS
+ objref:
+ apiVersion: v1
+ kind: ConfigMap
+ name: parameters
diff --git a/charts/kubeflow/apps/tensorboard/tensorboards-web-app/upstream/base/params.env b/charts/kubeflow/apps/tensorboard/tensorboards-web-app/upstream/base/params.env
index d85c165..0944425 100644
--- a/charts/kubeflow/apps/tensorboard/tensorboards-web-app/upstream/base/params.env
+++ b/charts/kubeflow/apps/tensorboard/tensorboards-web-app/upstream/base/params.env
@@ -3,3 +3,4 @@ TWA_USERID_HEADER=kubeflow-userid
TWA_USERID_PREFIX=
TWA_PREFIX=/tensorboards
TWA_APP_SECURE_COOKIES=true
+TWA_APP_ENABLE_METRICS=1
diff --git a/charts/kubeflow/apps/training-operator/upstream/base/crds/kubeflow.org_mxjobs.yaml b/charts/kubeflow/apps/training-operator/upstream/base/crds/kubeflow.org_jaxjobs.yaml
similarity index 93%
rename from charts/kubeflow/apps/training-operator/upstream/base/crds/kubeflow.org_mxjobs.yaml
rename to charts/kubeflow/apps/training-operator/upstream/base/crds/kubeflow.org_jaxjobs.yaml
index 470f4a8..af56195 100644
--- a/charts/kubeflow/apps/training-operator/upstream/base/crds/kubeflow.org_mxjobs.yaml
+++ b/charts/kubeflow/apps/training-operator/upstream/base/crds/kubeflow.org_jaxjobs.yaml
@@ -3,15 +3,15 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
- controller-gen.kubebuilder.io/version: v0.14.0
- name: mxjobs.kubeflow.org
+ controller-gen.kubebuilder.io/version: v0.16.5
+ name: jaxjobs.kubeflow.org
spec:
group: kubeflow.org
names:
- kind: MXJob
- listKind: MXJobList
- plural: mxjobs
- singular: mxjob
+ kind: JAXJob
+ listKind: JAXJobList
+ plural: jaxjobs
+ singular: jaxjob
scope: Namespaced
versions:
- additionalPrinterColumns:
@@ -24,7 +24,7 @@ spec:
name: v1
schema:
openAPIV3Schema:
- description: MXJob is the Schema for the mxjobs API
+ description: JAXJob Represents a JAXJob resource.
properties:
apiVersion:
description: |-
@@ -44,14 +44,9 @@ spec:
metadata:
type: object
spec:
- description: MXJobSpec defines the desired state of MXJob
+ description: Specification of the desired state of the JAXJob.
properties:
- jobMode:
- description: |-
- JobMode specify the kind of MXjob to do. Different mode may have
- different MXReplicaSpecs request
- type: string
- mxReplicaSpecs:
+ jaxReplicaSpecs:
additionalProperties:
description: ReplicaSpec is a description of the replica
properties:
@@ -158,11 +153,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchFields:
description: A list of node selector
requirements by node's fields.
@@ -190,11 +187,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
x-kubernetes-map-type: atomic
weight:
@@ -208,6 +207,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
description: |-
If the affinity requirements specified by this field are not met at
@@ -252,11 +252,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchFields:
description: A list of node selector
requirements by node's fields.
@@ -284,14 +286,17 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
x-kubernetes-map-type: atomic
type: array
+ x-kubernetes-list-type: atomic
required:
- nodeSelectorTerms
type: object
@@ -354,11 +359,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -373,7 +380,7 @@ spec:
description: |-
MatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
- incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
to select the group of existing pods which pods will be taken into consideration
for the incoming pod's pod (anti) affinity.
items:
@@ -384,7 +391,7 @@ spec:
description: |-
MismatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
- incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
to select the group of existing pods which pods will be taken into consideration
for the incoming pod's pod (anti) affinity.
items:
@@ -428,11 +435,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -452,6 +461,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
description: |-
This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
@@ -474,6 +484,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
description: |-
If the affinity requirements specified by this field are not met at
@@ -523,11 +534,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -542,7 +555,7 @@ spec:
description: |-
MatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
- incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
to select the group of existing pods which pods will be taken into consideration
for the incoming pod's pod (anti) affinity.
items:
@@ -553,7 +566,7 @@ spec:
description: |-
MismatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
- incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
to select the group of existing pods which pods will be taken into consideration
for the incoming pod's pod (anti) affinity.
items:
@@ -596,11 +609,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -620,6 +635,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
description: |-
This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
@@ -632,6 +648,7 @@ spec:
- topologyKey
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
podAntiAffinity:
description: Describes pod anti-affinity scheduling
@@ -688,11 +705,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -707,7 +726,7 @@ spec:
description: |-
MatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
- incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
to select the group of existing pods which pods will be taken into consideration
for the incoming pod's pod (anti) affinity.
items:
@@ -718,7 +737,7 @@ spec:
description: |-
MismatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
- incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
to select the group of existing pods which pods will be taken into consideration
for the incoming pod's pod (anti) affinity.
items:
@@ -762,11 +781,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -786,6 +807,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
description: |-
This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
@@ -808,6 +830,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
description: |-
If the anti-affinity requirements specified by this field are not met at
@@ -857,11 +880,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -876,7 +901,7 @@ spec:
description: |-
MatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
- incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
to select the group of existing pods which pods will be taken into consideration
for the incoming pod's pod (anti) affinity.
items:
@@ -887,7 +912,7 @@ spec:
description: |-
MismatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
- incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
to select the group of existing pods which pods will be taken into consideration
for the incoming pod's pod (anti) affinity.
items:
@@ -930,11 +955,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -954,6 +981,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
description: |-
This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
@@ -966,6 +994,7 @@ spec:
- topologyKey
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
type: object
automountServiceAccountToken:
@@ -993,6 +1022,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
description: |-
Entrypoint array. Not executed within a shell.
@@ -1003,6 +1033,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
description: |-
List of environment variables to set in the container.
@@ -1036,10 +1067,13 @@ spec:
description: The key to select.
type: string
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the
@@ -1104,10 +1138,13 @@ spec:
secret key.
type: string
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the
@@ -1122,6 +1159,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
description: |-
List of sources to populate environment variables in the container.
@@ -1138,10 +1178,13 @@ spec:
description: The ConfigMap to select from
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the ConfigMap
@@ -1158,10 +1201,13 @@ spec:
description: The Secret to select from
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the Secret
@@ -1171,6 +1217,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
description: |-
Container image name.
@@ -1212,6 +1259,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
description: HTTPGet specifies the http
@@ -1245,6 +1293,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the
HTTP server.
@@ -1325,6 +1374,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
description: HTTPGet specifies the http
@@ -1358,6 +1408,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the
HTTP server.
@@ -1438,6 +1489,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -1455,11 +1507,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -1494,6 +1546,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -1646,6 +1699,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -1663,11 +1717,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -1702,6 +1756,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -1810,11 +1865,9 @@ spec:
Claims lists the names of resources, defined in spec.resourceClaims,
that are used by this container.
-
This is an alpha field and requires enabling the
DynamicResourceAllocation feature gate.
-
This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one
@@ -1826,6 +1879,12 @@ spec:
the Pod where this field is used. It makes that resource available
inside a container.
type: string
+ request:
+ description: |-
+ Request is the name chosen for a request in the referenced claim.
+ If empty, everything from the claim is made available, otherwise
+ only the result of this request.
+ type: string
required:
- name
type: object
@@ -1881,6 +1940,30 @@ spec:
2) has CAP_SYS_ADMIN
Note that this field cannot be set when spec.os.name is windows.
type: boolean
+ appArmorProfile:
+ description: |-
+ appArmorProfile is the AppArmor options to use by this container. If set, this profile
+ overrides the pod's appArmorProfile.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile loaded on the node that should be used.
+ The profile must be preconfigured on the node to work.
+ Must match the loaded name of the profile.
+ Must be set if and only if type is "Localhost".
+ type: string
+ type:
+ description: |-
+ type indicates which kind of AppArmor profile will be applied.
+ Valid options are:
+ Localhost - a profile pre-loaded on the node.
+ RuntimeDefault - the container runtime's default profile.
+ Unconfined - no AppArmor enforcement.
+ type: string
+ required:
+ - type
+ type: object
capabilities:
description: |-
The capabilities to add/drop when running containers.
@@ -1894,6 +1977,7 @@ spec:
capabilities type
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
description: Removed capabilities
items:
@@ -1901,6 +1985,7 @@ spec:
capabilities type
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
description: |-
@@ -1912,7 +1997,7 @@ spec:
procMount:
description: |-
procMount denotes the type of proc mount to use for the containers.
- The default is DefaultProcMount which uses the container runtime defaults for
+ The default value is Default which uses the container runtime defaults for
readonly paths and masked paths.
This requires the ProcMountType feature flag to be enabled.
Note that this field cannot be set when spec.os.name is windows.
@@ -1993,7 +2078,6 @@ spec:
type indicates which kind of seccomp profile will be applied.
Valid options are:
-
Localhost - a profile defined in a file on the node should be used.
RuntimeDefault - the container runtime default profile should be used.
Unconfined - no profile should be applied.
@@ -2055,6 +2139,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -2072,11 +2157,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -2111,6 +2196,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -2240,6 +2326,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
description: |-
Pod volumes to mount into the container's filesystem.
@@ -2259,6 +2348,8 @@ spec:
to container and the other way around.
When not set, MountPropagationNone is used.
This field is beta in 1.10.
+ When RecursiveReadOnly is set to IfPossible or to Enabled, MountPropagation must be None or unspecified
+ (which defaults to None).
type: string
name:
description: This must match the Name of
@@ -2269,6 +2360,17 @@ spec:
Mounted read-only if true, read-write otherwise (false or unspecified).
Defaults to false.
type: boolean
+ recursiveReadOnly:
+ description: |-
+ RecursiveReadOnly specifies whether read-only mounts should be handled
+ recursively.
+
+ If ReadOnly is false, this field has no meaning and must be unspecified.
+
+ If ReadOnly is true, and this field is set to Disabled, the mount is not made
+ recursively read-only. If this field is set to IfPossible, the mount is made
+ recursively read-only, if it is supported by the container runtime.
+ type: string
subPath:
description: |-
Path within the volume from which the container's volume should be mounted.
@@ -2286,6 +2388,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
description: |-
Container's working directory.
@@ -2297,6 +2402,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
dnsConfig:
description: |-
Specifies the DNS parameters of a pod.
@@ -2311,6 +2419,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
options:
description: |-
A list of DNS resolver options.
@@ -2328,6 +2437,7 @@ spec:
type: string
type: object
type: array
+ x-kubernetes-list-type: atomic
searches:
description: |-
A list of DNS search domains for host-name lookup.
@@ -2336,6 +2446,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
dnsPolicy:
description: |-
@@ -2377,6 +2488,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
description: |-
Entrypoint array. Not executed within a shell.
@@ -2387,6 +2499,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
description: |-
List of environment variables to set in the container.
@@ -2420,10 +2533,13 @@ spec:
description: The key to select.
type: string
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the
@@ -2488,10 +2604,13 @@ spec:
secret key.
type: string
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the
@@ -2506,6 +2625,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
description: |-
List of sources to populate environment variables in the container.
@@ -2522,10 +2644,13 @@ spec:
description: The ConfigMap to select from
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the ConfigMap
@@ -2542,10 +2667,13 @@ spec:
description: The Secret to select from
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the Secret
@@ -2555,6 +2683,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
description: |-
Container image name.
@@ -2593,6 +2722,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
description: HTTPGet specifies the http
@@ -2626,6 +2756,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the
HTTP server.
@@ -2706,6 +2837,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
description: HTTPGet specifies the http
@@ -2739,6 +2871,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the
HTTP server.
@@ -2816,6 +2949,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -2833,11 +2967,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -2872,6 +3006,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -3015,6 +3150,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -3032,11 +3168,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -3071,6 +3207,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -3178,11 +3315,9 @@ spec:
Claims lists the names of resources, defined in spec.resourceClaims,
that are used by this container.
-
This is an alpha field and requires enabling the
DynamicResourceAllocation feature gate.
-
This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one
@@ -3194,6 +3329,12 @@ spec:
the Pod where this field is used. It makes that resource available
inside a container.
type: string
+ request:
+ description: |-
+ Request is the name chosen for a request in the referenced claim.
+ If empty, everything from the claim is made available, otherwise
+ only the result of this request.
+ type: string
required:
- name
type: object
@@ -3248,6 +3389,30 @@ spec:
2) has CAP_SYS_ADMIN
Note that this field cannot be set when spec.os.name is windows.
type: boolean
+ appArmorProfile:
+ description: |-
+ appArmorProfile is the AppArmor options to use by this container. If set, this profile
+ overrides the pod's appArmorProfile.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile loaded on the node that should be used.
+ The profile must be preconfigured on the node to work.
+ Must match the loaded name of the profile.
+ Must be set if and only if type is "Localhost".
+ type: string
+ type:
+ description: |-
+ type indicates which kind of AppArmor profile will be applied.
+ Valid options are:
+ Localhost - a profile pre-loaded on the node.
+ RuntimeDefault - the container runtime's default profile.
+ Unconfined - no AppArmor enforcement.
+ type: string
+ required:
+ - type
+ type: object
capabilities:
description: |-
The capabilities to add/drop when running containers.
@@ -3261,6 +3426,7 @@ spec:
capabilities type
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
description: Removed capabilities
items:
@@ -3268,6 +3434,7 @@ spec:
capabilities type
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
description: |-
@@ -3279,7 +3446,7 @@ spec:
procMount:
description: |-
procMount denotes the type of proc mount to use for the containers.
- The default is DefaultProcMount which uses the container runtime defaults for
+ The default value is Default which uses the container runtime defaults for
readonly paths and masked paths.
This requires the ProcMountType feature flag to be enabled.
Note that this field cannot be set when spec.os.name is windows.
@@ -3360,7 +3527,6 @@ spec:
type indicates which kind of seccomp profile will be applied.
Valid options are:
-
Localhost - a profile defined in a file on the node should be used.
RuntimeDefault - the container runtime default profile should be used.
Unconfined - no profile should be applied.
@@ -3420,6 +3586,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -3437,11 +3604,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -3476,6 +3643,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -3569,7 +3737,6 @@ spec:
The ephemeral container will be run in the namespaces (IPC, PID, etc) of this container.
If not set then the ephemeral container uses the namespaces configured in the Pod spec.
-
The container runtime must implement support for this feature.
type: string
terminationMessagePath:
@@ -3614,6 +3781,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
description: |-
Pod volumes to mount into the container's filesystem. Subpath mounts are not allowed for ephemeral containers.
@@ -3633,6 +3803,8 @@ spec:
to container and the other way around.
When not set, MountPropagationNone is used.
This field is beta in 1.10.
+ When RecursiveReadOnly is set to IfPossible or to Enabled, MountPropagation must be None or unspecified
+ (which defaults to None).
type: string
name:
description: This must match the Name of
@@ -3643,6 +3815,17 @@ spec:
Mounted read-only if true, read-write otherwise (false or unspecified).
Defaults to false.
type: boolean
+ recursiveReadOnly:
+ description: |-
+ RecursiveReadOnly specifies whether read-only mounts should be handled
+ recursively.
+
+ If ReadOnly is false, this field has no meaning and must be unspecified.
+
+ If ReadOnly is true, and this field is set to Disabled, the mount is not made
+ recursively read-only. If this field is set to IfPossible, the mount is made
+ recursively read-only, if it is supported by the container runtime.
+ type: string
subPath:
description: |-
Path within the volume from which the container's volume should be mounted.
@@ -3660,6 +3843,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
description: |-
Container's working directory.
@@ -3671,10 +3857,13 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
hostAliases:
description: |-
HostAliases is an optional list of hosts and IPs that will be injected into the pod's hosts
- file if specified. This is only valid for non-hostNetwork pods.
+ file if specified.
items:
description: |-
HostAlias holds the mapping between IP and hostnames that will be injected as an entry in the
@@ -3685,11 +3874,17 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
ip:
description: IP address of the host file entry.
type: string
+ required:
+ - ip
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - ip
+ x-kubernetes-list-type: map
hostIPC:
description: |-
Use the host's ipc namespace.
@@ -3731,14 +3926,20 @@ spec:
referenced object inside the same namespace.
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
initContainers:
description: |-
List of initialization containers belonging to the pod.
@@ -3760,6 +3961,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
description: |-
Entrypoint array. Not executed within a shell.
@@ -3770,6 +3972,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
description: |-
List of environment variables to set in the container.
@@ -3803,10 +4006,13 @@ spec:
description: The key to select.
type: string
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the
@@ -3871,10 +4077,13 @@ spec:
secret key.
type: string
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the
@@ -3889,6 +4098,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
description: |-
List of sources to populate environment variables in the container.
@@ -3905,10 +4117,13 @@ spec:
description: The ConfigMap to select from
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the ConfigMap
@@ -3925,10 +4140,13 @@ spec:
description: The Secret to select from
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the Secret
@@ -3938,6 +4156,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
description: |-
Container image name.
@@ -3979,6 +4198,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
description: HTTPGet specifies the http
@@ -4012,6 +4232,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the
HTTP server.
@@ -4092,6 +4313,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
description: HTTPGet specifies the http
@@ -4125,6 +4347,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the
HTTP server.
@@ -4205,6 +4428,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -4222,11 +4446,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -4261,6 +4485,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -4413,6 +4638,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -4430,11 +4656,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -4469,6 +4695,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -4577,11 +4804,9 @@ spec:
Claims lists the names of resources, defined in spec.resourceClaims,
that are used by this container.
-
This is an alpha field and requires enabling the
DynamicResourceAllocation feature gate.
-
This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one
@@ -4593,6 +4818,12 @@ spec:
the Pod where this field is used. It makes that resource available
inside a container.
type: string
+ request:
+ description: |-
+ Request is the name chosen for a request in the referenced claim.
+ If empty, everything from the claim is made available, otherwise
+ only the result of this request.
+ type: string
required:
- name
type: object
@@ -4648,6 +4879,30 @@ spec:
2) has CAP_SYS_ADMIN
Note that this field cannot be set when spec.os.name is windows.
type: boolean
+ appArmorProfile:
+ description: |-
+ appArmorProfile is the AppArmor options to use by this container. If set, this profile
+ overrides the pod's appArmorProfile.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile loaded on the node that should be used.
+ The profile must be preconfigured on the node to work.
+ Must match the loaded name of the profile.
+ Must be set if and only if type is "Localhost".
+ type: string
+ type:
+ description: |-
+ type indicates which kind of AppArmor profile will be applied.
+ Valid options are:
+ Localhost - a profile pre-loaded on the node.
+ RuntimeDefault - the container runtime's default profile.
+ Unconfined - no AppArmor enforcement.
+ type: string
+ required:
+ - type
+ type: object
capabilities:
description: |-
The capabilities to add/drop when running containers.
@@ -4661,6 +4916,7 @@ spec:
capabilities type
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
description: Removed capabilities
items:
@@ -4668,6 +4924,7 @@ spec:
capabilities type
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
description: |-
@@ -4679,7 +4936,7 @@ spec:
procMount:
description: |-
procMount denotes the type of proc mount to use for the containers.
- The default is DefaultProcMount which uses the container runtime defaults for
+ The default value is Default which uses the container runtime defaults for
readonly paths and masked paths.
This requires the ProcMountType feature flag to be enabled.
Note that this field cannot be set when spec.os.name is windows.
@@ -4760,7 +5017,6 @@ spec:
type indicates which kind of seccomp profile will be applied.
Valid options are:
-
Localhost - a profile defined in a file on the node should be used.
RuntimeDefault - the container runtime default profile should be used.
Unconfined - no profile should be applied.
@@ -4822,6 +5078,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -4839,11 +5096,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -4878,6 +5135,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -5007,6 +5265,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
description: |-
Pod volumes to mount into the container's filesystem.
@@ -5026,6 +5287,8 @@ spec:
to container and the other way around.
When not set, MountPropagationNone is used.
This field is beta in 1.10.
+ When RecursiveReadOnly is set to IfPossible or to Enabled, MountPropagation must be None or unspecified
+ (which defaults to None).
type: string
name:
description: This must match the Name of
@@ -5036,6 +5299,17 @@ spec:
Mounted read-only if true, read-write otherwise (false or unspecified).
Defaults to false.
type: boolean
+ recursiveReadOnly:
+ description: |-
+ RecursiveReadOnly specifies whether read-only mounts should be handled
+ recursively.
+
+ If ReadOnly is false, this field has no meaning and must be unspecified.
+
+ If ReadOnly is true, and this field is set to Disabled, the mount is not made
+ recursively read-only. If this field is set to IfPossible, the mount is made
+ recursively read-only, if it is supported by the container runtime.
+ type: string
subPath:
description: |-
Path within the volume from which the container's volume should be mounted.
@@ -5053,6 +5327,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
description: |-
Container's working directory.
@@ -5064,11 +5341,16 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
nodeName:
description: |-
- 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.
+ NodeName indicates in which node this pod is scheduled.
+ If empty, this pod is a candidate for scheduling by the scheduler defined in schedulerName.
+ Once this field is set, the kubelet for this node becomes responsible for the lifecycle of this pod.
+ This field should not be used to express a desire for the pod to be scheduled on a specific node.
+ https://kubernetes.
type: string
nodeSelector:
additionalProperties:
@@ -5084,16 +5366,14 @@ spec:
Specifies the OS of the containers in the pod.
Some pod and container fields are restricted if this is set.
-
If the OS field is set to linux, the following fields must be unset:
-securityContext.windowsOptions
-
If the OS field is set to windows, following fields must be unset:
- spec.hostPID
- spec.hostIPC
- spec.hostUsers
- - spec.securityContext.seLinuxOptions
+ - spec.securityContext.appArmorProfile
- spec.securityContext.
properties:
name:
@@ -5162,6 +5442,7 @@ spec:
- conditionType
type: object
type: array
+ x-kubernetes-list-type: atomic
resourceClaims:
description: |-
ResourceClaims defines which ResourceClaims must be allocated
@@ -5169,15 +5450,16 @@ spec:
will be made available to those containers which consume them
by name.
-
This is an alpha field and requires enabling the
DynamicResourceAllocation feature gate.
-
This field is immutable.
items:
description: |-
- PodResourceClaim references exactly one ResourceClaim through a ClaimSource.
+ PodResourceClaim references exactly one ResourceClaim, either directly
+ or by naming a ResourceClaimTemplate which is then turned into a ResourceClaim
+ for the pod.
+
It adds a name to it that uniquely identifies the ResourceClaim inside the Pod.
Containers that need access to the ResourceClaim reference it with this name.
properties:
@@ -5186,26 +5468,23 @@ spec:
Name uniquely identifies this resource claim inside the pod.
This must be a DNS_LABEL.
type: string
- source:
- description: Source describes where to find the
- ResourceClaim.
- properties:
- resourceClaimName:
- description: |-
- ResourceClaimName is the name of a ResourceClaim object in the same
- namespace as this pod.
- type: string
- resourceClaimTemplateName:
- description: |-
- ResourceClaimTemplateName is the name of a ResourceClaimTemplate
- object in the same namespace as this pod.
+ resourceClaimName:
+ description: |-
+ ResourceClaimName is the name of a ResourceClaim object in the same
+ namespace as this pod.
+ Exactly one of ResourceClaimName and ResourceClaimTemplateName must
+ be set.
+ type: string
+ resourceClaimTemplateName:
+ description: |-
+ ResourceClaimTemplateName is the name of a ResourceClaimTemplate
+ object in the same namespace as this pod.
- The template will be used to create a new ResourceClaim, which will
- be bound to this pod. When this pod is deleted, the ResourceClaim
- will also be deleted.
- type: string
- type: object
+ The template will be used to create a new ResourceClaim, which will
+ be bound to this pod. When this pod is deleted, the ResourceClaim
+ will also be deleted.
+ type: string
required:
- name
type: object
@@ -5239,11 +5518,7 @@ spec:
If schedulingGates is not empty, the pod will stay in the SchedulingGated state and the
scheduler will not attempt to schedule the pod.
-
SchedulingGates can only be set at pod creation time, and be removed only afterwards.
-
-
- This is a beta feature enabled by the PodSchedulingReadiness feature gate.
items:
description: PodSchedulingGate is associated to a
Pod to guard its scheduling.
@@ -5265,13 +5540,35 @@ spec:
SecurityContext holds pod-level security attributes and common container settings.
Optional: Defaults to empty. See type description for default values of each field.
properties:
+ appArmorProfile:
+ description: |-
+ appArmorProfile is the AppArmor options to use by the containers in this pod.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile loaded on the node that should be used.
+ The profile must be preconfigured on the node to work.
+ Must match the loaded name of the profile.
+ Must be set if and only if type is "Localhost".
+ type: string
+ type:
+ description: |-
+ type indicates which kind of AppArmor profile will be applied.
+ Valid options are:
+ Localhost - a profile pre-loaded on the node.
+ RuntimeDefault - the container runtime's default profile.
+ Unconfined - no AppArmor enforcement.
+ type: string
+ required:
+ - type
+ type: object
fsGroup:
description: |-
A special supplemental group that applies to all containers in a pod.
Some volume types allow the Kubelet to change the ownership of that volume
to be owned by the pod:
-
1. The owning GID will be the FSGroup
2. The setgid bit is set (new files created in the volume will be owned by FSGroup)
3.
@@ -5357,7 +5654,6 @@ spec:
type indicates which kind of seccomp profile will be applied.
Valid options are:
-
Localhost - a profile defined in a file on the node should be used.
RuntimeDefault - the container runtime default profile should be used.
Unconfined - no profile should be applied.
@@ -5367,14 +5663,24 @@ spec:
type: object
supplementalGroups:
description: |-
- A list of groups applied to the first process run in each container, in addition
- to the container's primary GID, the fsGroup (if specified), and group memberships
- defined in the container image for the uid of the container process. If unspecified,
- no additional groups are added to any container.
+ A list of groups applied to the first process run in each container, in
+ addition to the container's primary GID and fsGroup (if specified). If
+ the SupplementalGroupsPolicy feature is enabled, the
+ supplementalGroupsPolicy field determines whether these are in addition
+ to or instead of any group memberships defined in the container image.
items:
format: int64
type: integer
type: array
+ x-kubernetes-list-type: atomic
+ supplementalGroupsPolicy:
+ description: |-
+ Defines how supplemental groups of the first container processes are calculated.
+ Valid values are "Merge" and "Strict". If not specified, "Merge" is used.
+ (Alpha) Using the field requires the SupplementalGroupsPolicy feature gate to be enabled
+ and the container runtime must implement support for this feature.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: string
sysctls:
description: |-
Sysctls hold a list of namespaced sysctls used for the pod. Pods with unsupported
@@ -5395,6 +5701,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
windowsOptions:
description: |-
The Windows specific settings applied to all containers.
@@ -5430,7 +5737,7 @@ spec:
type: object
serviceAccount:
description: |-
- DeprecatedServiceAccount is a depreciated alias for ServiceAccountName.
+ DeprecatedServiceAccount is a deprecated alias for ServiceAccountName.
Deprecated: Use serviceAccountName instead.
type: string
serviceAccountName:
@@ -5503,6 +5810,7 @@ spec:
type: string
type: object
type: array
+ x-kubernetes-list-type: atomic
topologySpreadConstraints:
description: |-
TopologySpreadConstraints describes how a group of pods ought to spread across topology
@@ -5545,11 +5853,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -5596,7 +5906,6 @@ spec:
- Honor: only nodes matching nodeAffinity/nodeSelector are included in the calculations.
- Ignore: nodeAffinity/nodeSelector are ignored. All nodes are included in the calculations.
-
If this value is nil, the behavior is equivalent to the Honor policy.
type: string
nodeTaintsPolicy:
@@ -5607,7 +5916,6 @@ spec:
has a toleration, are included.
- Ignore: node taints are ignored. All nodes are included.
-
If this value is nil, the behavior is equivalent to the Ignore policy.
type: string
topologyKey:
@@ -5658,7 +5966,6 @@ spec:
Tip: Ensure that the filesystem type is supported by the host operating system.
Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
- TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
partition:
description: |-
@@ -5699,6 +6006,7 @@ spec:
in the blob storage
type: string
fsType:
+ default: ext4
description: |-
fsType is Filesystem type to mount.
Must be a filesystem type supported by the host operating system.
@@ -5712,6 +6020,7 @@ spec:
availability set). defaults to shared'
type: string
readOnly:
+ default: false
description: |-
readOnly Defaults to false (read/write). ReadOnly here will force
the ReadOnly setting in VolumeMounts.
@@ -5754,6 +6063,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
path:
description: 'path is Optional: Used as the
mounted root, rather than the full Ceph
@@ -5776,10 +6086,13 @@ spec:
More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -5815,10 +6128,13 @@ spec:
to OpenStack.
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -5877,11 +6193,15 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional specify whether the
@@ -5914,10 +6234,13 @@ spec:
secret object contains more than one secret, all secret references are passed.
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -5961,7 +6284,7 @@ spec:
fieldRef:
description: 'Required: Selects a field
of the pod: only annotations, labels,
- name and namespace are supported.'
+ name, namespace and uid are supported.'
properties:
apiVersion:
description: Version of the schema
@@ -6023,6 +6346,7 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
emptyDir:
description: |-
@@ -6102,6 +6426,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
dataSource:
description: |-
dataSource field can be used to specify either:
@@ -6228,11 +6553,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -6280,7 +6607,6 @@ spec:
fsType is the filesystem type to mount.
Must be a filesystem type supported by the host operating system.
Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
- TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
lun:
description: 'lun is Optional: FC target lun
@@ -6298,6 +6624,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
wwids:
description: |-
wwids Optional: FC volume world wide identifiers (wwids)
@@ -6305,6 +6632,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
flexVolume:
description: |-
@@ -6341,10 +6669,13 @@ spec:
scripts.
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -6379,7 +6710,6 @@ spec:
Tip: Ensure that the filesystem type is supported by the host operating system.
Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
- TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
partition:
description: |-
@@ -6459,7 +6789,7 @@ spec:
machine that is directly exposed to the container. This is generally
used for system agents or other privileged things that are allowed
to see the host machine. Most containers will NOT need this.
- More info: https://kubernetes.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath
properties:
path:
description: |-
@@ -6476,6 +6806,29 @@ spec:
required:
- path
type: object
+ image:
+ description: |-
+ image represents an OCI object (a container image or artifact) pulled and mounted on the kubelet's host machine.
+ The volume is resolved at pod startup depending on which PullPolicy value is provided:
+
+ - Always: the kubelet always attempts to pull the reference. Container creation will fail If the pull fails.
+ - Never: the kubelet never pulls the reference and only uses a local image or artifact.
+ properties:
+ pullPolicy:
+ description: |-
+ Policy for pulling OCI objects. Possible values are:
+ Always: the kubelet always attempts to pull the reference. Container creation will fail If the pull fails.
+ Never: the kubelet never pulls the reference and only uses a local image or artifact. Container creation will fail if the reference isn't present.
+ IfNotPresent: the kubelet pulls if the reference isn't already present on disk.
+ type: string
+ reference:
+ description: |-
+ Required: Image or artifact reference to be used.
+ Behaves in the same way as pod.spec.containers[*].image.
+ Pull secrets will be assembled in the same way as for the container image by looking up node credentials, SA image pull secrets, and pod spec image pull secrets.
+ More info: https://kubernetes.
+ type: string
+ type: object
iscsi:
description: |-
iscsi represents an ISCSI Disk resource that is attached to a
@@ -6496,7 +6849,6 @@ spec:
Tip: Ensure that the filesystem type is supported by the host operating system.
Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
More info: https://kubernetes.io/docs/concepts/storage/volumes#iscsi
- TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
initiatorName:
description: |-
@@ -6509,6 +6861,7 @@ spec:
Name.
type: string
iscsiInterface:
+ default: default
description: |-
iscsiInterface is the interface Name that uses an iSCSI transport.
Defaults to 'default' (tcp).
@@ -6525,6 +6878,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
readOnly:
description: |-
readOnly here will force the ReadOnly setting in VolumeMounts.
@@ -6535,10 +6889,13 @@ spec:
for iSCSI target and initiator authentication
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -6656,21 +7013,21 @@ spec:
format: int32
type: integer
sources:
- description: sources is the list of volume
- projections
+ description: |-
+ sources is the list of volume projections. Each entry in this list
+ handles one source.
items:
- description: Projection that may be projected
- along with other supported volume types
+ description: |-
+ Projection that may be projected along with other supported volume types.
+ Exactly one of these fields must be set.
properties:
clusterTrustBundle:
description: |-
ClusterTrustBundle allows a pod to access the `.spec.trustBundle` field
of ClusterTrustBundle objects in an auto-updating file.
-
Alpha, gated by the ClusterTrustBundleProjection feature gate.
-
ClusterTrustBundle objects can either be selected by name, or by the
combination of signer name and a label selector.
properties:
@@ -6710,11 +7067,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -6790,11 +7149,15 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional specify whether
@@ -6819,8 +7182,8 @@ spec:
fieldRef:
description: 'Required: Selects
a field of the pod: only
- annotations, labels, name
- and namespace are supported.'
+ annotations, labels, name,
+ namespace and uid are supported.'
properties:
apiVersion:
description: Version of
@@ -6888,6 +7251,7 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
secret:
description: secret information about
@@ -6928,11 +7292,15 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional field specify
@@ -6973,6 +7341,7 @@ spec:
type: object
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
quobyte:
description: quobyte represents a Quobyte mount
@@ -7023,7 +7392,6 @@ spec:
Tip: Ensure that the filesystem type is supported by the host operating system.
Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
More info: https://kubernetes.io/docs/concepts/storage/volumes#rbd
- TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
image:
description: |-
@@ -7031,6 +7399,7 @@ spec:
More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
type: string
keyring:
+ default: /etc/ceph/keyring
description: |-
keyring is the path to key ring for RBDUser.
Default is /etc/ceph/keyring.
@@ -7043,7 +7412,9 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
pool:
+ default: rbd
description: |-
pool is the rados pool name.
Default is rbd.
@@ -7063,14 +7434,18 @@ spec:
More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
user:
+ default: admin
description: |-
user is the rados user name.
Default is admin.
@@ -7085,6 +7460,7 @@ spec:
volume attached and mounted on Kubernetes nodes.
properties:
fsType:
+ default: xfs
description: |-
fsType is the filesystem type to mount.
Must be a filesystem type supported by the host operating system.
@@ -7111,10 +7487,13 @@ spec:
sensitive information. If this is not provided, Login operation will fail.
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -7124,6 +7503,7 @@ spec:
false
type: boolean
storageMode:
+ default: ThinProvisioned
description: |-
storageMode indicates whether the storage for a volume should be ThickProvisioned or ThinProvisioned.
Default is ThinProvisioned.
@@ -7194,6 +7574,7 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
optional:
description: optional field specify whether
the Secret or its keys must be defined
@@ -7225,10 +7606,13 @@ spec:
credentials. If not specified, default values will be attempted.
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -7277,19 +7661,19 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
required:
- containers
type: object
type: object
type: object
description: |-
- MXReplicaSpecs is map of ReplicaType and ReplicaSpec
- specifies the MX replicas to run.
+ A map of JAXReplicaType (type) to ReplicaSpec (value). Specifies the JAX cluster configuration.
For example,
{
- "Scheduler": ReplicaSpec,
- "Server": ReplicaSpec,
- "Worker": ReplicaSpec,
+ "Worker": JAXReplicaSpec,
}
type: object
runPolicy:
@@ -7314,6 +7698,16 @@ spec:
CleanPodPolicy defines the policy to kill pods after the job completes.
Default to None.
type: string
+ managedBy:
+ description: |-
+ ManagedBy is used to indicate the controller or entity that manages a job.
+ The value must be either an empty, 'kubeflow.org/training-operator' or
+ 'kueue.x-k8s.io/multikueue'.
+ The training-operator reconciles a job which doesn't have this
+ field at all or the field value is the reserved string
+ 'kubeflow.org/training-operator', but delegates reconciling the job
+ with 'kueue.x-k8s.
+ type: string
schedulingPolicy:
description: SchedulingPolicy defines the policy related to scheduling,
e.g. gang-scheduling
@@ -7360,12 +7754,12 @@ spec:
type: integer
type: object
required:
- - jobMode
- - mxReplicaSpecs
+ - jaxReplicaSpecs
type: object
status:
- description: JobStatus represents the current observed state of the training
- Job.
+ description: |-
+ Most recently observed status of the JAXJob.
+ Read-only (modified by the system).
properties:
completionTime:
description: |-
@@ -7456,11 +7850,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -7498,4 +7894,8 @@ spec:
served: true
storage: true
subresources:
+ scale:
+ labelSelectorPath: .status.replicaStatuses.Worker.selector
+ specReplicasPath: .spec.jaxReplicaSpecs.Worker.replicas
+ statusReplicasPath: .status.replicaStatuses.Worker.active
status: {}
diff --git a/charts/kubeflow/apps/training-operator/upstream/base/crds/kubeflow.org_mpijobs.yaml b/charts/kubeflow/apps/training-operator/upstream/base/crds/kubeflow.org_mpijobs.yaml
index 4139d49..017a97b 100644
--- a/charts/kubeflow/apps/training-operator/upstream/base/crds/kubeflow.org_mpijobs.yaml
+++ b/charts/kubeflow/apps/training-operator/upstream/base/crds/kubeflow.org_mpijobs.yaml
@@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
- controller-gen.kubebuilder.io/version: v0.14.0
+ controller-gen.kubebuilder.io/version: v0.16.5
name: mpijobs.kubeflow.org
spec:
group: kubeflow.org
@@ -161,11 +161,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchFields:
description: A list of node selector
requirements by node's fields.
@@ -193,11 +195,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
x-kubernetes-map-type: atomic
weight:
@@ -211,6 +215,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
description: |-
If the affinity requirements specified by this field are not met at
@@ -255,11 +260,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchFields:
description: A list of node selector
requirements by node's fields.
@@ -287,14 +294,17 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
x-kubernetes-map-type: atomic
type: array
+ x-kubernetes-list-type: atomic
required:
- nodeSelectorTerms
type: object
@@ -357,11 +367,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -376,7 +388,7 @@ spec:
description: |-
MatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
- incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
to select the group of existing pods which pods will be taken into consideration
for the incoming pod's pod (anti) affinity.
items:
@@ -387,7 +399,7 @@ spec:
description: |-
MismatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
- incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
to select the group of existing pods which pods will be taken into consideration
for the incoming pod's pod (anti) affinity.
items:
@@ -431,11 +443,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -455,6 +469,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
description: |-
This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
@@ -477,6 +492,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
description: |-
If the affinity requirements specified by this field are not met at
@@ -526,11 +542,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -545,7 +563,7 @@ spec:
description: |-
MatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
- incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
to select the group of existing pods which pods will be taken into consideration
for the incoming pod's pod (anti) affinity.
items:
@@ -556,7 +574,7 @@ spec:
description: |-
MismatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
- incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
to select the group of existing pods which pods will be taken into consideration
for the incoming pod's pod (anti) affinity.
items:
@@ -599,11 +617,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -623,6 +643,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
description: |-
This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
@@ -635,6 +656,7 @@ spec:
- topologyKey
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
podAntiAffinity:
description: Describes pod anti-affinity scheduling
@@ -691,11 +713,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -710,7 +734,7 @@ spec:
description: |-
MatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
- incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
to select the group of existing pods which pods will be taken into consideration
for the incoming pod's pod (anti) affinity.
items:
@@ -721,7 +745,7 @@ spec:
description: |-
MismatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
- incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
to select the group of existing pods which pods will be taken into consideration
for the incoming pod's pod (anti) affinity.
items:
@@ -765,11 +789,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -789,6 +815,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
description: |-
This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
@@ -811,6 +838,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
description: |-
If the anti-affinity requirements specified by this field are not met at
@@ -860,11 +888,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -879,7 +909,7 @@ spec:
description: |-
MatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
- incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
to select the group of existing pods which pods will be taken into consideration
for the incoming pod's pod (anti) affinity.
items:
@@ -890,7 +920,7 @@ spec:
description: |-
MismatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
- incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
to select the group of existing pods which pods will be taken into consideration
for the incoming pod's pod (anti) affinity.
items:
@@ -933,11 +963,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -957,6 +989,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
description: |-
This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
@@ -969,6 +1002,7 @@ spec:
- topologyKey
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
type: object
automountServiceAccountToken:
@@ -996,6 +1030,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
description: |-
Entrypoint array. Not executed within a shell.
@@ -1006,6 +1041,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
description: |-
List of environment variables to set in the container.
@@ -1039,10 +1075,13 @@ spec:
description: The key to select.
type: string
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the
@@ -1107,10 +1146,13 @@ spec:
secret key.
type: string
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the
@@ -1125,6 +1167,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
description: |-
List of sources to populate environment variables in the container.
@@ -1141,10 +1186,13 @@ spec:
description: The ConfigMap to select from
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the ConfigMap
@@ -1161,10 +1209,13 @@ spec:
description: The Secret to select from
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the Secret
@@ -1174,6 +1225,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
description: |-
Container image name.
@@ -1215,6 +1267,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
description: HTTPGet specifies the http
@@ -1248,6 +1301,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the
HTTP server.
@@ -1328,6 +1382,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
description: HTTPGet specifies the http
@@ -1361,6 +1416,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the
HTTP server.
@@ -1441,6 +1497,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -1458,11 +1515,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -1497,6 +1554,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -1649,6 +1707,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -1666,11 +1725,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -1705,6 +1764,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -1813,11 +1873,9 @@ spec:
Claims lists the names of resources, defined in spec.resourceClaims,
that are used by this container.
-
This is an alpha field and requires enabling the
DynamicResourceAllocation feature gate.
-
This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one
@@ -1829,6 +1887,12 @@ spec:
the Pod where this field is used. It makes that resource available
inside a container.
type: string
+ request:
+ description: |-
+ Request is the name chosen for a request in the referenced claim.
+ If empty, everything from the claim is made available, otherwise
+ only the result of this request.
+ type: string
required:
- name
type: object
@@ -1884,6 +1948,30 @@ spec:
2) has CAP_SYS_ADMIN
Note that this field cannot be set when spec.os.name is windows.
type: boolean
+ appArmorProfile:
+ description: |-
+ appArmorProfile is the AppArmor options to use by this container. If set, this profile
+ overrides the pod's appArmorProfile.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile loaded on the node that should be used.
+ The profile must be preconfigured on the node to work.
+ Must match the loaded name of the profile.
+ Must be set if and only if type is "Localhost".
+ type: string
+ type:
+ description: |-
+ type indicates which kind of AppArmor profile will be applied.
+ Valid options are:
+ Localhost - a profile pre-loaded on the node.
+ RuntimeDefault - the container runtime's default profile.
+ Unconfined - no AppArmor enforcement.
+ type: string
+ required:
+ - type
+ type: object
capabilities:
description: |-
The capabilities to add/drop when running containers.
@@ -1897,6 +1985,7 @@ spec:
capabilities type
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
description: Removed capabilities
items:
@@ -1904,6 +1993,7 @@ spec:
capabilities type
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
description: |-
@@ -1915,7 +2005,7 @@ spec:
procMount:
description: |-
procMount denotes the type of proc mount to use for the containers.
- The default is DefaultProcMount which uses the container runtime defaults for
+ The default value is Default which uses the container runtime defaults for
readonly paths and masked paths.
This requires the ProcMountType feature flag to be enabled.
Note that this field cannot be set when spec.os.name is windows.
@@ -1996,7 +2086,6 @@ spec:
type indicates which kind of seccomp profile will be applied.
Valid options are:
-
Localhost - a profile defined in a file on the node should be used.
RuntimeDefault - the container runtime default profile should be used.
Unconfined - no profile should be applied.
@@ -2058,6 +2147,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -2075,11 +2165,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -2114,6 +2204,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -2243,6 +2334,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
description: |-
Pod volumes to mount into the container's filesystem.
@@ -2262,6 +2356,8 @@ spec:
to container and the other way around.
When not set, MountPropagationNone is used.
This field is beta in 1.10.
+ When RecursiveReadOnly is set to IfPossible or to Enabled, MountPropagation must be None or unspecified
+ (which defaults to None).
type: string
name:
description: This must match the Name of
@@ -2272,6 +2368,17 @@ spec:
Mounted read-only if true, read-write otherwise (false or unspecified).
Defaults to false.
type: boolean
+ recursiveReadOnly:
+ description: |-
+ RecursiveReadOnly specifies whether read-only mounts should be handled
+ recursively.
+
+ If ReadOnly is false, this field has no meaning and must be unspecified.
+
+ If ReadOnly is true, and this field is set to Disabled, the mount is not made
+ recursively read-only. If this field is set to IfPossible, the mount is made
+ recursively read-only, if it is supported by the container runtime.
+ type: string
subPath:
description: |-
Path within the volume from which the container's volume should be mounted.
@@ -2289,6 +2396,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
description: |-
Container's working directory.
@@ -2300,6 +2410,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
dnsConfig:
description: |-
Specifies the DNS parameters of a pod.
@@ -2314,6 +2427,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
options:
description: |-
A list of DNS resolver options.
@@ -2331,6 +2445,7 @@ spec:
type: string
type: object
type: array
+ x-kubernetes-list-type: atomic
searches:
description: |-
A list of DNS search domains for host-name lookup.
@@ -2339,6 +2454,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
dnsPolicy:
description: |-
@@ -2380,6 +2496,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
description: |-
Entrypoint array. Not executed within a shell.
@@ -2390,6 +2507,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
description: |-
List of environment variables to set in the container.
@@ -2423,10 +2541,13 @@ spec:
description: The key to select.
type: string
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the
@@ -2491,10 +2612,13 @@ spec:
secret key.
type: string
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the
@@ -2509,6 +2633,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
description: |-
List of sources to populate environment variables in the container.
@@ -2525,10 +2652,13 @@ spec:
description: The ConfigMap to select from
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the ConfigMap
@@ -2545,10 +2675,13 @@ spec:
description: The Secret to select from
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the Secret
@@ -2558,6 +2691,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
description: |-
Container image name.
@@ -2596,6 +2730,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
description: HTTPGet specifies the http
@@ -2629,6 +2764,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the
HTTP server.
@@ -2709,6 +2845,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
description: HTTPGet specifies the http
@@ -2742,6 +2879,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the
HTTP server.
@@ -2819,6 +2957,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -2836,11 +2975,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -2875,6 +3014,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -3018,6 +3158,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -3035,11 +3176,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -3074,6 +3215,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -3181,11 +3323,9 @@ spec:
Claims lists the names of resources, defined in spec.resourceClaims,
that are used by this container.
-
This is an alpha field and requires enabling the
DynamicResourceAllocation feature gate.
-
This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one
@@ -3197,6 +3337,12 @@ spec:
the Pod where this field is used. It makes that resource available
inside a container.
type: string
+ request:
+ description: |-
+ Request is the name chosen for a request in the referenced claim.
+ If empty, everything from the claim is made available, otherwise
+ only the result of this request.
+ type: string
required:
- name
type: object
@@ -3251,6 +3397,30 @@ spec:
2) has CAP_SYS_ADMIN
Note that this field cannot be set when spec.os.name is windows.
type: boolean
+ appArmorProfile:
+ description: |-
+ appArmorProfile is the AppArmor options to use by this container. If set, this profile
+ overrides the pod's appArmorProfile.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile loaded on the node that should be used.
+ The profile must be preconfigured on the node to work.
+ Must match the loaded name of the profile.
+ Must be set if and only if type is "Localhost".
+ type: string
+ type:
+ description: |-
+ type indicates which kind of AppArmor profile will be applied.
+ Valid options are:
+ Localhost - a profile pre-loaded on the node.
+ RuntimeDefault - the container runtime's default profile.
+ Unconfined - no AppArmor enforcement.
+ type: string
+ required:
+ - type
+ type: object
capabilities:
description: |-
The capabilities to add/drop when running containers.
@@ -3264,6 +3434,7 @@ spec:
capabilities type
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
description: Removed capabilities
items:
@@ -3271,6 +3442,7 @@ spec:
capabilities type
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
description: |-
@@ -3282,7 +3454,7 @@ spec:
procMount:
description: |-
procMount denotes the type of proc mount to use for the containers.
- The default is DefaultProcMount which uses the container runtime defaults for
+ The default value is Default which uses the container runtime defaults for
readonly paths and masked paths.
This requires the ProcMountType feature flag to be enabled.
Note that this field cannot be set when spec.os.name is windows.
@@ -3363,7 +3535,6 @@ spec:
type indicates which kind of seccomp profile will be applied.
Valid options are:
-
Localhost - a profile defined in a file on the node should be used.
RuntimeDefault - the container runtime default profile should be used.
Unconfined - no profile should be applied.
@@ -3423,6 +3594,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -3440,11 +3612,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -3479,6 +3651,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -3572,7 +3745,6 @@ spec:
The ephemeral container will be run in the namespaces (IPC, PID, etc) of this container.
If not set then the ephemeral container uses the namespaces configured in the Pod spec.
-
The container runtime must implement support for this feature.
type: string
terminationMessagePath:
@@ -3617,6 +3789,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
description: |-
Pod volumes to mount into the container's filesystem. Subpath mounts are not allowed for ephemeral containers.
@@ -3636,6 +3811,8 @@ spec:
to container and the other way around.
When not set, MountPropagationNone is used.
This field is beta in 1.10.
+ When RecursiveReadOnly is set to IfPossible or to Enabled, MountPropagation must be None or unspecified
+ (which defaults to None).
type: string
name:
description: This must match the Name of
@@ -3646,6 +3823,17 @@ spec:
Mounted read-only if true, read-write otherwise (false or unspecified).
Defaults to false.
type: boolean
+ recursiveReadOnly:
+ description: |-
+ RecursiveReadOnly specifies whether read-only mounts should be handled
+ recursively.
+
+ If ReadOnly is false, this field has no meaning and must be unspecified.
+
+ If ReadOnly is true, and this field is set to Disabled, the mount is not made
+ recursively read-only. If this field is set to IfPossible, the mount is made
+ recursively read-only, if it is supported by the container runtime.
+ type: string
subPath:
description: |-
Path within the volume from which the container's volume should be mounted.
@@ -3663,6 +3851,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
description: |-
Container's working directory.
@@ -3674,10 +3865,13 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
hostAliases:
description: |-
HostAliases is an optional list of hosts and IPs that will be injected into the pod's hosts
- file if specified. This is only valid for non-hostNetwork pods.
+ file if specified.
items:
description: |-
HostAlias holds the mapping between IP and hostnames that will be injected as an entry in the
@@ -3688,11 +3882,17 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
ip:
description: IP address of the host file entry.
type: string
+ required:
+ - ip
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - ip
+ x-kubernetes-list-type: map
hostIPC:
description: |-
Use the host's ipc namespace.
@@ -3734,14 +3934,20 @@ spec:
referenced object inside the same namespace.
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
initContainers:
description: |-
List of initialization containers belonging to the pod.
@@ -3763,6 +3969,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
description: |-
Entrypoint array. Not executed within a shell.
@@ -3773,6 +3980,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
description: |-
List of environment variables to set in the container.
@@ -3806,10 +4014,13 @@ spec:
description: The key to select.
type: string
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the
@@ -3874,10 +4085,13 @@ spec:
secret key.
type: string
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the
@@ -3892,6 +4106,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
description: |-
List of sources to populate environment variables in the container.
@@ -3908,10 +4125,13 @@ spec:
description: The ConfigMap to select from
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the ConfigMap
@@ -3928,10 +4148,13 @@ spec:
description: The Secret to select from
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the Secret
@@ -3941,6 +4164,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
description: |-
Container image name.
@@ -3982,6 +4206,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
description: HTTPGet specifies the http
@@ -4015,6 +4240,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the
HTTP server.
@@ -4095,6 +4321,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
description: HTTPGet specifies the http
@@ -4128,6 +4355,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the
HTTP server.
@@ -4208,6 +4436,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -4225,11 +4454,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -4264,6 +4493,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -4416,6 +4646,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -4433,11 +4664,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -4472,6 +4703,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -4580,11 +4812,9 @@ spec:
Claims lists the names of resources, defined in spec.resourceClaims,
that are used by this container.
-
This is an alpha field and requires enabling the
DynamicResourceAllocation feature gate.
-
This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one
@@ -4596,6 +4826,12 @@ spec:
the Pod where this field is used. It makes that resource available
inside a container.
type: string
+ request:
+ description: |-
+ Request is the name chosen for a request in the referenced claim.
+ If empty, everything from the claim is made available, otherwise
+ only the result of this request.
+ type: string
required:
- name
type: object
@@ -4651,6 +4887,30 @@ spec:
2) has CAP_SYS_ADMIN
Note that this field cannot be set when spec.os.name is windows.
type: boolean
+ appArmorProfile:
+ description: |-
+ appArmorProfile is the AppArmor options to use by this container. If set, this profile
+ overrides the pod's appArmorProfile.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile loaded on the node that should be used.
+ The profile must be preconfigured on the node to work.
+ Must match the loaded name of the profile.
+ Must be set if and only if type is "Localhost".
+ type: string
+ type:
+ description: |-
+ type indicates which kind of AppArmor profile will be applied.
+ Valid options are:
+ Localhost - a profile pre-loaded on the node.
+ RuntimeDefault - the container runtime's default profile.
+ Unconfined - no AppArmor enforcement.
+ type: string
+ required:
+ - type
+ type: object
capabilities:
description: |-
The capabilities to add/drop when running containers.
@@ -4664,6 +4924,7 @@ spec:
capabilities type
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
description: Removed capabilities
items:
@@ -4671,6 +4932,7 @@ spec:
capabilities type
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
description: |-
@@ -4682,7 +4944,7 @@ spec:
procMount:
description: |-
procMount denotes the type of proc mount to use for the containers.
- The default is DefaultProcMount which uses the container runtime defaults for
+ The default value is Default which uses the container runtime defaults for
readonly paths and masked paths.
This requires the ProcMountType feature flag to be enabled.
Note that this field cannot be set when spec.os.name is windows.
@@ -4763,7 +5025,6 @@ spec:
type indicates which kind of seccomp profile will be applied.
Valid options are:
-
Localhost - a profile defined in a file on the node should be used.
RuntimeDefault - the container runtime default profile should be used.
Unconfined - no profile should be applied.
@@ -4825,6 +5086,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -4842,11 +5104,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -4881,6 +5143,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -5010,6 +5273,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
description: |-
Pod volumes to mount into the container's filesystem.
@@ -5029,6 +5295,8 @@ spec:
to container and the other way around.
When not set, MountPropagationNone is used.
This field is beta in 1.10.
+ When RecursiveReadOnly is set to IfPossible or to Enabled, MountPropagation must be None or unspecified
+ (which defaults to None).
type: string
name:
description: This must match the Name of
@@ -5039,6 +5307,17 @@ spec:
Mounted read-only if true, read-write otherwise (false or unspecified).
Defaults to false.
type: boolean
+ recursiveReadOnly:
+ description: |-
+ RecursiveReadOnly specifies whether read-only mounts should be handled
+ recursively.
+
+ If ReadOnly is false, this field has no meaning and must be unspecified.
+
+ If ReadOnly is true, and this field is set to Disabled, the mount is not made
+ recursively read-only. If this field is set to IfPossible, the mount is made
+ recursively read-only, if it is supported by the container runtime.
+ type: string
subPath:
description: |-
Path within the volume from which the container's volume should be mounted.
@@ -5056,6 +5335,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
description: |-
Container's working directory.
@@ -5067,11 +5349,16 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
nodeName:
description: |-
- 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.
+ NodeName indicates in which node this pod is scheduled.
+ If empty, this pod is a candidate for scheduling by the scheduler defined in schedulerName.
+ Once this field is set, the kubelet for this node becomes responsible for the lifecycle of this pod.
+ This field should not be used to express a desire for the pod to be scheduled on a specific node.
+ https://kubernetes.
type: string
nodeSelector:
additionalProperties:
@@ -5087,16 +5374,14 @@ spec:
Specifies the OS of the containers in the pod.
Some pod and container fields are restricted if this is set.
-
If the OS field is set to linux, the following fields must be unset:
-securityContext.windowsOptions
-
If the OS field is set to windows, following fields must be unset:
- spec.hostPID
- spec.hostIPC
- spec.hostUsers
- - spec.securityContext.seLinuxOptions
+ - spec.securityContext.appArmorProfile
- spec.securityContext.
properties:
name:
@@ -5165,6 +5450,7 @@ spec:
- conditionType
type: object
type: array
+ x-kubernetes-list-type: atomic
resourceClaims:
description: |-
ResourceClaims defines which ResourceClaims must be allocated
@@ -5172,15 +5458,16 @@ spec:
will be made available to those containers which consume them
by name.
-
This is an alpha field and requires enabling the
DynamicResourceAllocation feature gate.
-
This field is immutable.
items:
description: |-
- PodResourceClaim references exactly one ResourceClaim through a ClaimSource.
+ PodResourceClaim references exactly one ResourceClaim, either directly
+ or by naming a ResourceClaimTemplate which is then turned into a ResourceClaim
+ for the pod.
+
It adds a name to it that uniquely identifies the ResourceClaim inside the Pod.
Containers that need access to the ResourceClaim reference it with this name.
properties:
@@ -5189,26 +5476,23 @@ spec:
Name uniquely identifies this resource claim inside the pod.
This must be a DNS_LABEL.
type: string
- source:
- description: Source describes where to find the
- ResourceClaim.
- properties:
- resourceClaimName:
- description: |-
- ResourceClaimName is the name of a ResourceClaim object in the same
- namespace as this pod.
- type: string
- resourceClaimTemplateName:
- description: |-
- ResourceClaimTemplateName is the name of a ResourceClaimTemplate
- object in the same namespace as this pod.
+ resourceClaimName:
+ description: |-
+ ResourceClaimName is the name of a ResourceClaim object in the same
+ namespace as this pod.
+ Exactly one of ResourceClaimName and ResourceClaimTemplateName must
+ be set.
+ type: string
+ resourceClaimTemplateName:
+ description: |-
+ ResourceClaimTemplateName is the name of a ResourceClaimTemplate
+ object in the same namespace as this pod.
- The template will be used to create a new ResourceClaim, which will
- be bound to this pod. When this pod is deleted, the ResourceClaim
- will also be deleted.
- type: string
- type: object
+ The template will be used to create a new ResourceClaim, which will
+ be bound to this pod. When this pod is deleted, the ResourceClaim
+ will also be deleted.
+ type: string
required:
- name
type: object
@@ -5242,11 +5526,7 @@ spec:
If schedulingGates is not empty, the pod will stay in the SchedulingGated state and the
scheduler will not attempt to schedule the pod.
-
SchedulingGates can only be set at pod creation time, and be removed only afterwards.
-
-
- This is a beta feature enabled by the PodSchedulingReadiness feature gate.
items:
description: PodSchedulingGate is associated to a
Pod to guard its scheduling.
@@ -5268,13 +5548,35 @@ spec:
SecurityContext holds pod-level security attributes and common container settings.
Optional: Defaults to empty. See type description for default values of each field.
properties:
+ appArmorProfile:
+ description: |-
+ appArmorProfile is the AppArmor options to use by the containers in this pod.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile loaded on the node that should be used.
+ The profile must be preconfigured on the node to work.
+ Must match the loaded name of the profile.
+ Must be set if and only if type is "Localhost".
+ type: string
+ type:
+ description: |-
+ type indicates which kind of AppArmor profile will be applied.
+ Valid options are:
+ Localhost - a profile pre-loaded on the node.
+ RuntimeDefault - the container runtime's default profile.
+ Unconfined - no AppArmor enforcement.
+ type: string
+ required:
+ - type
+ type: object
fsGroup:
description: |-
A special supplemental group that applies to all containers in a pod.
Some volume types allow the Kubelet to change the ownership of that volume
to be owned by the pod:
-
1. The owning GID will be the FSGroup
2. The setgid bit is set (new files created in the volume will be owned by FSGroup)
3.
@@ -5360,7 +5662,6 @@ spec:
type indicates which kind of seccomp profile will be applied.
Valid options are:
-
Localhost - a profile defined in a file on the node should be used.
RuntimeDefault - the container runtime default profile should be used.
Unconfined - no profile should be applied.
@@ -5370,14 +5671,24 @@ spec:
type: object
supplementalGroups:
description: |-
- A list of groups applied to the first process run in each container, in addition
- to the container's primary GID, the fsGroup (if specified), and group memberships
- defined in the container image for the uid of the container process. If unspecified,
- no additional groups are added to any container.
+ A list of groups applied to the first process run in each container, in
+ addition to the container's primary GID and fsGroup (if specified). If
+ the SupplementalGroupsPolicy feature is enabled, the
+ supplementalGroupsPolicy field determines whether these are in addition
+ to or instead of any group memberships defined in the container image.
items:
format: int64
type: integer
type: array
+ x-kubernetes-list-type: atomic
+ supplementalGroupsPolicy:
+ description: |-
+ Defines how supplemental groups of the first container processes are calculated.
+ Valid values are "Merge" and "Strict". If not specified, "Merge" is used.
+ (Alpha) Using the field requires the SupplementalGroupsPolicy feature gate to be enabled
+ and the container runtime must implement support for this feature.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: string
sysctls:
description: |-
Sysctls hold a list of namespaced sysctls used for the pod. Pods with unsupported
@@ -5398,6 +5709,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
windowsOptions:
description: |-
The Windows specific settings applied to all containers.
@@ -5433,7 +5745,7 @@ spec:
type: object
serviceAccount:
description: |-
- DeprecatedServiceAccount is a depreciated alias for ServiceAccountName.
+ DeprecatedServiceAccount is a deprecated alias for ServiceAccountName.
Deprecated: Use serviceAccountName instead.
type: string
serviceAccountName:
@@ -5506,6 +5818,7 @@ spec:
type: string
type: object
type: array
+ x-kubernetes-list-type: atomic
topologySpreadConstraints:
description: |-
TopologySpreadConstraints describes how a group of pods ought to spread across topology
@@ -5548,11 +5861,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -5599,7 +5914,6 @@ spec:
- Honor: only nodes matching nodeAffinity/nodeSelector are included in the calculations.
- Ignore: nodeAffinity/nodeSelector are ignored. All nodes are included in the calculations.
-
If this value is nil, the behavior is equivalent to the Honor policy.
type: string
nodeTaintsPolicy:
@@ -5610,7 +5924,6 @@ spec:
has a toleration, are included.
- Ignore: node taints are ignored. All nodes are included.
-
If this value is nil, the behavior is equivalent to the Ignore policy.
type: string
topologyKey:
@@ -5661,7 +5974,6 @@ spec:
Tip: Ensure that the filesystem type is supported by the host operating system.
Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
- TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
partition:
description: |-
@@ -5702,6 +6014,7 @@ spec:
in the blob storage
type: string
fsType:
+ default: ext4
description: |-
fsType is Filesystem type to mount.
Must be a filesystem type supported by the host operating system.
@@ -5715,6 +6028,7 @@ spec:
availability set). defaults to shared'
type: string
readOnly:
+ default: false
description: |-
readOnly Defaults to false (read/write). ReadOnly here will force
the ReadOnly setting in VolumeMounts.
@@ -5757,6 +6071,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
path:
description: 'path is Optional: Used as the
mounted root, rather than the full Ceph
@@ -5779,10 +6094,13 @@ spec:
More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -5818,10 +6136,13 @@ spec:
to OpenStack.
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -5880,11 +6201,15 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional specify whether the
@@ -5917,10 +6242,13 @@ spec:
secret object contains more than one secret, all secret references are passed.
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -5964,7 +6292,7 @@ spec:
fieldRef:
description: 'Required: Selects a field
of the pod: only annotations, labels,
- name and namespace are supported.'
+ name, namespace and uid are supported.'
properties:
apiVersion:
description: Version of the schema
@@ -6026,6 +6354,7 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
emptyDir:
description: |-
@@ -6105,6 +6434,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
dataSource:
description: |-
dataSource field can be used to specify either:
@@ -6231,11 +6561,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -6283,7 +6615,6 @@ spec:
fsType is the filesystem type to mount.
Must be a filesystem type supported by the host operating system.
Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
- TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
lun:
description: 'lun is Optional: FC target lun
@@ -6301,6 +6632,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
wwids:
description: |-
wwids Optional: FC volume world wide identifiers (wwids)
@@ -6308,6 +6640,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
flexVolume:
description: |-
@@ -6344,10 +6677,13 @@ spec:
scripts.
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -6382,7 +6718,6 @@ spec:
Tip: Ensure that the filesystem type is supported by the host operating system.
Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
- TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
partition:
description: |-
@@ -6462,7 +6797,7 @@ spec:
machine that is directly exposed to the container. This is generally
used for system agents or other privileged things that are allowed
to see the host machine. Most containers will NOT need this.
- More info: https://kubernetes.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath
properties:
path:
description: |-
@@ -6479,6 +6814,29 @@ spec:
required:
- path
type: object
+ image:
+ description: |-
+ image represents an OCI object (a container image or artifact) pulled and mounted on the kubelet's host machine.
+ The volume is resolved at pod startup depending on which PullPolicy value is provided:
+
+ - Always: the kubelet always attempts to pull the reference. Container creation will fail If the pull fails.
+ - Never: the kubelet never pulls the reference and only uses a local image or artifact.
+ properties:
+ pullPolicy:
+ description: |-
+ Policy for pulling OCI objects. Possible values are:
+ Always: the kubelet always attempts to pull the reference. Container creation will fail If the pull fails.
+ Never: the kubelet never pulls the reference and only uses a local image or artifact. Container creation will fail if the reference isn't present.
+ IfNotPresent: the kubelet pulls if the reference isn't already present on disk.
+ type: string
+ reference:
+ description: |-
+ Required: Image or artifact reference to be used.
+ Behaves in the same way as pod.spec.containers[*].image.
+ Pull secrets will be assembled in the same way as for the container image by looking up node credentials, SA image pull secrets, and pod spec image pull secrets.
+ More info: https://kubernetes.
+ type: string
+ type: object
iscsi:
description: |-
iscsi represents an ISCSI Disk resource that is attached to a
@@ -6499,7 +6857,6 @@ spec:
Tip: Ensure that the filesystem type is supported by the host operating system.
Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
More info: https://kubernetes.io/docs/concepts/storage/volumes#iscsi
- TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
initiatorName:
description: |-
@@ -6512,6 +6869,7 @@ spec:
Name.
type: string
iscsiInterface:
+ default: default
description: |-
iscsiInterface is the interface Name that uses an iSCSI transport.
Defaults to 'default' (tcp).
@@ -6528,6 +6886,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
readOnly:
description: |-
readOnly here will force the ReadOnly setting in VolumeMounts.
@@ -6538,10 +6897,13 @@ spec:
for iSCSI target and initiator authentication
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -6659,21 +7021,21 @@ spec:
format: int32
type: integer
sources:
- description: sources is the list of volume
- projections
+ description: |-
+ sources is the list of volume projections. Each entry in this list
+ handles one source.
items:
- description: Projection that may be projected
- along with other supported volume types
+ description: |-
+ Projection that may be projected along with other supported volume types.
+ Exactly one of these fields must be set.
properties:
clusterTrustBundle:
description: |-
ClusterTrustBundle allows a pod to access the `.spec.trustBundle` field
of ClusterTrustBundle objects in an auto-updating file.
-
Alpha, gated by the ClusterTrustBundleProjection feature gate.
-
ClusterTrustBundle objects can either be selected by name, or by the
combination of signer name and a label selector.
properties:
@@ -6713,11 +7075,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -6793,11 +7157,15 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional specify whether
@@ -6822,8 +7190,8 @@ spec:
fieldRef:
description: 'Required: Selects
a field of the pod: only
- annotations, labels, name
- and namespace are supported.'
+ annotations, labels, name,
+ namespace and uid are supported.'
properties:
apiVersion:
description: Version of
@@ -6891,6 +7259,7 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
secret:
description: secret information about
@@ -6931,11 +7300,15 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional field specify
@@ -6976,6 +7349,7 @@ spec:
type: object
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
quobyte:
description: quobyte represents a Quobyte mount
@@ -7026,7 +7400,6 @@ spec:
Tip: Ensure that the filesystem type is supported by the host operating system.
Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
More info: https://kubernetes.io/docs/concepts/storage/volumes#rbd
- TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
image:
description: |-
@@ -7034,6 +7407,7 @@ spec:
More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
type: string
keyring:
+ default: /etc/ceph/keyring
description: |-
keyring is the path to key ring for RBDUser.
Default is /etc/ceph/keyring.
@@ -7046,7 +7420,9 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
pool:
+ default: rbd
description: |-
pool is the rados pool name.
Default is rbd.
@@ -7066,14 +7442,18 @@ spec:
More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
user:
+ default: admin
description: |-
user is the rados user name.
Default is admin.
@@ -7088,6 +7468,7 @@ spec:
volume attached and mounted on Kubernetes nodes.
properties:
fsType:
+ default: xfs
description: |-
fsType is the filesystem type to mount.
Must be a filesystem type supported by the host operating system.
@@ -7114,10 +7495,13 @@ spec:
sensitive information. If this is not provided, Login operation will fail.
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -7127,6 +7511,7 @@ spec:
false
type: boolean
storageMode:
+ default: ThinProvisioned
description: |-
storageMode indicates whether the storage for a volume should be ThickProvisioned or ThinProvisioned.
Default is ThinProvisioned.
@@ -7197,6 +7582,7 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
optional:
description: optional field specify whether
the Secret or its keys must be defined
@@ -7228,10 +7614,13 @@ spec:
credentials. If not specified, default values will be attempted.
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -7280,6 +7669,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
required:
- containers
type: object
@@ -7311,6 +7703,16 @@ spec:
CleanPodPolicy defines the policy to kill pods after the job completes.
Default to None.
type: string
+ managedBy:
+ description: |-
+ ManagedBy is used to indicate the controller or entity that manages a job.
+ The value must be either an empty, 'kubeflow.org/training-operator' or
+ 'kueue.x-k8s.io/multikueue'.
+ The training-operator reconciles a job which doesn't have this
+ field at all or the field value is the reserved string
+ 'kubeflow.org/training-operator', but delegates reconciling the job
+ with 'kueue.x-k8s.
+ type: string
schedulingPolicy:
description: SchedulingPolicy defines the policy related to scheduling,
e.g. gang-scheduling
@@ -7458,11 +7860,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
diff --git a/charts/kubeflow/apps/training-operator/upstream/base/crds/kubeflow.org_paddlejobs.yaml b/charts/kubeflow/apps/training-operator/upstream/base/crds/kubeflow.org_paddlejobs.yaml
index c8a5acb..fbcf3f2 100644
--- a/charts/kubeflow/apps/training-operator/upstream/base/crds/kubeflow.org_paddlejobs.yaml
+++ b/charts/kubeflow/apps/training-operator/upstream/base/crds/kubeflow.org_paddlejobs.yaml
@@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
- controller-gen.kubebuilder.io/version: v0.14.0
+ controller-gen.kubebuilder.io/version: v0.16.5
name: paddlejobs.kubeflow.org
spec:
group: kubeflow.org
@@ -177,11 +177,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -300,11 +302,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -405,11 +409,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -639,11 +645,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchFields:
description: A list of node selector
requirements by node's fields.
@@ -671,11 +679,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
x-kubernetes-map-type: atomic
weight:
@@ -689,6 +699,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
description: |-
If the affinity requirements specified by this field are not met at
@@ -733,11 +744,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchFields:
description: A list of node selector
requirements by node's fields.
@@ -765,14 +778,17 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
x-kubernetes-map-type: atomic
type: array
+ x-kubernetes-list-type: atomic
required:
- nodeSelectorTerms
type: object
@@ -835,11 +851,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -854,7 +872,7 @@ spec:
description: |-
MatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
- incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
to select the group of existing pods which pods will be taken into consideration
for the incoming pod's pod (anti) affinity.
items:
@@ -865,7 +883,7 @@ spec:
description: |-
MismatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
- incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
to select the group of existing pods which pods will be taken into consideration
for the incoming pod's pod (anti) affinity.
items:
@@ -909,11 +927,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -933,6 +953,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
description: |-
This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
@@ -955,6 +976,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
description: |-
If the affinity requirements specified by this field are not met at
@@ -1004,11 +1026,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -1023,7 +1047,7 @@ spec:
description: |-
MatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
- incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
to select the group of existing pods which pods will be taken into consideration
for the incoming pod's pod (anti) affinity.
items:
@@ -1034,7 +1058,7 @@ spec:
description: |-
MismatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
- incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
to select the group of existing pods which pods will be taken into consideration
for the incoming pod's pod (anti) affinity.
items:
@@ -1077,11 +1101,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -1101,6 +1127,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
description: |-
This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
@@ -1113,6 +1140,7 @@ spec:
- topologyKey
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
podAntiAffinity:
description: Describes pod anti-affinity scheduling
@@ -1169,11 +1197,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -1188,7 +1218,7 @@ spec:
description: |-
MatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
- incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
to select the group of existing pods which pods will be taken into consideration
for the incoming pod's pod (anti) affinity.
items:
@@ -1199,7 +1229,7 @@ spec:
description: |-
MismatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
- incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
to select the group of existing pods which pods will be taken into consideration
for the incoming pod's pod (anti) affinity.
items:
@@ -1243,11 +1273,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -1267,6 +1299,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
description: |-
This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
@@ -1289,6 +1322,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
description: |-
If the anti-affinity requirements specified by this field are not met at
@@ -1338,11 +1372,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -1357,7 +1393,7 @@ spec:
description: |-
MatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
- incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
to select the group of existing pods which pods will be taken into consideration
for the incoming pod's pod (anti) affinity.
items:
@@ -1368,7 +1404,7 @@ spec:
description: |-
MismatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
- incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
to select the group of existing pods which pods will be taken into consideration
for the incoming pod's pod (anti) affinity.
items:
@@ -1411,11 +1447,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -1435,6 +1473,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
description: |-
This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
@@ -1447,6 +1486,7 @@ spec:
- topologyKey
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
type: object
automountServiceAccountToken:
@@ -1474,6 +1514,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
description: |-
Entrypoint array. Not executed within a shell.
@@ -1484,6 +1525,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
description: |-
List of environment variables to set in the container.
@@ -1517,10 +1559,13 @@ spec:
description: The key to select.
type: string
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the
@@ -1585,10 +1630,13 @@ spec:
secret key.
type: string
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the
@@ -1603,6 +1651,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
description: |-
List of sources to populate environment variables in the container.
@@ -1619,10 +1670,13 @@ spec:
description: The ConfigMap to select from
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the ConfigMap
@@ -1639,10 +1693,13 @@ spec:
description: The Secret to select from
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the Secret
@@ -1652,6 +1709,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
description: |-
Container image name.
@@ -1693,6 +1751,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
description: HTTPGet specifies the http
@@ -1726,6 +1785,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the
HTTP server.
@@ -1806,6 +1866,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
description: HTTPGet specifies the http
@@ -1839,6 +1900,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the
HTTP server.
@@ -1919,6 +1981,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -1936,11 +1999,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -1975,6 +2038,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -2127,6 +2191,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -2144,11 +2209,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -2183,6 +2248,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -2291,11 +2357,9 @@ spec:
Claims lists the names of resources, defined in spec.resourceClaims,
that are used by this container.
-
This is an alpha field and requires enabling the
DynamicResourceAllocation feature gate.
-
This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one
@@ -2307,6 +2371,12 @@ spec:
the Pod where this field is used. It makes that resource available
inside a container.
type: string
+ request:
+ description: |-
+ Request is the name chosen for a request in the referenced claim.
+ If empty, everything from the claim is made available, otherwise
+ only the result of this request.
+ type: string
required:
- name
type: object
@@ -2362,6 +2432,30 @@ spec:
2) has CAP_SYS_ADMIN
Note that this field cannot be set when spec.os.name is windows.
type: boolean
+ appArmorProfile:
+ description: |-
+ appArmorProfile is the AppArmor options to use by this container. If set, this profile
+ overrides the pod's appArmorProfile.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile loaded on the node that should be used.
+ The profile must be preconfigured on the node to work.
+ Must match the loaded name of the profile.
+ Must be set if and only if type is "Localhost".
+ type: string
+ type:
+ description: |-
+ type indicates which kind of AppArmor profile will be applied.
+ Valid options are:
+ Localhost - a profile pre-loaded on the node.
+ RuntimeDefault - the container runtime's default profile.
+ Unconfined - no AppArmor enforcement.
+ type: string
+ required:
+ - type
+ type: object
capabilities:
description: |-
The capabilities to add/drop when running containers.
@@ -2375,6 +2469,7 @@ spec:
capabilities type
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
description: Removed capabilities
items:
@@ -2382,6 +2477,7 @@ spec:
capabilities type
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
description: |-
@@ -2393,7 +2489,7 @@ spec:
procMount:
description: |-
procMount denotes the type of proc mount to use for the containers.
- The default is DefaultProcMount which uses the container runtime defaults for
+ The default value is Default which uses the container runtime defaults for
readonly paths and masked paths.
This requires the ProcMountType feature flag to be enabled.
Note that this field cannot be set when spec.os.name is windows.
@@ -2474,7 +2570,6 @@ spec:
type indicates which kind of seccomp profile will be applied.
Valid options are:
-
Localhost - a profile defined in a file on the node should be used.
RuntimeDefault - the container runtime default profile should be used.
Unconfined - no profile should be applied.
@@ -2536,6 +2631,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -2553,11 +2649,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -2592,6 +2688,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -2721,6 +2818,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
description: |-
Pod volumes to mount into the container's filesystem.
@@ -2740,6 +2840,8 @@ spec:
to container and the other way around.
When not set, MountPropagationNone is used.
This field is beta in 1.10.
+ When RecursiveReadOnly is set to IfPossible or to Enabled, MountPropagation must be None or unspecified
+ (which defaults to None).
type: string
name:
description: This must match the Name of
@@ -2750,6 +2852,17 @@ spec:
Mounted read-only if true, read-write otherwise (false or unspecified).
Defaults to false.
type: boolean
+ recursiveReadOnly:
+ description: |-
+ RecursiveReadOnly specifies whether read-only mounts should be handled
+ recursively.
+
+ If ReadOnly is false, this field has no meaning and must be unspecified.
+
+ If ReadOnly is true, and this field is set to Disabled, the mount is not made
+ recursively read-only. If this field is set to IfPossible, the mount is made
+ recursively read-only, if it is supported by the container runtime.
+ type: string
subPath:
description: |-
Path within the volume from which the container's volume should be mounted.
@@ -2767,6 +2880,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
description: |-
Container's working directory.
@@ -2778,6 +2894,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
dnsConfig:
description: |-
Specifies the DNS parameters of a pod.
@@ -2792,6 +2911,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
options:
description: |-
A list of DNS resolver options.
@@ -2809,6 +2929,7 @@ spec:
type: string
type: object
type: array
+ x-kubernetes-list-type: atomic
searches:
description: |-
A list of DNS search domains for host-name lookup.
@@ -2817,6 +2938,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
dnsPolicy:
description: |-
@@ -2858,6 +2980,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
description: |-
Entrypoint array. Not executed within a shell.
@@ -2868,6 +2991,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
description: |-
List of environment variables to set in the container.
@@ -2901,10 +3025,13 @@ spec:
description: The key to select.
type: string
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the
@@ -2969,10 +3096,13 @@ spec:
secret key.
type: string
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the
@@ -2987,6 +3117,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
description: |-
List of sources to populate environment variables in the container.
@@ -3003,10 +3136,13 @@ spec:
description: The ConfigMap to select from
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the ConfigMap
@@ -3023,10 +3159,13 @@ spec:
description: The Secret to select from
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the Secret
@@ -3036,6 +3175,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
description: |-
Container image name.
@@ -3074,6 +3214,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
description: HTTPGet specifies the http
@@ -3107,6 +3248,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the
HTTP server.
@@ -3187,6 +3329,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
description: HTTPGet specifies the http
@@ -3220,6 +3363,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the
HTTP server.
@@ -3297,6 +3441,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -3314,11 +3459,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -3353,6 +3498,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -3496,6 +3642,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -3513,11 +3660,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -3552,6 +3699,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -3659,11 +3807,9 @@ spec:
Claims lists the names of resources, defined in spec.resourceClaims,
that are used by this container.
-
This is an alpha field and requires enabling the
DynamicResourceAllocation feature gate.
-
This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one
@@ -3675,6 +3821,12 @@ spec:
the Pod where this field is used. It makes that resource available
inside a container.
type: string
+ request:
+ description: |-
+ Request is the name chosen for a request in the referenced claim.
+ If empty, everything from the claim is made available, otherwise
+ only the result of this request.
+ type: string
required:
- name
type: object
@@ -3729,6 +3881,30 @@ spec:
2) has CAP_SYS_ADMIN
Note that this field cannot be set when spec.os.name is windows.
type: boolean
+ appArmorProfile:
+ description: |-
+ appArmorProfile is the AppArmor options to use by this container. If set, this profile
+ overrides the pod's appArmorProfile.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile loaded on the node that should be used.
+ The profile must be preconfigured on the node to work.
+ Must match the loaded name of the profile.
+ Must be set if and only if type is "Localhost".
+ type: string
+ type:
+ description: |-
+ type indicates which kind of AppArmor profile will be applied.
+ Valid options are:
+ Localhost - a profile pre-loaded on the node.
+ RuntimeDefault - the container runtime's default profile.
+ Unconfined - no AppArmor enforcement.
+ type: string
+ required:
+ - type
+ type: object
capabilities:
description: |-
The capabilities to add/drop when running containers.
@@ -3742,6 +3918,7 @@ spec:
capabilities type
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
description: Removed capabilities
items:
@@ -3749,6 +3926,7 @@ spec:
capabilities type
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
description: |-
@@ -3760,7 +3938,7 @@ spec:
procMount:
description: |-
procMount denotes the type of proc mount to use for the containers.
- The default is DefaultProcMount which uses the container runtime defaults for
+ The default value is Default which uses the container runtime defaults for
readonly paths and masked paths.
This requires the ProcMountType feature flag to be enabled.
Note that this field cannot be set when spec.os.name is windows.
@@ -3841,7 +4019,6 @@ spec:
type indicates which kind of seccomp profile will be applied.
Valid options are:
-
Localhost - a profile defined in a file on the node should be used.
RuntimeDefault - the container runtime default profile should be used.
Unconfined - no profile should be applied.
@@ -3901,6 +4078,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -3918,11 +4096,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -3957,6 +4135,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -4050,7 +4229,6 @@ spec:
The ephemeral container will be run in the namespaces (IPC, PID, etc) of this container.
If not set then the ephemeral container uses the namespaces configured in the Pod spec.
-
The container runtime must implement support for this feature.
type: string
terminationMessagePath:
@@ -4095,6 +4273,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
description: |-
Pod volumes to mount into the container's filesystem. Subpath mounts are not allowed for ephemeral containers.
@@ -4114,6 +4295,8 @@ spec:
to container and the other way around.
When not set, MountPropagationNone is used.
This field is beta in 1.10.
+ When RecursiveReadOnly is set to IfPossible or to Enabled, MountPropagation must be None or unspecified
+ (which defaults to None).
type: string
name:
description: This must match the Name of
@@ -4124,6 +4307,17 @@ spec:
Mounted read-only if true, read-write otherwise (false or unspecified).
Defaults to false.
type: boolean
+ recursiveReadOnly:
+ description: |-
+ RecursiveReadOnly specifies whether read-only mounts should be handled
+ recursively.
+
+ If ReadOnly is false, this field has no meaning and must be unspecified.
+
+ If ReadOnly is true, and this field is set to Disabled, the mount is not made
+ recursively read-only. If this field is set to IfPossible, the mount is made
+ recursively read-only, if it is supported by the container runtime.
+ type: string
subPath:
description: |-
Path within the volume from which the container's volume should be mounted.
@@ -4141,6 +4335,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
description: |-
Container's working directory.
@@ -4152,10 +4349,13 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
hostAliases:
description: |-
HostAliases is an optional list of hosts and IPs that will be injected into the pod's hosts
- file if specified. This is only valid for non-hostNetwork pods.
+ file if specified.
items:
description: |-
HostAlias holds the mapping between IP and hostnames that will be injected as an entry in the
@@ -4166,11 +4366,17 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
ip:
description: IP address of the host file entry.
type: string
+ required:
+ - ip
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - ip
+ x-kubernetes-list-type: map
hostIPC:
description: |-
Use the host's ipc namespace.
@@ -4212,14 +4418,20 @@ spec:
referenced object inside the same namespace.
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
initContainers:
description: |-
List of initialization containers belonging to the pod.
@@ -4241,6 +4453,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
description: |-
Entrypoint array. Not executed within a shell.
@@ -4251,6 +4464,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
description: |-
List of environment variables to set in the container.
@@ -4284,10 +4498,13 @@ spec:
description: The key to select.
type: string
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the
@@ -4352,10 +4569,13 @@ spec:
secret key.
type: string
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the
@@ -4370,6 +4590,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
description: |-
List of sources to populate environment variables in the container.
@@ -4386,10 +4609,13 @@ spec:
description: The ConfigMap to select from
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the ConfigMap
@@ -4406,10 +4632,13 @@ spec:
description: The Secret to select from
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the Secret
@@ -4419,6 +4648,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
description: |-
Container image name.
@@ -4460,6 +4690,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
description: HTTPGet specifies the http
@@ -4493,6 +4724,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the
HTTP server.
@@ -4573,6 +4805,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
description: HTTPGet specifies the http
@@ -4606,6 +4839,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the
HTTP server.
@@ -4686,6 +4920,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -4703,11 +4938,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -4742,6 +4977,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -4894,6 +5130,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -4911,11 +5148,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -4950,6 +5187,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -5058,11 +5296,9 @@ spec:
Claims lists the names of resources, defined in spec.resourceClaims,
that are used by this container.
-
This is an alpha field and requires enabling the
DynamicResourceAllocation feature gate.
-
This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one
@@ -5074,6 +5310,12 @@ spec:
the Pod where this field is used. It makes that resource available
inside a container.
type: string
+ request:
+ description: |-
+ Request is the name chosen for a request in the referenced claim.
+ If empty, everything from the claim is made available, otherwise
+ only the result of this request.
+ type: string
required:
- name
type: object
@@ -5129,6 +5371,30 @@ spec:
2) has CAP_SYS_ADMIN
Note that this field cannot be set when spec.os.name is windows.
type: boolean
+ appArmorProfile:
+ description: |-
+ appArmorProfile is the AppArmor options to use by this container. If set, this profile
+ overrides the pod's appArmorProfile.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile loaded on the node that should be used.
+ The profile must be preconfigured on the node to work.
+ Must match the loaded name of the profile.
+ Must be set if and only if type is "Localhost".
+ type: string
+ type:
+ description: |-
+ type indicates which kind of AppArmor profile will be applied.
+ Valid options are:
+ Localhost - a profile pre-loaded on the node.
+ RuntimeDefault - the container runtime's default profile.
+ Unconfined - no AppArmor enforcement.
+ type: string
+ required:
+ - type
+ type: object
capabilities:
description: |-
The capabilities to add/drop when running containers.
@@ -5142,6 +5408,7 @@ spec:
capabilities type
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
description: Removed capabilities
items:
@@ -5149,6 +5416,7 @@ spec:
capabilities type
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
description: |-
@@ -5160,7 +5428,7 @@ spec:
procMount:
description: |-
procMount denotes the type of proc mount to use for the containers.
- The default is DefaultProcMount which uses the container runtime defaults for
+ The default value is Default which uses the container runtime defaults for
readonly paths and masked paths.
This requires the ProcMountType feature flag to be enabled.
Note that this field cannot be set when spec.os.name is windows.
@@ -5241,7 +5509,6 @@ spec:
type indicates which kind of seccomp profile will be applied.
Valid options are:
-
Localhost - a profile defined in a file on the node should be used.
RuntimeDefault - the container runtime default profile should be used.
Unconfined - no profile should be applied.
@@ -5303,6 +5570,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -5320,11 +5588,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -5359,6 +5627,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -5488,6 +5757,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
description: |-
Pod volumes to mount into the container's filesystem.
@@ -5507,6 +5779,8 @@ spec:
to container and the other way around.
When not set, MountPropagationNone is used.
This field is beta in 1.10.
+ When RecursiveReadOnly is set to IfPossible or to Enabled, MountPropagation must be None or unspecified
+ (which defaults to None).
type: string
name:
description: This must match the Name of
@@ -5517,6 +5791,17 @@ spec:
Mounted read-only if true, read-write otherwise (false or unspecified).
Defaults to false.
type: boolean
+ recursiveReadOnly:
+ description: |-
+ RecursiveReadOnly specifies whether read-only mounts should be handled
+ recursively.
+
+ If ReadOnly is false, this field has no meaning and must be unspecified.
+
+ If ReadOnly is true, and this field is set to Disabled, the mount is not made
+ recursively read-only. If this field is set to IfPossible, the mount is made
+ recursively read-only, if it is supported by the container runtime.
+ type: string
subPath:
description: |-
Path within the volume from which the container's volume should be mounted.
@@ -5534,6 +5819,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
description: |-
Container's working directory.
@@ -5545,11 +5833,16 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
nodeName:
description: |-
- 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.
+ NodeName indicates in which node this pod is scheduled.
+ If empty, this pod is a candidate for scheduling by the scheduler defined in schedulerName.
+ Once this field is set, the kubelet for this node becomes responsible for the lifecycle of this pod.
+ This field should not be used to express a desire for the pod to be scheduled on a specific node.
+ https://kubernetes.
type: string
nodeSelector:
additionalProperties:
@@ -5565,16 +5858,14 @@ spec:
Specifies the OS of the containers in the pod.
Some pod and container fields are restricted if this is set.
-
If the OS field is set to linux, the following fields must be unset:
-securityContext.windowsOptions
-
If the OS field is set to windows, following fields must be unset:
- spec.hostPID
- spec.hostIPC
- spec.hostUsers
- - spec.securityContext.seLinuxOptions
+ - spec.securityContext.appArmorProfile
- spec.securityContext.
properties:
name:
@@ -5643,6 +5934,7 @@ spec:
- conditionType
type: object
type: array
+ x-kubernetes-list-type: atomic
resourceClaims:
description: |-
ResourceClaims defines which ResourceClaims must be allocated
@@ -5650,15 +5942,16 @@ spec:
will be made available to those containers which consume them
by name.
-
This is an alpha field and requires enabling the
DynamicResourceAllocation feature gate.
-
This field is immutable.
items:
description: |-
- PodResourceClaim references exactly one ResourceClaim through a ClaimSource.
+ PodResourceClaim references exactly one ResourceClaim, either directly
+ or by naming a ResourceClaimTemplate which is then turned into a ResourceClaim
+ for the pod.
+
It adds a name to it that uniquely identifies the ResourceClaim inside the Pod.
Containers that need access to the ResourceClaim reference it with this name.
properties:
@@ -5667,26 +5960,23 @@ spec:
Name uniquely identifies this resource claim inside the pod.
This must be a DNS_LABEL.
type: string
- source:
- description: Source describes where to find the
- ResourceClaim.
- properties:
- resourceClaimName:
- description: |-
- ResourceClaimName is the name of a ResourceClaim object in the same
- namespace as this pod.
- type: string
- resourceClaimTemplateName:
- description: |-
- ResourceClaimTemplateName is the name of a ResourceClaimTemplate
- object in the same namespace as this pod.
+ resourceClaimName:
+ description: |-
+ ResourceClaimName is the name of a ResourceClaim object in the same
+ namespace as this pod.
+ Exactly one of ResourceClaimName and ResourceClaimTemplateName must
+ be set.
+ type: string
+ resourceClaimTemplateName:
+ description: |-
+ ResourceClaimTemplateName is the name of a ResourceClaimTemplate
+ object in the same namespace as this pod.
- The template will be used to create a new ResourceClaim, which will
- be bound to this pod. When this pod is deleted, the ResourceClaim
- will also be deleted.
- type: string
- type: object
+ The template will be used to create a new ResourceClaim, which will
+ be bound to this pod. When this pod is deleted, the ResourceClaim
+ will also be deleted.
+ type: string
required:
- name
type: object
@@ -5720,11 +6010,7 @@ spec:
If schedulingGates is not empty, the pod will stay in the SchedulingGated state and the
scheduler will not attempt to schedule the pod.
-
SchedulingGates can only be set at pod creation time, and be removed only afterwards.
-
-
- This is a beta feature enabled by the PodSchedulingReadiness feature gate.
items:
description: PodSchedulingGate is associated to a
Pod to guard its scheduling.
@@ -5746,13 +6032,35 @@ spec:
SecurityContext holds pod-level security attributes and common container settings.
Optional: Defaults to empty. See type description for default values of each field.
properties:
+ appArmorProfile:
+ description: |-
+ appArmorProfile is the AppArmor options to use by the containers in this pod.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile loaded on the node that should be used.
+ The profile must be preconfigured on the node to work.
+ Must match the loaded name of the profile.
+ Must be set if and only if type is "Localhost".
+ type: string
+ type:
+ description: |-
+ type indicates which kind of AppArmor profile will be applied.
+ Valid options are:
+ Localhost - a profile pre-loaded on the node.
+ RuntimeDefault - the container runtime's default profile.
+ Unconfined - no AppArmor enforcement.
+ type: string
+ required:
+ - type
+ type: object
fsGroup:
description: |-
A special supplemental group that applies to all containers in a pod.
Some volume types allow the Kubelet to change the ownership of that volume
to be owned by the pod:
-
1. The owning GID will be the FSGroup
2. The setgid bit is set (new files created in the volume will be owned by FSGroup)
3.
@@ -5838,7 +6146,6 @@ spec:
type indicates which kind of seccomp profile will be applied.
Valid options are:
-
Localhost - a profile defined in a file on the node should be used.
RuntimeDefault - the container runtime default profile should be used.
Unconfined - no profile should be applied.
@@ -5848,14 +6155,24 @@ spec:
type: object
supplementalGroups:
description: |-
- A list of groups applied to the first process run in each container, in addition
- to the container's primary GID, the fsGroup (if specified), and group memberships
- defined in the container image for the uid of the container process. If unspecified,
- no additional groups are added to any container.
+ A list of groups applied to the first process run in each container, in
+ addition to the container's primary GID and fsGroup (if specified). If
+ the SupplementalGroupsPolicy feature is enabled, the
+ supplementalGroupsPolicy field determines whether these are in addition
+ to or instead of any group memberships defined in the container image.
items:
format: int64
type: integer
type: array
+ x-kubernetes-list-type: atomic
+ supplementalGroupsPolicy:
+ description: |-
+ Defines how supplemental groups of the first container processes are calculated.
+ Valid values are "Merge" and "Strict". If not specified, "Merge" is used.
+ (Alpha) Using the field requires the SupplementalGroupsPolicy feature gate to be enabled
+ and the container runtime must implement support for this feature.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: string
sysctls:
description: |-
Sysctls hold a list of namespaced sysctls used for the pod. Pods with unsupported
@@ -5876,6 +6193,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
windowsOptions:
description: |-
The Windows specific settings applied to all containers.
@@ -5911,7 +6229,7 @@ spec:
type: object
serviceAccount:
description: |-
- DeprecatedServiceAccount is a depreciated alias for ServiceAccountName.
+ DeprecatedServiceAccount is a deprecated alias for ServiceAccountName.
Deprecated: Use serviceAccountName instead.
type: string
serviceAccountName:
@@ -5984,6 +6302,7 @@ spec:
type: string
type: object
type: array
+ x-kubernetes-list-type: atomic
topologySpreadConstraints:
description: |-
TopologySpreadConstraints describes how a group of pods ought to spread across topology
@@ -6026,11 +6345,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -6077,7 +6398,6 @@ spec:
- Honor: only nodes matching nodeAffinity/nodeSelector are included in the calculations.
- Ignore: nodeAffinity/nodeSelector are ignored. All nodes are included in the calculations.
-
If this value is nil, the behavior is equivalent to the Honor policy.
type: string
nodeTaintsPolicy:
@@ -6088,7 +6408,6 @@ spec:
has a toleration, are included.
- Ignore: node taints are ignored. All nodes are included.
-
If this value is nil, the behavior is equivalent to the Ignore policy.
type: string
topologyKey:
@@ -6139,7 +6458,6 @@ spec:
Tip: Ensure that the filesystem type is supported by the host operating system.
Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
- TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
partition:
description: |-
@@ -6180,6 +6498,7 @@ spec:
in the blob storage
type: string
fsType:
+ default: ext4
description: |-
fsType is Filesystem type to mount.
Must be a filesystem type supported by the host operating system.
@@ -6193,6 +6512,7 @@ spec:
availability set). defaults to shared'
type: string
readOnly:
+ default: false
description: |-
readOnly Defaults to false (read/write). ReadOnly here will force
the ReadOnly setting in VolumeMounts.
@@ -6235,6 +6555,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
path:
description: 'path is Optional: Used as the
mounted root, rather than the full Ceph
@@ -6257,10 +6578,13 @@ spec:
More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -6296,10 +6620,13 @@ spec:
to OpenStack.
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -6358,11 +6685,15 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional specify whether the
@@ -6395,10 +6726,13 @@ spec:
secret object contains more than one secret, all secret references are passed.
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -6442,7 +6776,7 @@ spec:
fieldRef:
description: 'Required: Selects a field
of the pod: only annotations, labels,
- name and namespace are supported.'
+ name, namespace and uid are supported.'
properties:
apiVersion:
description: Version of the schema
@@ -6504,6 +6838,7 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
emptyDir:
description: |-
@@ -6583,6 +6918,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
dataSource:
description: |-
dataSource field can be used to specify either:
@@ -6709,11 +7045,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -6761,7 +7099,6 @@ spec:
fsType is the filesystem type to mount.
Must be a filesystem type supported by the host operating system.
Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
- TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
lun:
description: 'lun is Optional: FC target lun
@@ -6779,6 +7116,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
wwids:
description: |-
wwids Optional: FC volume world wide identifiers (wwids)
@@ -6786,6 +7124,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
flexVolume:
description: |-
@@ -6822,10 +7161,13 @@ spec:
scripts.
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -6860,7 +7202,6 @@ spec:
Tip: Ensure that the filesystem type is supported by the host operating system.
Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
- TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
partition:
description: |-
@@ -6940,7 +7281,7 @@ spec:
machine that is directly exposed to the container. This is generally
used for system agents or other privileged things that are allowed
to see the host machine. Most containers will NOT need this.
- More info: https://kubernetes.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath
properties:
path:
description: |-
@@ -6957,6 +7298,29 @@ spec:
required:
- path
type: object
+ image:
+ description: |-
+ image represents an OCI object (a container image or artifact) pulled and mounted on the kubelet's host machine.
+ The volume is resolved at pod startup depending on which PullPolicy value is provided:
+
+ - Always: the kubelet always attempts to pull the reference. Container creation will fail If the pull fails.
+ - Never: the kubelet never pulls the reference and only uses a local image or artifact.
+ properties:
+ pullPolicy:
+ description: |-
+ Policy for pulling OCI objects. Possible values are:
+ Always: the kubelet always attempts to pull the reference. Container creation will fail If the pull fails.
+ Never: the kubelet never pulls the reference and only uses a local image or artifact. Container creation will fail if the reference isn't present.
+ IfNotPresent: the kubelet pulls if the reference isn't already present on disk.
+ type: string
+ reference:
+ description: |-
+ Required: Image or artifact reference to be used.
+ Behaves in the same way as pod.spec.containers[*].image.
+ Pull secrets will be assembled in the same way as for the container image by looking up node credentials, SA image pull secrets, and pod spec image pull secrets.
+ More info: https://kubernetes.
+ type: string
+ type: object
iscsi:
description: |-
iscsi represents an ISCSI Disk resource that is attached to a
@@ -6977,7 +7341,6 @@ spec:
Tip: Ensure that the filesystem type is supported by the host operating system.
Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
More info: https://kubernetes.io/docs/concepts/storage/volumes#iscsi
- TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
initiatorName:
description: |-
@@ -6990,6 +7353,7 @@ spec:
Name.
type: string
iscsiInterface:
+ default: default
description: |-
iscsiInterface is the interface Name that uses an iSCSI transport.
Defaults to 'default' (tcp).
@@ -7006,6 +7370,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
readOnly:
description: |-
readOnly here will force the ReadOnly setting in VolumeMounts.
@@ -7016,10 +7381,13 @@ spec:
for iSCSI target and initiator authentication
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -7137,21 +7505,21 @@ spec:
format: int32
type: integer
sources:
- description: sources is the list of volume
- projections
+ description: |-
+ sources is the list of volume projections. Each entry in this list
+ handles one source.
items:
- description: Projection that may be projected
- along with other supported volume types
+ description: |-
+ Projection that may be projected along with other supported volume types.
+ Exactly one of these fields must be set.
properties:
clusterTrustBundle:
description: |-
ClusterTrustBundle allows a pod to access the `.spec.trustBundle` field
of ClusterTrustBundle objects in an auto-updating file.
-
Alpha, gated by the ClusterTrustBundleProjection feature gate.
-
ClusterTrustBundle objects can either be selected by name, or by the
combination of signer name and a label selector.
properties:
@@ -7191,11 +7559,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -7271,11 +7641,15 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional specify whether
@@ -7300,8 +7674,8 @@ spec:
fieldRef:
description: 'Required: Selects
a field of the pod: only
- annotations, labels, name
- and namespace are supported.'
+ annotations, labels, name,
+ namespace and uid are supported.'
properties:
apiVersion:
description: Version of
@@ -7369,6 +7743,7 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
secret:
description: secret information about
@@ -7409,11 +7784,15 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional field specify
@@ -7454,6 +7833,7 @@ spec:
type: object
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
quobyte:
description: quobyte represents a Quobyte mount
@@ -7504,7 +7884,6 @@ spec:
Tip: Ensure that the filesystem type is supported by the host operating system.
Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
More info: https://kubernetes.io/docs/concepts/storage/volumes#rbd
- TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
image:
description: |-
@@ -7512,6 +7891,7 @@ spec:
More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
type: string
keyring:
+ default: /etc/ceph/keyring
description: |-
keyring is the path to key ring for RBDUser.
Default is /etc/ceph/keyring.
@@ -7524,7 +7904,9 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
pool:
+ default: rbd
description: |-
pool is the rados pool name.
Default is rbd.
@@ -7544,14 +7926,18 @@ spec:
More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
user:
+ default: admin
description: |-
user is the rados user name.
Default is admin.
@@ -7566,6 +7952,7 @@ spec:
volume attached and mounted on Kubernetes nodes.
properties:
fsType:
+ default: xfs
description: |-
fsType is the filesystem type to mount.
Must be a filesystem type supported by the host operating system.
@@ -7592,10 +7979,13 @@ spec:
sensitive information. If this is not provided, Login operation will fail.
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -7605,6 +7995,7 @@ spec:
false
type: boolean
storageMode:
+ default: ThinProvisioned
description: |-
storageMode indicates whether the storage for a volume should be ThickProvisioned or ThinProvisioned.
Default is ThinProvisioned.
@@ -7675,6 +8066,7 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
optional:
description: optional field specify whether
the Secret or its keys must be defined
@@ -7706,10 +8098,13 @@ spec:
credentials. If not specified, default values will be attempted.
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -7758,6 +8153,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
required:
- containers
type: object
@@ -7793,6 +8191,16 @@ spec:
CleanPodPolicy defines the policy to kill pods after the job completes.
Default to None.
type: string
+ managedBy:
+ description: |-
+ ManagedBy is used to indicate the controller or entity that manages a job.
+ The value must be either an empty, 'kubeflow.org/training-operator' or
+ 'kueue.x-k8s.io/multikueue'.
+ The training-operator reconciles a job which doesn't have this
+ field at all or the field value is the reserved string
+ 'kubeflow.org/training-operator', but delegates reconciling the job
+ with 'kueue.x-k8s.
+ type: string
schedulingPolicy:
description: SchedulingPolicy defines the policy related to scheduling,
e.g. gang-scheduling
@@ -7935,11 +8343,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
diff --git a/charts/kubeflow/apps/training-operator/upstream/base/crds/kubeflow.org_pytorchjobs.yaml b/charts/kubeflow/apps/training-operator/upstream/base/crds/kubeflow.org_pytorchjobs.yaml
index a5c261e..1f8c8bc 100644
--- a/charts/kubeflow/apps/training-operator/upstream/base/crds/kubeflow.org_pytorchjobs.yaml
+++ b/charts/kubeflow/apps/training-operator/upstream/base/crds/kubeflow.org_pytorchjobs.yaml
@@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
- controller-gen.kubebuilder.io/version: v0.14.0
+ controller-gen.kubebuilder.io/version: v0.16.5
name: pytorchjobs.kubeflow.org
spec:
group: kubeflow.org
@@ -174,11 +174,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -297,11 +299,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -402,11 +406,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -676,11 +682,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchFields:
description: A list of node selector
requirements by node's fields.
@@ -708,11 +716,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
x-kubernetes-map-type: atomic
weight:
@@ -726,6 +736,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
description: |-
If the affinity requirements specified by this field are not met at
@@ -770,11 +781,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchFields:
description: A list of node selector
requirements by node's fields.
@@ -802,14 +815,17 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
x-kubernetes-map-type: atomic
type: array
+ x-kubernetes-list-type: atomic
required:
- nodeSelectorTerms
type: object
@@ -872,11 +888,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -891,7 +909,7 @@ spec:
description: |-
MatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
- incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
to select the group of existing pods which pods will be taken into consideration
for the incoming pod's pod (anti) affinity.
items:
@@ -902,7 +920,7 @@ spec:
description: |-
MismatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
- incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
to select the group of existing pods which pods will be taken into consideration
for the incoming pod's pod (anti) affinity.
items:
@@ -946,11 +964,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -970,6 +990,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
description: |-
This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
@@ -992,6 +1013,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
description: |-
If the affinity requirements specified by this field are not met at
@@ -1041,11 +1063,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -1060,7 +1084,7 @@ spec:
description: |-
MatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
- incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
to select the group of existing pods which pods will be taken into consideration
for the incoming pod's pod (anti) affinity.
items:
@@ -1071,7 +1095,7 @@ spec:
description: |-
MismatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
- incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
to select the group of existing pods which pods will be taken into consideration
for the incoming pod's pod (anti) affinity.
items:
@@ -1114,11 +1138,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -1138,6 +1164,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
description: |-
This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
@@ -1150,6 +1177,7 @@ spec:
- topologyKey
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
podAntiAffinity:
description: Describes pod anti-affinity scheduling
@@ -1206,11 +1234,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -1225,7 +1255,7 @@ spec:
description: |-
MatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
- incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
to select the group of existing pods which pods will be taken into consideration
for the incoming pod's pod (anti) affinity.
items:
@@ -1236,7 +1266,7 @@ spec:
description: |-
MismatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
- incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
to select the group of existing pods which pods will be taken into consideration
for the incoming pod's pod (anti) affinity.
items:
@@ -1280,11 +1310,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -1304,6 +1336,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
description: |-
This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
@@ -1326,6 +1359,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
description: |-
If the anti-affinity requirements specified by this field are not met at
@@ -1375,11 +1409,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -1394,7 +1430,7 @@ spec:
description: |-
MatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
- incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
to select the group of existing pods which pods will be taken into consideration
for the incoming pod's pod (anti) affinity.
items:
@@ -1405,7 +1441,7 @@ spec:
description: |-
MismatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
- incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
to select the group of existing pods which pods will be taken into consideration
for the incoming pod's pod (anti) affinity.
items:
@@ -1448,11 +1484,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -1472,6 +1510,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
description: |-
This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
@@ -1484,6 +1523,7 @@ spec:
- topologyKey
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
type: object
automountServiceAccountToken:
@@ -1511,6 +1551,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
description: |-
Entrypoint array. Not executed within a shell.
@@ -1521,6 +1562,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
description: |-
List of environment variables to set in the container.
@@ -1554,10 +1596,13 @@ spec:
description: The key to select.
type: string
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the
@@ -1622,10 +1667,13 @@ spec:
secret key.
type: string
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the
@@ -1640,6 +1688,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
description: |-
List of sources to populate environment variables in the container.
@@ -1656,10 +1707,13 @@ spec:
description: The ConfigMap to select from
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the ConfigMap
@@ -1676,10 +1730,13 @@ spec:
description: The Secret to select from
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the Secret
@@ -1689,6 +1746,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
description: |-
Container image name.
@@ -1730,6 +1788,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
description: HTTPGet specifies the http
@@ -1763,6 +1822,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the
HTTP server.
@@ -1843,6 +1903,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
description: HTTPGet specifies the http
@@ -1876,6 +1937,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the
HTTP server.
@@ -1956,6 +2018,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -1973,11 +2036,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -2012,6 +2075,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -2164,6 +2228,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -2181,11 +2246,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -2220,6 +2285,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -2328,11 +2394,9 @@ spec:
Claims lists the names of resources, defined in spec.resourceClaims,
that are used by this container.
-
This is an alpha field and requires enabling the
DynamicResourceAllocation feature gate.
-
This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one
@@ -2344,6 +2408,12 @@ spec:
the Pod where this field is used. It makes that resource available
inside a container.
type: string
+ request:
+ description: |-
+ Request is the name chosen for a request in the referenced claim.
+ If empty, everything from the claim is made available, otherwise
+ only the result of this request.
+ type: string
required:
- name
type: object
@@ -2399,6 +2469,30 @@ spec:
2) has CAP_SYS_ADMIN
Note that this field cannot be set when spec.os.name is windows.
type: boolean
+ appArmorProfile:
+ description: |-
+ appArmorProfile is the AppArmor options to use by this container. If set, this profile
+ overrides the pod's appArmorProfile.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile loaded on the node that should be used.
+ The profile must be preconfigured on the node to work.
+ Must match the loaded name of the profile.
+ Must be set if and only if type is "Localhost".
+ type: string
+ type:
+ description: |-
+ type indicates which kind of AppArmor profile will be applied.
+ Valid options are:
+ Localhost - a profile pre-loaded on the node.
+ RuntimeDefault - the container runtime's default profile.
+ Unconfined - no AppArmor enforcement.
+ type: string
+ required:
+ - type
+ type: object
capabilities:
description: |-
The capabilities to add/drop when running containers.
@@ -2412,6 +2506,7 @@ spec:
capabilities type
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
description: Removed capabilities
items:
@@ -2419,6 +2514,7 @@ spec:
capabilities type
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
description: |-
@@ -2430,7 +2526,7 @@ spec:
procMount:
description: |-
procMount denotes the type of proc mount to use for the containers.
- The default is DefaultProcMount which uses the container runtime defaults for
+ The default value is Default which uses the container runtime defaults for
readonly paths and masked paths.
This requires the ProcMountType feature flag to be enabled.
Note that this field cannot be set when spec.os.name is windows.
@@ -2511,7 +2607,6 @@ spec:
type indicates which kind of seccomp profile will be applied.
Valid options are:
-
Localhost - a profile defined in a file on the node should be used.
RuntimeDefault - the container runtime default profile should be used.
Unconfined - no profile should be applied.
@@ -2573,6 +2668,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -2590,11 +2686,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -2629,6 +2725,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -2758,6 +2855,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
description: |-
Pod volumes to mount into the container's filesystem.
@@ -2777,6 +2877,8 @@ spec:
to container and the other way around.
When not set, MountPropagationNone is used.
This field is beta in 1.10.
+ When RecursiveReadOnly is set to IfPossible or to Enabled, MountPropagation must be None or unspecified
+ (which defaults to None).
type: string
name:
description: This must match the Name of
@@ -2787,6 +2889,17 @@ spec:
Mounted read-only if true, read-write otherwise (false or unspecified).
Defaults to false.
type: boolean
+ recursiveReadOnly:
+ description: |-
+ RecursiveReadOnly specifies whether read-only mounts should be handled
+ recursively.
+
+ If ReadOnly is false, this field has no meaning and must be unspecified.
+
+ If ReadOnly is true, and this field is set to Disabled, the mount is not made
+ recursively read-only. If this field is set to IfPossible, the mount is made
+ recursively read-only, if it is supported by the container runtime.
+ type: string
subPath:
description: |-
Path within the volume from which the container's volume should be mounted.
@@ -2804,6 +2917,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
description: |-
Container's working directory.
@@ -2815,6 +2931,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
dnsConfig:
description: |-
Specifies the DNS parameters of a pod.
@@ -2829,6 +2948,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
options:
description: |-
A list of DNS resolver options.
@@ -2846,6 +2966,7 @@ spec:
type: string
type: object
type: array
+ x-kubernetes-list-type: atomic
searches:
description: |-
A list of DNS search domains for host-name lookup.
@@ -2854,6 +2975,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
dnsPolicy:
description: |-
@@ -2895,6 +3017,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
description: |-
Entrypoint array. Not executed within a shell.
@@ -2905,6 +3028,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
description: |-
List of environment variables to set in the container.
@@ -2938,10 +3062,13 @@ spec:
description: The key to select.
type: string
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the
@@ -3006,10 +3133,13 @@ spec:
secret key.
type: string
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the
@@ -3024,6 +3154,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
description: |-
List of sources to populate environment variables in the container.
@@ -3040,10 +3173,13 @@ spec:
description: The ConfigMap to select from
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the ConfigMap
@@ -3060,10 +3196,13 @@ spec:
description: The Secret to select from
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the Secret
@@ -3073,6 +3212,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
description: |-
Container image name.
@@ -3111,6 +3251,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
description: HTTPGet specifies the http
@@ -3144,6 +3285,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the
HTTP server.
@@ -3224,6 +3366,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
description: HTTPGet specifies the http
@@ -3257,6 +3400,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the
HTTP server.
@@ -3334,6 +3478,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -3351,11 +3496,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -3390,6 +3535,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -3533,6 +3679,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -3550,11 +3697,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -3589,6 +3736,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -3696,11 +3844,9 @@ spec:
Claims lists the names of resources, defined in spec.resourceClaims,
that are used by this container.
-
This is an alpha field and requires enabling the
DynamicResourceAllocation feature gate.
-
This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one
@@ -3712,6 +3858,12 @@ spec:
the Pod where this field is used. It makes that resource available
inside a container.
type: string
+ request:
+ description: |-
+ Request is the name chosen for a request in the referenced claim.
+ If empty, everything from the claim is made available, otherwise
+ only the result of this request.
+ type: string
required:
- name
type: object
@@ -3766,6 +3918,30 @@ spec:
2) has CAP_SYS_ADMIN
Note that this field cannot be set when spec.os.name is windows.
type: boolean
+ appArmorProfile:
+ description: |-
+ appArmorProfile is the AppArmor options to use by this container. If set, this profile
+ overrides the pod's appArmorProfile.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile loaded on the node that should be used.
+ The profile must be preconfigured on the node to work.
+ Must match the loaded name of the profile.
+ Must be set if and only if type is "Localhost".
+ type: string
+ type:
+ description: |-
+ type indicates which kind of AppArmor profile will be applied.
+ Valid options are:
+ Localhost - a profile pre-loaded on the node.
+ RuntimeDefault - the container runtime's default profile.
+ Unconfined - no AppArmor enforcement.
+ type: string
+ required:
+ - type
+ type: object
capabilities:
description: |-
The capabilities to add/drop when running containers.
@@ -3779,6 +3955,7 @@ spec:
capabilities type
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
description: Removed capabilities
items:
@@ -3786,6 +3963,7 @@ spec:
capabilities type
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
description: |-
@@ -3797,7 +3975,7 @@ spec:
procMount:
description: |-
procMount denotes the type of proc mount to use for the containers.
- The default is DefaultProcMount which uses the container runtime defaults for
+ The default value is Default which uses the container runtime defaults for
readonly paths and masked paths.
This requires the ProcMountType feature flag to be enabled.
Note that this field cannot be set when spec.os.name is windows.
@@ -3878,7 +4056,6 @@ spec:
type indicates which kind of seccomp profile will be applied.
Valid options are:
-
Localhost - a profile defined in a file on the node should be used.
RuntimeDefault - the container runtime default profile should be used.
Unconfined - no profile should be applied.
@@ -3938,6 +4115,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -3955,11 +4133,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -3994,6 +4172,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -4087,7 +4266,6 @@ spec:
The ephemeral container will be run in the namespaces (IPC, PID, etc) of this container.
If not set then the ephemeral container uses the namespaces configured in the Pod spec.
-
The container runtime must implement support for this feature.
type: string
terminationMessagePath:
@@ -4132,6 +4310,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
description: |-
Pod volumes to mount into the container's filesystem. Subpath mounts are not allowed for ephemeral containers.
@@ -4151,6 +4332,8 @@ spec:
to container and the other way around.
When not set, MountPropagationNone is used.
This field is beta in 1.10.
+ When RecursiveReadOnly is set to IfPossible or to Enabled, MountPropagation must be None or unspecified
+ (which defaults to None).
type: string
name:
description: This must match the Name of
@@ -4161,6 +4344,17 @@ spec:
Mounted read-only if true, read-write otherwise (false or unspecified).
Defaults to false.
type: boolean
+ recursiveReadOnly:
+ description: |-
+ RecursiveReadOnly specifies whether read-only mounts should be handled
+ recursively.
+
+ If ReadOnly is false, this field has no meaning and must be unspecified.
+
+ If ReadOnly is true, and this field is set to Disabled, the mount is not made
+ recursively read-only. If this field is set to IfPossible, the mount is made
+ recursively read-only, if it is supported by the container runtime.
+ type: string
subPath:
description: |-
Path within the volume from which the container's volume should be mounted.
@@ -4178,6 +4372,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
description: |-
Container's working directory.
@@ -4189,10 +4386,13 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
hostAliases:
description: |-
HostAliases is an optional list of hosts and IPs that will be injected into the pod's hosts
- file if specified. This is only valid for non-hostNetwork pods.
+ file if specified.
items:
description: |-
HostAlias holds the mapping between IP and hostnames that will be injected as an entry in the
@@ -4203,11 +4403,17 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
ip:
description: IP address of the host file entry.
type: string
+ required:
+ - ip
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - ip
+ x-kubernetes-list-type: map
hostIPC:
description: |-
Use the host's ipc namespace.
@@ -4249,14 +4455,20 @@ spec:
referenced object inside the same namespace.
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
initContainers:
description: |-
List of initialization containers belonging to the pod.
@@ -4278,6 +4490,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
description: |-
Entrypoint array. Not executed within a shell.
@@ -4288,6 +4501,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
description: |-
List of environment variables to set in the container.
@@ -4321,10 +4535,13 @@ spec:
description: The key to select.
type: string
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the
@@ -4389,10 +4606,13 @@ spec:
secret key.
type: string
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the
@@ -4407,6 +4627,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
description: |-
List of sources to populate environment variables in the container.
@@ -4423,10 +4646,13 @@ spec:
description: The ConfigMap to select from
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the ConfigMap
@@ -4443,10 +4669,13 @@ spec:
description: The Secret to select from
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the Secret
@@ -4456,6 +4685,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
description: |-
Container image name.
@@ -4497,6 +4727,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
description: HTTPGet specifies the http
@@ -4530,6 +4761,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the
HTTP server.
@@ -4610,6 +4842,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
description: HTTPGet specifies the http
@@ -4643,6 +4876,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the
HTTP server.
@@ -4723,6 +4957,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -4740,11 +4975,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -4779,6 +5014,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -4931,6 +5167,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -4948,11 +5185,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -4987,6 +5224,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -5095,11 +5333,9 @@ spec:
Claims lists the names of resources, defined in spec.resourceClaims,
that are used by this container.
-
This is an alpha field and requires enabling the
DynamicResourceAllocation feature gate.
-
This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one
@@ -5111,6 +5347,12 @@ spec:
the Pod where this field is used. It makes that resource available
inside a container.
type: string
+ request:
+ description: |-
+ Request is the name chosen for a request in the referenced claim.
+ If empty, everything from the claim is made available, otherwise
+ only the result of this request.
+ type: string
required:
- name
type: object
@@ -5166,6 +5408,30 @@ spec:
2) has CAP_SYS_ADMIN
Note that this field cannot be set when spec.os.name is windows.
type: boolean
+ appArmorProfile:
+ description: |-
+ appArmorProfile is the AppArmor options to use by this container. If set, this profile
+ overrides the pod's appArmorProfile.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile loaded on the node that should be used.
+ The profile must be preconfigured on the node to work.
+ Must match the loaded name of the profile.
+ Must be set if and only if type is "Localhost".
+ type: string
+ type:
+ description: |-
+ type indicates which kind of AppArmor profile will be applied.
+ Valid options are:
+ Localhost - a profile pre-loaded on the node.
+ RuntimeDefault - the container runtime's default profile.
+ Unconfined - no AppArmor enforcement.
+ type: string
+ required:
+ - type
+ type: object
capabilities:
description: |-
The capabilities to add/drop when running containers.
@@ -5179,6 +5445,7 @@ spec:
capabilities type
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
description: Removed capabilities
items:
@@ -5186,6 +5453,7 @@ spec:
capabilities type
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
description: |-
@@ -5197,7 +5465,7 @@ spec:
procMount:
description: |-
procMount denotes the type of proc mount to use for the containers.
- The default is DefaultProcMount which uses the container runtime defaults for
+ The default value is Default which uses the container runtime defaults for
readonly paths and masked paths.
This requires the ProcMountType feature flag to be enabled.
Note that this field cannot be set when spec.os.name is windows.
@@ -5278,7 +5546,6 @@ spec:
type indicates which kind of seccomp profile will be applied.
Valid options are:
-
Localhost - a profile defined in a file on the node should be used.
RuntimeDefault - the container runtime default profile should be used.
Unconfined - no profile should be applied.
@@ -5340,6 +5607,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -5357,11 +5625,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -5396,6 +5664,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -5525,6 +5794,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
description: |-
Pod volumes to mount into the container's filesystem.
@@ -5544,6 +5816,8 @@ spec:
to container and the other way around.
When not set, MountPropagationNone is used.
This field is beta in 1.10.
+ When RecursiveReadOnly is set to IfPossible or to Enabled, MountPropagation must be None or unspecified
+ (which defaults to None).
type: string
name:
description: This must match the Name of
@@ -5554,6 +5828,17 @@ spec:
Mounted read-only if true, read-write otherwise (false or unspecified).
Defaults to false.
type: boolean
+ recursiveReadOnly:
+ description: |-
+ RecursiveReadOnly specifies whether read-only mounts should be handled
+ recursively.
+
+ If ReadOnly is false, this field has no meaning and must be unspecified.
+
+ If ReadOnly is true, and this field is set to Disabled, the mount is not made
+ recursively read-only. If this field is set to IfPossible, the mount is made
+ recursively read-only, if it is supported by the container runtime.
+ type: string
subPath:
description: |-
Path within the volume from which the container's volume should be mounted.
@@ -5571,6 +5856,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
description: |-
Container's working directory.
@@ -5582,11 +5870,16 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
nodeName:
description: |-
- 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.
+ NodeName indicates in which node this pod is scheduled.
+ If empty, this pod is a candidate for scheduling by the scheduler defined in schedulerName.
+ Once this field is set, the kubelet for this node becomes responsible for the lifecycle of this pod.
+ This field should not be used to express a desire for the pod to be scheduled on a specific node.
+ https://kubernetes.
type: string
nodeSelector:
additionalProperties:
@@ -5602,16 +5895,14 @@ spec:
Specifies the OS of the containers in the pod.
Some pod and container fields are restricted if this is set.
-
If the OS field is set to linux, the following fields must be unset:
-securityContext.windowsOptions
-
If the OS field is set to windows, following fields must be unset:
- spec.hostPID
- spec.hostIPC
- spec.hostUsers
- - spec.securityContext.seLinuxOptions
+ - spec.securityContext.appArmorProfile
- spec.securityContext.
properties:
name:
@@ -5680,6 +5971,7 @@ spec:
- conditionType
type: object
type: array
+ x-kubernetes-list-type: atomic
resourceClaims:
description: |-
ResourceClaims defines which ResourceClaims must be allocated
@@ -5687,15 +5979,16 @@ spec:
will be made available to those containers which consume them
by name.
-
This is an alpha field and requires enabling the
DynamicResourceAllocation feature gate.
-
This field is immutable.
items:
description: |-
- PodResourceClaim references exactly one ResourceClaim through a ClaimSource.
+ PodResourceClaim references exactly one ResourceClaim, either directly
+ or by naming a ResourceClaimTemplate which is then turned into a ResourceClaim
+ for the pod.
+
It adds a name to it that uniquely identifies the ResourceClaim inside the Pod.
Containers that need access to the ResourceClaim reference it with this name.
properties:
@@ -5704,26 +5997,23 @@ spec:
Name uniquely identifies this resource claim inside the pod.
This must be a DNS_LABEL.
type: string
- source:
- description: Source describes where to find the
- ResourceClaim.
- properties:
- resourceClaimName:
- description: |-
- ResourceClaimName is the name of a ResourceClaim object in the same
- namespace as this pod.
- type: string
- resourceClaimTemplateName:
- description: |-
- ResourceClaimTemplateName is the name of a ResourceClaimTemplate
- object in the same namespace as this pod.
+ resourceClaimName:
+ description: |-
+ ResourceClaimName is the name of a ResourceClaim object in the same
+ namespace as this pod.
+ Exactly one of ResourceClaimName and ResourceClaimTemplateName must
+ be set.
+ type: string
+ resourceClaimTemplateName:
+ description: |-
+ ResourceClaimTemplateName is the name of a ResourceClaimTemplate
+ object in the same namespace as this pod.
- The template will be used to create a new ResourceClaim, which will
- be bound to this pod. When this pod is deleted, the ResourceClaim
- will also be deleted.
- type: string
- type: object
+ The template will be used to create a new ResourceClaim, which will
+ be bound to this pod. When this pod is deleted, the ResourceClaim
+ will also be deleted.
+ type: string
required:
- name
type: object
@@ -5757,11 +6047,7 @@ spec:
If schedulingGates is not empty, the pod will stay in the SchedulingGated state and the
scheduler will not attempt to schedule the pod.
-
SchedulingGates can only be set at pod creation time, and be removed only afterwards.
-
-
- This is a beta feature enabled by the PodSchedulingReadiness feature gate.
items:
description: PodSchedulingGate is associated to a
Pod to guard its scheduling.
@@ -5783,13 +6069,35 @@ spec:
SecurityContext holds pod-level security attributes and common container settings.
Optional: Defaults to empty. See type description for default values of each field.
properties:
+ appArmorProfile:
+ description: |-
+ appArmorProfile is the AppArmor options to use by the containers in this pod.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile loaded on the node that should be used.
+ The profile must be preconfigured on the node to work.
+ Must match the loaded name of the profile.
+ Must be set if and only if type is "Localhost".
+ type: string
+ type:
+ description: |-
+ type indicates which kind of AppArmor profile will be applied.
+ Valid options are:
+ Localhost - a profile pre-loaded on the node.
+ RuntimeDefault - the container runtime's default profile.
+ Unconfined - no AppArmor enforcement.
+ type: string
+ required:
+ - type
+ type: object
fsGroup:
description: |-
A special supplemental group that applies to all containers in a pod.
Some volume types allow the Kubelet to change the ownership of that volume
to be owned by the pod:
-
1. The owning GID will be the FSGroup
2. The setgid bit is set (new files created in the volume will be owned by FSGroup)
3.
@@ -5875,7 +6183,6 @@ spec:
type indicates which kind of seccomp profile will be applied.
Valid options are:
-
Localhost - a profile defined in a file on the node should be used.
RuntimeDefault - the container runtime default profile should be used.
Unconfined - no profile should be applied.
@@ -5885,14 +6192,24 @@ spec:
type: object
supplementalGroups:
description: |-
- A list of groups applied to the first process run in each container, in addition
- to the container's primary GID, the fsGroup (if specified), and group memberships
- defined in the container image for the uid of the container process. If unspecified,
- no additional groups are added to any container.
+ A list of groups applied to the first process run in each container, in
+ addition to the container's primary GID and fsGroup (if specified). If
+ the SupplementalGroupsPolicy feature is enabled, the
+ supplementalGroupsPolicy field determines whether these are in addition
+ to or instead of any group memberships defined in the container image.
items:
format: int64
type: integer
type: array
+ x-kubernetes-list-type: atomic
+ supplementalGroupsPolicy:
+ description: |-
+ Defines how supplemental groups of the first container processes are calculated.
+ Valid values are "Merge" and "Strict". If not specified, "Merge" is used.
+ (Alpha) Using the field requires the SupplementalGroupsPolicy feature gate to be enabled
+ and the container runtime must implement support for this feature.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: string
sysctls:
description: |-
Sysctls hold a list of namespaced sysctls used for the pod. Pods with unsupported
@@ -5913,6 +6230,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
windowsOptions:
description: |-
The Windows specific settings applied to all containers.
@@ -5948,7 +6266,7 @@ spec:
type: object
serviceAccount:
description: |-
- DeprecatedServiceAccount is a depreciated alias for ServiceAccountName.
+ DeprecatedServiceAccount is a deprecated alias for ServiceAccountName.
Deprecated: Use serviceAccountName instead.
type: string
serviceAccountName:
@@ -6021,6 +6339,7 @@ spec:
type: string
type: object
type: array
+ x-kubernetes-list-type: atomic
topologySpreadConstraints:
description: |-
TopologySpreadConstraints describes how a group of pods ought to spread across topology
@@ -6063,11 +6382,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -6114,7 +6435,6 @@ spec:
- Honor: only nodes matching nodeAffinity/nodeSelector are included in the calculations.
- Ignore: nodeAffinity/nodeSelector are ignored. All nodes are included in the calculations.
-
If this value is nil, the behavior is equivalent to the Honor policy.
type: string
nodeTaintsPolicy:
@@ -6125,7 +6445,6 @@ spec:
has a toleration, are included.
- Ignore: node taints are ignored. All nodes are included.
-
If this value is nil, the behavior is equivalent to the Ignore policy.
type: string
topologyKey:
@@ -6176,7 +6495,6 @@ spec:
Tip: Ensure that the filesystem type is supported by the host operating system.
Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
- TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
partition:
description: |-
@@ -6217,6 +6535,7 @@ spec:
in the blob storage
type: string
fsType:
+ default: ext4
description: |-
fsType is Filesystem type to mount.
Must be a filesystem type supported by the host operating system.
@@ -6230,6 +6549,7 @@ spec:
availability set). defaults to shared'
type: string
readOnly:
+ default: false
description: |-
readOnly Defaults to false (read/write). ReadOnly here will force
the ReadOnly setting in VolumeMounts.
@@ -6272,6 +6592,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
path:
description: 'path is Optional: Used as the
mounted root, rather than the full Ceph
@@ -6294,10 +6615,13 @@ spec:
More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -6333,10 +6657,13 @@ spec:
to OpenStack.
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -6395,11 +6722,15 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional specify whether the
@@ -6432,10 +6763,13 @@ spec:
secret object contains more than one secret, all secret references are passed.
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -6479,7 +6813,7 @@ spec:
fieldRef:
description: 'Required: Selects a field
of the pod: only annotations, labels,
- name and namespace are supported.'
+ name, namespace and uid are supported.'
properties:
apiVersion:
description: Version of the schema
@@ -6541,6 +6875,7 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
emptyDir:
description: |-
@@ -6620,6 +6955,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
dataSource:
description: |-
dataSource field can be used to specify either:
@@ -6746,11 +7082,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -6798,7 +7136,6 @@ spec:
fsType is the filesystem type to mount.
Must be a filesystem type supported by the host operating system.
Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
- TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
lun:
description: 'lun is Optional: FC target lun
@@ -6816,6 +7153,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
wwids:
description: |-
wwids Optional: FC volume world wide identifiers (wwids)
@@ -6823,6 +7161,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
flexVolume:
description: |-
@@ -6859,10 +7198,13 @@ spec:
scripts.
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -6897,7 +7239,6 @@ spec:
Tip: Ensure that the filesystem type is supported by the host operating system.
Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
- TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
partition:
description: |-
@@ -6977,7 +7318,7 @@ spec:
machine that is directly exposed to the container. This is generally
used for system agents or other privileged things that are allowed
to see the host machine. Most containers will NOT need this.
- More info: https://kubernetes.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath
properties:
path:
description: |-
@@ -6994,6 +7335,29 @@ spec:
required:
- path
type: object
+ image:
+ description: |-
+ image represents an OCI object (a container image or artifact) pulled and mounted on the kubelet's host machine.
+ The volume is resolved at pod startup depending on which PullPolicy value is provided:
+
+ - Always: the kubelet always attempts to pull the reference. Container creation will fail If the pull fails.
+ - Never: the kubelet never pulls the reference and only uses a local image or artifact.
+ properties:
+ pullPolicy:
+ description: |-
+ Policy for pulling OCI objects. Possible values are:
+ Always: the kubelet always attempts to pull the reference. Container creation will fail If the pull fails.
+ Never: the kubelet never pulls the reference and only uses a local image or artifact. Container creation will fail if the reference isn't present.
+ IfNotPresent: the kubelet pulls if the reference isn't already present on disk.
+ type: string
+ reference:
+ description: |-
+ Required: Image or artifact reference to be used.
+ Behaves in the same way as pod.spec.containers[*].image.
+ Pull secrets will be assembled in the same way as for the container image by looking up node credentials, SA image pull secrets, and pod spec image pull secrets.
+ More info: https://kubernetes.
+ type: string
+ type: object
iscsi:
description: |-
iscsi represents an ISCSI Disk resource that is attached to a
@@ -7014,7 +7378,6 @@ spec:
Tip: Ensure that the filesystem type is supported by the host operating system.
Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
More info: https://kubernetes.io/docs/concepts/storage/volumes#iscsi
- TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
initiatorName:
description: |-
@@ -7027,6 +7390,7 @@ spec:
Name.
type: string
iscsiInterface:
+ default: default
description: |-
iscsiInterface is the interface Name that uses an iSCSI transport.
Defaults to 'default' (tcp).
@@ -7043,6 +7407,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
readOnly:
description: |-
readOnly here will force the ReadOnly setting in VolumeMounts.
@@ -7053,10 +7418,13 @@ spec:
for iSCSI target and initiator authentication
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -7174,21 +7542,21 @@ spec:
format: int32
type: integer
sources:
- description: sources is the list of volume
- projections
+ description: |-
+ sources is the list of volume projections. Each entry in this list
+ handles one source.
items:
- description: Projection that may be projected
- along with other supported volume types
+ description: |-
+ Projection that may be projected along with other supported volume types.
+ Exactly one of these fields must be set.
properties:
clusterTrustBundle:
description: |-
ClusterTrustBundle allows a pod to access the `.spec.trustBundle` field
of ClusterTrustBundle objects in an auto-updating file.
-
Alpha, gated by the ClusterTrustBundleProjection feature gate.
-
ClusterTrustBundle objects can either be selected by name, or by the
combination of signer name and a label selector.
properties:
@@ -7228,11 +7596,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -7308,11 +7678,15 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional specify whether
@@ -7337,8 +7711,8 @@ spec:
fieldRef:
description: 'Required: Selects
a field of the pod: only
- annotations, labels, name
- and namespace are supported.'
+ annotations, labels, name,
+ namespace and uid are supported.'
properties:
apiVersion:
description: Version of
@@ -7406,6 +7780,7 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
secret:
description: secret information about
@@ -7446,11 +7821,15 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional field specify
@@ -7491,6 +7870,7 @@ spec:
type: object
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
quobyte:
description: quobyte represents a Quobyte mount
@@ -7541,7 +7921,6 @@ spec:
Tip: Ensure that the filesystem type is supported by the host operating system.
Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
More info: https://kubernetes.io/docs/concepts/storage/volumes#rbd
- TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
image:
description: |-
@@ -7549,6 +7928,7 @@ spec:
More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
type: string
keyring:
+ default: /etc/ceph/keyring
description: |-
keyring is the path to key ring for RBDUser.
Default is /etc/ceph/keyring.
@@ -7561,7 +7941,9 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
pool:
+ default: rbd
description: |-
pool is the rados pool name.
Default is rbd.
@@ -7581,14 +7963,18 @@ spec:
More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
user:
+ default: admin
description: |-
user is the rados user name.
Default is admin.
@@ -7603,6 +7989,7 @@ spec:
volume attached and mounted on Kubernetes nodes.
properties:
fsType:
+ default: xfs
description: |-
fsType is the filesystem type to mount.
Must be a filesystem type supported by the host operating system.
@@ -7629,10 +8016,13 @@ spec:
sensitive information. If this is not provided, Login operation will fail.
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -7642,6 +8032,7 @@ spec:
false
type: boolean
storageMode:
+ default: ThinProvisioned
description: |-
storageMode indicates whether the storage for a volume should be ThickProvisioned or ThinProvisioned.
Default is ThinProvisioned.
@@ -7712,6 +8103,7 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
optional:
description: optional field specify whether
the Secret or its keys must be defined
@@ -7743,10 +8135,13 @@ spec:
credentials. If not specified, default values will be attempted.
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -7795,6 +8190,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
required:
- containers
type: object
@@ -7830,6 +8228,16 @@ spec:
CleanPodPolicy defines the policy to kill pods after the job completes.
Default to None.
type: string
+ managedBy:
+ description: |-
+ ManagedBy is used to indicate the controller or entity that manages a job.
+ The value must be either an empty, 'kubeflow.org/training-operator' or
+ 'kueue.x-k8s.io/multikueue'.
+ The training-operator reconciles a job which doesn't have this
+ field at all or the field value is the reserved string
+ 'kubeflow.org/training-operator', but delegates reconciling the job
+ with 'kueue.x-k8s.
+ type: string
schedulingPolicy:
description: SchedulingPolicy defines the policy related to scheduling,
e.g. gang-scheduling
@@ -7972,11 +8380,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
diff --git a/charts/kubeflow/apps/training-operator/upstream/base/crds/kubeflow.org_tfjobs.yaml b/charts/kubeflow/apps/training-operator/upstream/base/crds/kubeflow.org_tfjobs.yaml
index 153243a..a5e75ee 100644
--- a/charts/kubeflow/apps/training-operator/upstream/base/crds/kubeflow.org_tfjobs.yaml
+++ b/charts/kubeflow/apps/training-operator/upstream/base/crds/kubeflow.org_tfjobs.yaml
@@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
- controller-gen.kubebuilder.io/version: v0.14.0
+ controller-gen.kubebuilder.io/version: v0.16.5
name: tfjobs.kubeflow.org
spec:
group: kubeflow.org
@@ -71,6 +71,16 @@ spec:
CleanPodPolicy defines the policy to kill pods after the job completes.
Default to None.
type: string
+ managedBy:
+ description: |-
+ ManagedBy is used to indicate the controller or entity that manages a job.
+ The value must be either an empty, 'kubeflow.org/training-operator' or
+ 'kueue.x-k8s.io/multikueue'.
+ The training-operator reconciles a job which doesn't have this
+ field at all or the field value is the reserved string
+ 'kubeflow.org/training-operator', but delegates reconciling the job
+ with 'kueue.x-k8s.
+ type: string
schedulingPolicy:
description: SchedulingPolicy defines the policy related to scheduling,
e.g. gang-scheduling
@@ -228,11 +238,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchFields:
description: A list of node selector
requirements by node's fields.
@@ -260,11 +272,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
x-kubernetes-map-type: atomic
weight:
@@ -278,6 +292,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
description: |-
If the affinity requirements specified by this field are not met at
@@ -322,11 +337,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchFields:
description: A list of node selector
requirements by node's fields.
@@ -354,14 +371,17 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
x-kubernetes-map-type: atomic
type: array
+ x-kubernetes-list-type: atomic
required:
- nodeSelectorTerms
type: object
@@ -424,11 +444,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -443,7 +465,7 @@ spec:
description: |-
MatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
- incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
to select the group of existing pods which pods will be taken into consideration
for the incoming pod's pod (anti) affinity.
items:
@@ -454,7 +476,7 @@ spec:
description: |-
MismatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
- incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
to select the group of existing pods which pods will be taken into consideration
for the incoming pod's pod (anti) affinity.
items:
@@ -498,11 +520,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -522,6 +546,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
description: |-
This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
@@ -544,6 +569,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
description: |-
If the affinity requirements specified by this field are not met at
@@ -593,11 +619,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -612,7 +640,7 @@ spec:
description: |-
MatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
- incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
to select the group of existing pods which pods will be taken into consideration
for the incoming pod's pod (anti) affinity.
items:
@@ -623,7 +651,7 @@ spec:
description: |-
MismatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
- incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
to select the group of existing pods which pods will be taken into consideration
for the incoming pod's pod (anti) affinity.
items:
@@ -666,11 +694,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -690,6 +720,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
description: |-
This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
@@ -702,6 +733,7 @@ spec:
- topologyKey
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
podAntiAffinity:
description: Describes pod anti-affinity scheduling
@@ -758,11 +790,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -777,7 +811,7 @@ spec:
description: |-
MatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
- incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
to select the group of existing pods which pods will be taken into consideration
for the incoming pod's pod (anti) affinity.
items:
@@ -788,7 +822,7 @@ spec:
description: |-
MismatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
- incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
to select the group of existing pods which pods will be taken into consideration
for the incoming pod's pod (anti) affinity.
items:
@@ -832,11 +866,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -856,6 +892,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
description: |-
This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
@@ -878,6 +915,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
description: |-
If the anti-affinity requirements specified by this field are not met at
@@ -927,11 +965,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -946,7 +986,7 @@ spec:
description: |-
MatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
- incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
to select the group of existing pods which pods will be taken into consideration
for the incoming pod's pod (anti) affinity.
items:
@@ -957,7 +997,7 @@ spec:
description: |-
MismatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
- incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
to select the group of existing pods which pods will be taken into consideration
for the incoming pod's pod (anti) affinity.
items:
@@ -1000,11 +1040,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -1024,6 +1066,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
description: |-
This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
@@ -1036,6 +1079,7 @@ spec:
- topologyKey
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
type: object
automountServiceAccountToken:
@@ -1063,6 +1107,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
description: |-
Entrypoint array. Not executed within a shell.
@@ -1073,6 +1118,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
description: |-
List of environment variables to set in the container.
@@ -1106,10 +1152,13 @@ spec:
description: The key to select.
type: string
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the
@@ -1174,10 +1223,13 @@ spec:
secret key.
type: string
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the
@@ -1192,6 +1244,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
description: |-
List of sources to populate environment variables in the container.
@@ -1208,10 +1263,13 @@ spec:
description: The ConfigMap to select from
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the ConfigMap
@@ -1228,10 +1286,13 @@ spec:
description: The Secret to select from
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the Secret
@@ -1241,6 +1302,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
description: |-
Container image name.
@@ -1282,6 +1344,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
description: HTTPGet specifies the http
@@ -1315,6 +1378,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the
HTTP server.
@@ -1395,6 +1459,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
description: HTTPGet specifies the http
@@ -1428,6 +1493,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the
HTTP server.
@@ -1508,6 +1574,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -1525,11 +1592,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -1564,6 +1631,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -1716,6 +1784,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -1733,11 +1802,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -1772,6 +1841,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -1880,11 +1950,9 @@ spec:
Claims lists the names of resources, defined in spec.resourceClaims,
that are used by this container.
-
This is an alpha field and requires enabling the
DynamicResourceAllocation feature gate.
-
This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one
@@ -1896,6 +1964,12 @@ spec:
the Pod where this field is used. It makes that resource available
inside a container.
type: string
+ request:
+ description: |-
+ Request is the name chosen for a request in the referenced claim.
+ If empty, everything from the claim is made available, otherwise
+ only the result of this request.
+ type: string
required:
- name
type: object
@@ -1951,6 +2025,30 @@ spec:
2) has CAP_SYS_ADMIN
Note that this field cannot be set when spec.os.name is windows.
type: boolean
+ appArmorProfile:
+ description: |-
+ appArmorProfile is the AppArmor options to use by this container. If set, this profile
+ overrides the pod's appArmorProfile.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile loaded on the node that should be used.
+ The profile must be preconfigured on the node to work.
+ Must match the loaded name of the profile.
+ Must be set if and only if type is "Localhost".
+ type: string
+ type:
+ description: |-
+ type indicates which kind of AppArmor profile will be applied.
+ Valid options are:
+ Localhost - a profile pre-loaded on the node.
+ RuntimeDefault - the container runtime's default profile.
+ Unconfined - no AppArmor enforcement.
+ type: string
+ required:
+ - type
+ type: object
capabilities:
description: |-
The capabilities to add/drop when running containers.
@@ -1964,6 +2062,7 @@ spec:
capabilities type
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
description: Removed capabilities
items:
@@ -1971,6 +2070,7 @@ spec:
capabilities type
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
description: |-
@@ -1982,7 +2082,7 @@ spec:
procMount:
description: |-
procMount denotes the type of proc mount to use for the containers.
- The default is DefaultProcMount which uses the container runtime defaults for
+ The default value is Default which uses the container runtime defaults for
readonly paths and masked paths.
This requires the ProcMountType feature flag to be enabled.
Note that this field cannot be set when spec.os.name is windows.
@@ -2063,7 +2163,6 @@ spec:
type indicates which kind of seccomp profile will be applied.
Valid options are:
-
Localhost - a profile defined in a file on the node should be used.
RuntimeDefault - the container runtime default profile should be used.
Unconfined - no profile should be applied.
@@ -2125,6 +2224,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -2142,11 +2242,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -2181,6 +2281,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -2310,6 +2411,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
description: |-
Pod volumes to mount into the container's filesystem.
@@ -2329,6 +2433,8 @@ spec:
to container and the other way around.
When not set, MountPropagationNone is used.
This field is beta in 1.10.
+ When RecursiveReadOnly is set to IfPossible or to Enabled, MountPropagation must be None or unspecified
+ (which defaults to None).
type: string
name:
description: This must match the Name of
@@ -2339,6 +2445,17 @@ spec:
Mounted read-only if true, read-write otherwise (false or unspecified).
Defaults to false.
type: boolean
+ recursiveReadOnly:
+ description: |-
+ RecursiveReadOnly specifies whether read-only mounts should be handled
+ recursively.
+
+ If ReadOnly is false, this field has no meaning and must be unspecified.
+
+ If ReadOnly is true, and this field is set to Disabled, the mount is not made
+ recursively read-only. If this field is set to IfPossible, the mount is made
+ recursively read-only, if it is supported by the container runtime.
+ type: string
subPath:
description: |-
Path within the volume from which the container's volume should be mounted.
@@ -2356,6 +2473,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
description: |-
Container's working directory.
@@ -2367,6 +2487,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
dnsConfig:
description: |-
Specifies the DNS parameters of a pod.
@@ -2381,6 +2504,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
options:
description: |-
A list of DNS resolver options.
@@ -2398,6 +2522,7 @@ spec:
type: string
type: object
type: array
+ x-kubernetes-list-type: atomic
searches:
description: |-
A list of DNS search domains for host-name lookup.
@@ -2406,6 +2531,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
dnsPolicy:
description: |-
@@ -2447,6 +2573,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
description: |-
Entrypoint array. Not executed within a shell.
@@ -2457,6 +2584,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
description: |-
List of environment variables to set in the container.
@@ -2490,10 +2618,13 @@ spec:
description: The key to select.
type: string
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the
@@ -2558,10 +2689,13 @@ spec:
secret key.
type: string
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the
@@ -2576,6 +2710,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
description: |-
List of sources to populate environment variables in the container.
@@ -2592,10 +2729,13 @@ spec:
description: The ConfigMap to select from
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the ConfigMap
@@ -2612,10 +2752,13 @@ spec:
description: The Secret to select from
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the Secret
@@ -2625,6 +2768,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
description: |-
Container image name.
@@ -2663,6 +2807,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
description: HTTPGet specifies the http
@@ -2696,6 +2841,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the
HTTP server.
@@ -2776,6 +2922,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
description: HTTPGet specifies the http
@@ -2809,6 +2956,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the
HTTP server.
@@ -2886,6 +3034,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -2903,11 +3052,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -2942,6 +3091,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -3085,6 +3235,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -3102,11 +3253,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -3141,6 +3292,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -3248,11 +3400,9 @@ spec:
Claims lists the names of resources, defined in spec.resourceClaims,
that are used by this container.
-
This is an alpha field and requires enabling the
DynamicResourceAllocation feature gate.
-
This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one
@@ -3264,6 +3414,12 @@ spec:
the Pod where this field is used. It makes that resource available
inside a container.
type: string
+ request:
+ description: |-
+ Request is the name chosen for a request in the referenced claim.
+ If empty, everything from the claim is made available, otherwise
+ only the result of this request.
+ type: string
required:
- name
type: object
@@ -3318,6 +3474,30 @@ spec:
2) has CAP_SYS_ADMIN
Note that this field cannot be set when spec.os.name is windows.
type: boolean
+ appArmorProfile:
+ description: |-
+ appArmorProfile is the AppArmor options to use by this container. If set, this profile
+ overrides the pod's appArmorProfile.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile loaded on the node that should be used.
+ The profile must be preconfigured on the node to work.
+ Must match the loaded name of the profile.
+ Must be set if and only if type is "Localhost".
+ type: string
+ type:
+ description: |-
+ type indicates which kind of AppArmor profile will be applied.
+ Valid options are:
+ Localhost - a profile pre-loaded on the node.
+ RuntimeDefault - the container runtime's default profile.
+ Unconfined - no AppArmor enforcement.
+ type: string
+ required:
+ - type
+ type: object
capabilities:
description: |-
The capabilities to add/drop when running containers.
@@ -3331,6 +3511,7 @@ spec:
capabilities type
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
description: Removed capabilities
items:
@@ -3338,6 +3519,7 @@ spec:
capabilities type
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
description: |-
@@ -3349,7 +3531,7 @@ spec:
procMount:
description: |-
procMount denotes the type of proc mount to use for the containers.
- The default is DefaultProcMount which uses the container runtime defaults for
+ The default value is Default which uses the container runtime defaults for
readonly paths and masked paths.
This requires the ProcMountType feature flag to be enabled.
Note that this field cannot be set when spec.os.name is windows.
@@ -3430,7 +3612,6 @@ spec:
type indicates which kind of seccomp profile will be applied.
Valid options are:
-
Localhost - a profile defined in a file on the node should be used.
RuntimeDefault - the container runtime default profile should be used.
Unconfined - no profile should be applied.
@@ -3490,6 +3671,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -3507,11 +3689,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -3546,6 +3728,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -3639,7 +3822,6 @@ spec:
The ephemeral container will be run in the namespaces (IPC, PID, etc) of this container.
If not set then the ephemeral container uses the namespaces configured in the Pod spec.
-
The container runtime must implement support for this feature.
type: string
terminationMessagePath:
@@ -3684,6 +3866,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
description: |-
Pod volumes to mount into the container's filesystem. Subpath mounts are not allowed for ephemeral containers.
@@ -3703,6 +3888,8 @@ spec:
to container and the other way around.
When not set, MountPropagationNone is used.
This field is beta in 1.10.
+ When RecursiveReadOnly is set to IfPossible or to Enabled, MountPropagation must be None or unspecified
+ (which defaults to None).
type: string
name:
description: This must match the Name of
@@ -3713,6 +3900,17 @@ spec:
Mounted read-only if true, read-write otherwise (false or unspecified).
Defaults to false.
type: boolean
+ recursiveReadOnly:
+ description: |-
+ RecursiveReadOnly specifies whether read-only mounts should be handled
+ recursively.
+
+ If ReadOnly is false, this field has no meaning and must be unspecified.
+
+ If ReadOnly is true, and this field is set to Disabled, the mount is not made
+ recursively read-only. If this field is set to IfPossible, the mount is made
+ recursively read-only, if it is supported by the container runtime.
+ type: string
subPath:
description: |-
Path within the volume from which the container's volume should be mounted.
@@ -3730,6 +3928,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
description: |-
Container's working directory.
@@ -3741,10 +3942,13 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
hostAliases:
description: |-
HostAliases is an optional list of hosts and IPs that will be injected into the pod's hosts
- file if specified. This is only valid for non-hostNetwork pods.
+ file if specified.
items:
description: |-
HostAlias holds the mapping between IP and hostnames that will be injected as an entry in the
@@ -3755,11 +3959,17 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
ip:
description: IP address of the host file entry.
type: string
+ required:
+ - ip
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - ip
+ x-kubernetes-list-type: map
hostIPC:
description: |-
Use the host's ipc namespace.
@@ -3801,14 +4011,20 @@ spec:
referenced object inside the same namespace.
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
initContainers:
description: |-
List of initialization containers belonging to the pod.
@@ -3830,6 +4046,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
description: |-
Entrypoint array. Not executed within a shell.
@@ -3840,6 +4057,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
description: |-
List of environment variables to set in the container.
@@ -3873,10 +4091,13 @@ spec:
description: The key to select.
type: string
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the
@@ -3941,10 +4162,13 @@ spec:
secret key.
type: string
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the
@@ -3959,6 +4183,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
description: |-
List of sources to populate environment variables in the container.
@@ -3975,10 +4202,13 @@ spec:
description: The ConfigMap to select from
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the ConfigMap
@@ -3995,10 +4225,13 @@ spec:
description: The Secret to select from
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the Secret
@@ -4008,6 +4241,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
description: |-
Container image name.
@@ -4049,6 +4283,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
description: HTTPGet specifies the http
@@ -4082,6 +4317,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the
HTTP server.
@@ -4162,6 +4398,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
description: HTTPGet specifies the http
@@ -4195,6 +4432,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the
HTTP server.
@@ -4275,6 +4513,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -4292,11 +4531,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -4331,6 +4570,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -4483,6 +4723,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -4500,11 +4741,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -4539,6 +4780,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -4647,11 +4889,9 @@ spec:
Claims lists the names of resources, defined in spec.resourceClaims,
that are used by this container.
-
This is an alpha field and requires enabling the
DynamicResourceAllocation feature gate.
-
This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one
@@ -4663,6 +4903,12 @@ spec:
the Pod where this field is used. It makes that resource available
inside a container.
type: string
+ request:
+ description: |-
+ Request is the name chosen for a request in the referenced claim.
+ If empty, everything from the claim is made available, otherwise
+ only the result of this request.
+ type: string
required:
- name
type: object
@@ -4718,6 +4964,30 @@ spec:
2) has CAP_SYS_ADMIN
Note that this field cannot be set when spec.os.name is windows.
type: boolean
+ appArmorProfile:
+ description: |-
+ appArmorProfile is the AppArmor options to use by this container. If set, this profile
+ overrides the pod's appArmorProfile.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile loaded on the node that should be used.
+ The profile must be preconfigured on the node to work.
+ Must match the loaded name of the profile.
+ Must be set if and only if type is "Localhost".
+ type: string
+ type:
+ description: |-
+ type indicates which kind of AppArmor profile will be applied.
+ Valid options are:
+ Localhost - a profile pre-loaded on the node.
+ RuntimeDefault - the container runtime's default profile.
+ Unconfined - no AppArmor enforcement.
+ type: string
+ required:
+ - type
+ type: object
capabilities:
description: |-
The capabilities to add/drop when running containers.
@@ -4731,6 +5001,7 @@ spec:
capabilities type
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
description: Removed capabilities
items:
@@ -4738,6 +5009,7 @@ spec:
capabilities type
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
description: |-
@@ -4749,7 +5021,7 @@ spec:
procMount:
description: |-
procMount denotes the type of proc mount to use for the containers.
- The default is DefaultProcMount which uses the container runtime defaults for
+ The default value is Default which uses the container runtime defaults for
readonly paths and masked paths.
This requires the ProcMountType feature flag to be enabled.
Note that this field cannot be set when spec.os.name is windows.
@@ -4830,7 +5102,6 @@ spec:
type indicates which kind of seccomp profile will be applied.
Valid options are:
-
Localhost - a profile defined in a file on the node should be used.
RuntimeDefault - the container runtime default profile should be used.
Unconfined - no profile should be applied.
@@ -4892,6 +5163,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -4909,11 +5181,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -4948,6 +5220,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -5077,6 +5350,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
description: |-
Pod volumes to mount into the container's filesystem.
@@ -5096,6 +5372,8 @@ spec:
to container and the other way around.
When not set, MountPropagationNone is used.
This field is beta in 1.10.
+ When RecursiveReadOnly is set to IfPossible or to Enabled, MountPropagation must be None or unspecified
+ (which defaults to None).
type: string
name:
description: This must match the Name of
@@ -5106,6 +5384,17 @@ spec:
Mounted read-only if true, read-write otherwise (false or unspecified).
Defaults to false.
type: boolean
+ recursiveReadOnly:
+ description: |-
+ RecursiveReadOnly specifies whether read-only mounts should be handled
+ recursively.
+
+ If ReadOnly is false, this field has no meaning and must be unspecified.
+
+ If ReadOnly is true, and this field is set to Disabled, the mount is not made
+ recursively read-only. If this field is set to IfPossible, the mount is made
+ recursively read-only, if it is supported by the container runtime.
+ type: string
subPath:
description: |-
Path within the volume from which the container's volume should be mounted.
@@ -5123,6 +5412,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
description: |-
Container's working directory.
@@ -5134,11 +5426,16 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
nodeName:
description: |-
- 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.
+ NodeName indicates in which node this pod is scheduled.
+ If empty, this pod is a candidate for scheduling by the scheduler defined in schedulerName.
+ Once this field is set, the kubelet for this node becomes responsible for the lifecycle of this pod.
+ This field should not be used to express a desire for the pod to be scheduled on a specific node.
+ https://kubernetes.
type: string
nodeSelector:
additionalProperties:
@@ -5154,16 +5451,14 @@ spec:
Specifies the OS of the containers in the pod.
Some pod and container fields are restricted if this is set.
-
If the OS field is set to linux, the following fields must be unset:
-securityContext.windowsOptions
-
If the OS field is set to windows, following fields must be unset:
- spec.hostPID
- spec.hostIPC
- spec.hostUsers
- - spec.securityContext.seLinuxOptions
+ - spec.securityContext.appArmorProfile
- spec.securityContext.
properties:
name:
@@ -5232,6 +5527,7 @@ spec:
- conditionType
type: object
type: array
+ x-kubernetes-list-type: atomic
resourceClaims:
description: |-
ResourceClaims defines which ResourceClaims must be allocated
@@ -5239,15 +5535,16 @@ spec:
will be made available to those containers which consume them
by name.
-
This is an alpha field and requires enabling the
DynamicResourceAllocation feature gate.
-
This field is immutable.
items:
description: |-
- PodResourceClaim references exactly one ResourceClaim through a ClaimSource.
+ PodResourceClaim references exactly one ResourceClaim, either directly
+ or by naming a ResourceClaimTemplate which is then turned into a ResourceClaim
+ for the pod.
+
It adds a name to it that uniquely identifies the ResourceClaim inside the Pod.
Containers that need access to the ResourceClaim reference it with this name.
properties:
@@ -5256,26 +5553,23 @@ spec:
Name uniquely identifies this resource claim inside the pod.
This must be a DNS_LABEL.
type: string
- source:
- description: Source describes where to find the
- ResourceClaim.
- properties:
- resourceClaimName:
- description: |-
- ResourceClaimName is the name of a ResourceClaim object in the same
- namespace as this pod.
- type: string
- resourceClaimTemplateName:
- description: |-
- ResourceClaimTemplateName is the name of a ResourceClaimTemplate
- object in the same namespace as this pod.
+ resourceClaimName:
+ description: |-
+ ResourceClaimName is the name of a ResourceClaim object in the same
+ namespace as this pod.
+ Exactly one of ResourceClaimName and ResourceClaimTemplateName must
+ be set.
+ type: string
+ resourceClaimTemplateName:
+ description: |-
+ ResourceClaimTemplateName is the name of a ResourceClaimTemplate
+ object in the same namespace as this pod.
- The template will be used to create a new ResourceClaim, which will
- be bound to this pod. When this pod is deleted, the ResourceClaim
- will also be deleted.
- type: string
- type: object
+ The template will be used to create a new ResourceClaim, which will
+ be bound to this pod. When this pod is deleted, the ResourceClaim
+ will also be deleted.
+ type: string
required:
- name
type: object
@@ -5309,11 +5603,7 @@ spec:
If schedulingGates is not empty, the pod will stay in the SchedulingGated state and the
scheduler will not attempt to schedule the pod.
-
SchedulingGates can only be set at pod creation time, and be removed only afterwards.
-
-
- This is a beta feature enabled by the PodSchedulingReadiness feature gate.
items:
description: PodSchedulingGate is associated to a
Pod to guard its scheduling.
@@ -5335,13 +5625,35 @@ spec:
SecurityContext holds pod-level security attributes and common container settings.
Optional: Defaults to empty. See type description for default values of each field.
properties:
+ appArmorProfile:
+ description: |-
+ appArmorProfile is the AppArmor options to use by the containers in this pod.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile loaded on the node that should be used.
+ The profile must be preconfigured on the node to work.
+ Must match the loaded name of the profile.
+ Must be set if and only if type is "Localhost".
+ type: string
+ type:
+ description: |-
+ type indicates which kind of AppArmor profile will be applied.
+ Valid options are:
+ Localhost - a profile pre-loaded on the node.
+ RuntimeDefault - the container runtime's default profile.
+ Unconfined - no AppArmor enforcement.
+ type: string
+ required:
+ - type
+ type: object
fsGroup:
description: |-
A special supplemental group that applies to all containers in a pod.
Some volume types allow the Kubelet to change the ownership of that volume
to be owned by the pod:
-
1. The owning GID will be the FSGroup
2. The setgid bit is set (new files created in the volume will be owned by FSGroup)
3.
@@ -5427,7 +5739,6 @@ spec:
type indicates which kind of seccomp profile will be applied.
Valid options are:
-
Localhost - a profile defined in a file on the node should be used.
RuntimeDefault - the container runtime default profile should be used.
Unconfined - no profile should be applied.
@@ -5437,14 +5748,24 @@ spec:
type: object
supplementalGroups:
description: |-
- A list of groups applied to the first process run in each container, in addition
- to the container's primary GID, the fsGroup (if specified), and group memberships
- defined in the container image for the uid of the container process. If unspecified,
- no additional groups are added to any container.
+ A list of groups applied to the first process run in each container, in
+ addition to the container's primary GID and fsGroup (if specified). If
+ the SupplementalGroupsPolicy feature is enabled, the
+ supplementalGroupsPolicy field determines whether these are in addition
+ to or instead of any group memberships defined in the container image.
items:
format: int64
type: integer
type: array
+ x-kubernetes-list-type: atomic
+ supplementalGroupsPolicy:
+ description: |-
+ Defines how supplemental groups of the first container processes are calculated.
+ Valid values are "Merge" and "Strict". If not specified, "Merge" is used.
+ (Alpha) Using the field requires the SupplementalGroupsPolicy feature gate to be enabled
+ and the container runtime must implement support for this feature.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: string
sysctls:
description: |-
Sysctls hold a list of namespaced sysctls used for the pod. Pods with unsupported
@@ -5465,6 +5786,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
windowsOptions:
description: |-
The Windows specific settings applied to all containers.
@@ -5500,7 +5822,7 @@ spec:
type: object
serviceAccount:
description: |-
- DeprecatedServiceAccount is a depreciated alias for ServiceAccountName.
+ DeprecatedServiceAccount is a deprecated alias for ServiceAccountName.
Deprecated: Use serviceAccountName instead.
type: string
serviceAccountName:
@@ -5573,6 +5895,7 @@ spec:
type: string
type: object
type: array
+ x-kubernetes-list-type: atomic
topologySpreadConstraints:
description: |-
TopologySpreadConstraints describes how a group of pods ought to spread across topology
@@ -5615,11 +5938,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -5666,7 +5991,6 @@ spec:
- Honor: only nodes matching nodeAffinity/nodeSelector are included in the calculations.
- Ignore: nodeAffinity/nodeSelector are ignored. All nodes are included in the calculations.
-
If this value is nil, the behavior is equivalent to the Honor policy.
type: string
nodeTaintsPolicy:
@@ -5677,7 +6001,6 @@ spec:
has a toleration, are included.
- Ignore: node taints are ignored. All nodes are included.
-
If this value is nil, the behavior is equivalent to the Ignore policy.
type: string
topologyKey:
@@ -5728,7 +6051,6 @@ spec:
Tip: Ensure that the filesystem type is supported by the host operating system.
Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
- TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
partition:
description: |-
@@ -5769,6 +6091,7 @@ spec:
in the blob storage
type: string
fsType:
+ default: ext4
description: |-
fsType is Filesystem type to mount.
Must be a filesystem type supported by the host operating system.
@@ -5782,6 +6105,7 @@ spec:
availability set). defaults to shared'
type: string
readOnly:
+ default: false
description: |-
readOnly Defaults to false (read/write). ReadOnly here will force
the ReadOnly setting in VolumeMounts.
@@ -5824,6 +6148,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
path:
description: 'path is Optional: Used as the
mounted root, rather than the full Ceph
@@ -5846,10 +6171,13 @@ spec:
More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -5885,10 +6213,13 @@ spec:
to OpenStack.
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -5947,11 +6278,15 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional specify whether the
@@ -5984,10 +6319,13 @@ spec:
secret object contains more than one secret, all secret references are passed.
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -6031,7 +6369,7 @@ spec:
fieldRef:
description: 'Required: Selects a field
of the pod: only annotations, labels,
- name and namespace are supported.'
+ name, namespace and uid are supported.'
properties:
apiVersion:
description: Version of the schema
@@ -6093,6 +6431,7 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
emptyDir:
description: |-
@@ -6172,6 +6511,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
dataSource:
description: |-
dataSource field can be used to specify either:
@@ -6298,11 +6638,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -6350,7 +6692,6 @@ spec:
fsType is the filesystem type to mount.
Must be a filesystem type supported by the host operating system.
Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
- TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
lun:
description: 'lun is Optional: FC target lun
@@ -6368,6 +6709,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
wwids:
description: |-
wwids Optional: FC volume world wide identifiers (wwids)
@@ -6375,6 +6717,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
flexVolume:
description: |-
@@ -6411,10 +6754,13 @@ spec:
scripts.
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -6449,7 +6795,6 @@ spec:
Tip: Ensure that the filesystem type is supported by the host operating system.
Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
- TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
partition:
description: |-
@@ -6529,7 +6874,7 @@ spec:
machine that is directly exposed to the container. This is generally
used for system agents or other privileged things that are allowed
to see the host machine. Most containers will NOT need this.
- More info: https://kubernetes.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath
properties:
path:
description: |-
@@ -6546,6 +6891,29 @@ spec:
required:
- path
type: object
+ image:
+ description: |-
+ image represents an OCI object (a container image or artifact) pulled and mounted on the kubelet's host machine.
+ The volume is resolved at pod startup depending on which PullPolicy value is provided:
+
+ - Always: the kubelet always attempts to pull the reference. Container creation will fail If the pull fails.
+ - Never: the kubelet never pulls the reference and only uses a local image or artifact.
+ properties:
+ pullPolicy:
+ description: |-
+ Policy for pulling OCI objects. Possible values are:
+ Always: the kubelet always attempts to pull the reference. Container creation will fail If the pull fails.
+ Never: the kubelet never pulls the reference and only uses a local image or artifact. Container creation will fail if the reference isn't present.
+ IfNotPresent: the kubelet pulls if the reference isn't already present on disk.
+ type: string
+ reference:
+ description: |-
+ Required: Image or artifact reference to be used.
+ Behaves in the same way as pod.spec.containers[*].image.
+ Pull secrets will be assembled in the same way as for the container image by looking up node credentials, SA image pull secrets, and pod spec image pull secrets.
+ More info: https://kubernetes.
+ type: string
+ type: object
iscsi:
description: |-
iscsi represents an ISCSI Disk resource that is attached to a
@@ -6566,7 +6934,6 @@ spec:
Tip: Ensure that the filesystem type is supported by the host operating system.
Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
More info: https://kubernetes.io/docs/concepts/storage/volumes#iscsi
- TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
initiatorName:
description: |-
@@ -6579,6 +6946,7 @@ spec:
Name.
type: string
iscsiInterface:
+ default: default
description: |-
iscsiInterface is the interface Name that uses an iSCSI transport.
Defaults to 'default' (tcp).
@@ -6595,6 +6963,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
readOnly:
description: |-
readOnly here will force the ReadOnly setting in VolumeMounts.
@@ -6605,10 +6974,13 @@ spec:
for iSCSI target and initiator authentication
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -6726,21 +7098,21 @@ spec:
format: int32
type: integer
sources:
- description: sources is the list of volume
- projections
+ description: |-
+ sources is the list of volume projections. Each entry in this list
+ handles one source.
items:
- description: Projection that may be projected
- along with other supported volume types
+ description: |-
+ Projection that may be projected along with other supported volume types.
+ Exactly one of these fields must be set.
properties:
clusterTrustBundle:
description: |-
ClusterTrustBundle allows a pod to access the `.spec.trustBundle` field
of ClusterTrustBundle objects in an auto-updating file.
-
Alpha, gated by the ClusterTrustBundleProjection feature gate.
-
ClusterTrustBundle objects can either be selected by name, or by the
combination of signer name and a label selector.
properties:
@@ -6780,11 +7152,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -6860,11 +7234,15 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional specify whether
@@ -6889,8 +7267,8 @@ spec:
fieldRef:
description: 'Required: Selects
a field of the pod: only
- annotations, labels, name
- and namespace are supported.'
+ annotations, labels, name,
+ namespace and uid are supported.'
properties:
apiVersion:
description: Version of
@@ -6958,6 +7336,7 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
secret:
description: secret information about
@@ -6998,11 +7377,15 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional field specify
@@ -7043,6 +7426,7 @@ spec:
type: object
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
quobyte:
description: quobyte represents a Quobyte mount
@@ -7093,7 +7477,6 @@ spec:
Tip: Ensure that the filesystem type is supported by the host operating system.
Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
More info: https://kubernetes.io/docs/concepts/storage/volumes#rbd
- TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
image:
description: |-
@@ -7101,6 +7484,7 @@ spec:
More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
type: string
keyring:
+ default: /etc/ceph/keyring
description: |-
keyring is the path to key ring for RBDUser.
Default is /etc/ceph/keyring.
@@ -7113,7 +7497,9 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
pool:
+ default: rbd
description: |-
pool is the rados pool name.
Default is rbd.
@@ -7133,14 +7519,18 @@ spec:
More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
user:
+ default: admin
description: |-
user is the rados user name.
Default is admin.
@@ -7155,6 +7545,7 @@ spec:
volume attached and mounted on Kubernetes nodes.
properties:
fsType:
+ default: xfs
description: |-
fsType is the filesystem type to mount.
Must be a filesystem type supported by the host operating system.
@@ -7181,10 +7572,13 @@ spec:
sensitive information. If this is not provided, Login operation will fail.
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -7194,6 +7588,7 @@ spec:
false
type: boolean
storageMode:
+ default: ThinProvisioned
description: |-
storageMode indicates whether the storage for a volume should be ThickProvisioned or ThinProvisioned.
Default is ThinProvisioned.
@@ -7264,6 +7659,7 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
optional:
description: optional field specify whether
the Secret or its keys must be defined
@@ -7295,10 +7691,13 @@ spec:
credentials. If not specified, default values will be attempted.
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -7347,6 +7746,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
required:
- containers
type: object
@@ -7458,11 +7860,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
diff --git a/charts/kubeflow/apps/training-operator/upstream/base/crds/kubeflow.org_xgboostjobs.yaml b/charts/kubeflow/apps/training-operator/upstream/base/crds/kubeflow.org_xgboostjobs.yaml
index 34237c6..accb08a 100644
--- a/charts/kubeflow/apps/training-operator/upstream/base/crds/kubeflow.org_xgboostjobs.yaml
+++ b/charts/kubeflow/apps/training-operator/upstream/base/crds/kubeflow.org_xgboostjobs.yaml
@@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
- controller-gen.kubebuilder.io/version: v0.14.0
+ controller-gen.kubebuilder.io/version: v0.16.5
name: xgboostjobs.kubeflow.org
spec:
group: kubeflow.org
@@ -67,6 +67,16 @@ spec:
CleanPodPolicy defines the policy to kill pods after the job completes.
Default to None.
type: string
+ managedBy:
+ description: |-
+ ManagedBy is used to indicate the controller or entity that manages a job.
+ The value must be either an empty, 'kubeflow.org/training-operator' or
+ 'kueue.x-k8s.io/multikueue'.
+ The training-operator reconciles a job which doesn't have this
+ field at all or the field value is the reserved string
+ 'kubeflow.org/training-operator', but delegates reconciling the job
+ with 'kueue.x-k8s.
+ type: string
schedulingPolicy:
description: SchedulingPolicy defines the policy related to scheduling,
e.g. gang-scheduling
@@ -219,11 +229,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchFields:
description: A list of node selector
requirements by node's fields.
@@ -251,11 +263,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
x-kubernetes-map-type: atomic
weight:
@@ -269,6 +283,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
description: |-
If the affinity requirements specified by this field are not met at
@@ -313,11 +328,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchFields:
description: A list of node selector
requirements by node's fields.
@@ -345,14 +362,17 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
x-kubernetes-map-type: atomic
type: array
+ x-kubernetes-list-type: atomic
required:
- nodeSelectorTerms
type: object
@@ -415,11 +435,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -434,7 +456,7 @@ spec:
description: |-
MatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
- incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
to select the group of existing pods which pods will be taken into consideration
for the incoming pod's pod (anti) affinity.
items:
@@ -445,7 +467,7 @@ spec:
description: |-
MismatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
- incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
to select the group of existing pods which pods will be taken into consideration
for the incoming pod's pod (anti) affinity.
items:
@@ -489,11 +511,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -513,6 +537,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
description: |-
This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
@@ -535,6 +560,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
description: |-
If the affinity requirements specified by this field are not met at
@@ -584,11 +610,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -603,7 +631,7 @@ spec:
description: |-
MatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
- incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
to select the group of existing pods which pods will be taken into consideration
for the incoming pod's pod (anti) affinity.
items:
@@ -614,7 +642,7 @@ spec:
description: |-
MismatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
- incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
to select the group of existing pods which pods will be taken into consideration
for the incoming pod's pod (anti) affinity.
items:
@@ -657,11 +685,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -681,6 +711,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
description: |-
This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
@@ -693,6 +724,7 @@ spec:
- topologyKey
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
podAntiAffinity:
description: Describes pod anti-affinity scheduling
@@ -749,11 +781,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -768,7 +802,7 @@ spec:
description: |-
MatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
- incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
to select the group of existing pods which pods will be taken into consideration
for the incoming pod's pod (anti) affinity.
items:
@@ -779,7 +813,7 @@ spec:
description: |-
MismatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
- incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
to select the group of existing pods which pods will be taken into consideration
for the incoming pod's pod (anti) affinity.
items:
@@ -823,11 +857,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -847,6 +883,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
description: |-
This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
@@ -869,6 +906,7 @@ spec:
- weight
type: object
type: array
+ x-kubernetes-list-type: atomic
requiredDuringSchedulingIgnoredDuringExecution:
description: |-
If the anti-affinity requirements specified by this field are not met at
@@ -918,11 +956,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -937,7 +977,7 @@ spec:
description: |-
MatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
- incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
to select the group of existing pods which pods will be taken into consideration
for the incoming pod's pod (anti) affinity.
items:
@@ -948,7 +988,7 @@ spec:
description: |-
MismatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
- incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
to select the group of existing pods which pods will be taken into consideration
for the incoming pod's pod (anti) affinity.
items:
@@ -991,11 +1031,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -1015,6 +1057,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
topologyKey:
description: |-
This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
@@ -1027,6 +1070,7 @@ spec:
- topologyKey
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
type: object
automountServiceAccountToken:
@@ -1054,6 +1098,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
description: |-
Entrypoint array. Not executed within a shell.
@@ -1064,6 +1109,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
description: |-
List of environment variables to set in the container.
@@ -1097,10 +1143,13 @@ spec:
description: The key to select.
type: string
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the
@@ -1165,10 +1214,13 @@ spec:
secret key.
type: string
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the
@@ -1183,6 +1235,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
description: |-
List of sources to populate environment variables in the container.
@@ -1199,10 +1254,13 @@ spec:
description: The ConfigMap to select from
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the ConfigMap
@@ -1219,10 +1277,13 @@ spec:
description: The Secret to select from
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the Secret
@@ -1232,6 +1293,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
description: |-
Container image name.
@@ -1273,6 +1335,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
description: HTTPGet specifies the http
@@ -1306,6 +1369,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the
HTTP server.
@@ -1386,6 +1450,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
description: HTTPGet specifies the http
@@ -1419,6 +1484,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the
HTTP server.
@@ -1499,6 +1565,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -1516,11 +1583,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -1555,6 +1622,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -1707,6 +1775,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -1724,11 +1793,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -1763,6 +1832,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -1871,11 +1941,9 @@ spec:
Claims lists the names of resources, defined in spec.resourceClaims,
that are used by this container.
-
This is an alpha field and requires enabling the
DynamicResourceAllocation feature gate.
-
This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one
@@ -1887,6 +1955,12 @@ spec:
the Pod where this field is used. It makes that resource available
inside a container.
type: string
+ request:
+ description: |-
+ Request is the name chosen for a request in the referenced claim.
+ If empty, everything from the claim is made available, otherwise
+ only the result of this request.
+ type: string
required:
- name
type: object
@@ -1942,6 +2016,30 @@ spec:
2) has CAP_SYS_ADMIN
Note that this field cannot be set when spec.os.name is windows.
type: boolean
+ appArmorProfile:
+ description: |-
+ appArmorProfile is the AppArmor options to use by this container. If set, this profile
+ overrides the pod's appArmorProfile.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile loaded on the node that should be used.
+ The profile must be preconfigured on the node to work.
+ Must match the loaded name of the profile.
+ Must be set if and only if type is "Localhost".
+ type: string
+ type:
+ description: |-
+ type indicates which kind of AppArmor profile will be applied.
+ Valid options are:
+ Localhost - a profile pre-loaded on the node.
+ RuntimeDefault - the container runtime's default profile.
+ Unconfined - no AppArmor enforcement.
+ type: string
+ required:
+ - type
+ type: object
capabilities:
description: |-
The capabilities to add/drop when running containers.
@@ -1955,6 +2053,7 @@ spec:
capabilities type
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
description: Removed capabilities
items:
@@ -1962,6 +2061,7 @@ spec:
capabilities type
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
description: |-
@@ -1973,7 +2073,7 @@ spec:
procMount:
description: |-
procMount denotes the type of proc mount to use for the containers.
- The default is DefaultProcMount which uses the container runtime defaults for
+ The default value is Default which uses the container runtime defaults for
readonly paths and masked paths.
This requires the ProcMountType feature flag to be enabled.
Note that this field cannot be set when spec.os.name is windows.
@@ -2054,7 +2154,6 @@ spec:
type indicates which kind of seccomp profile will be applied.
Valid options are:
-
Localhost - a profile defined in a file on the node should be used.
RuntimeDefault - the container runtime default profile should be used.
Unconfined - no profile should be applied.
@@ -2116,6 +2215,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -2133,11 +2233,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -2172,6 +2272,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -2301,6 +2402,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
description: |-
Pod volumes to mount into the container's filesystem.
@@ -2320,6 +2424,8 @@ spec:
to container and the other way around.
When not set, MountPropagationNone is used.
This field is beta in 1.10.
+ When RecursiveReadOnly is set to IfPossible or to Enabled, MountPropagation must be None or unspecified
+ (which defaults to None).
type: string
name:
description: This must match the Name of
@@ -2330,6 +2436,17 @@ spec:
Mounted read-only if true, read-write otherwise (false or unspecified).
Defaults to false.
type: boolean
+ recursiveReadOnly:
+ description: |-
+ RecursiveReadOnly specifies whether read-only mounts should be handled
+ recursively.
+
+ If ReadOnly is false, this field has no meaning and must be unspecified.
+
+ If ReadOnly is true, and this field is set to Disabled, the mount is not made
+ recursively read-only. If this field is set to IfPossible, the mount is made
+ recursively read-only, if it is supported by the container runtime.
+ type: string
subPath:
description: |-
Path within the volume from which the container's volume should be mounted.
@@ -2347,6 +2464,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
description: |-
Container's working directory.
@@ -2358,6 +2478,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
dnsConfig:
description: |-
Specifies the DNS parameters of a pod.
@@ -2372,6 +2495,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
options:
description: |-
A list of DNS resolver options.
@@ -2389,6 +2513,7 @@ spec:
type: string
type: object
type: array
+ x-kubernetes-list-type: atomic
searches:
description: |-
A list of DNS search domains for host-name lookup.
@@ -2397,6 +2522,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
dnsPolicy:
description: |-
@@ -2438,6 +2564,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
description: |-
Entrypoint array. Not executed within a shell.
@@ -2448,6 +2575,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
description: |-
List of environment variables to set in the container.
@@ -2481,10 +2609,13 @@ spec:
description: The key to select.
type: string
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the
@@ -2549,10 +2680,13 @@ spec:
secret key.
type: string
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the
@@ -2567,6 +2701,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
description: |-
List of sources to populate environment variables in the container.
@@ -2583,10 +2720,13 @@ spec:
description: The ConfigMap to select from
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the ConfigMap
@@ -2603,10 +2743,13 @@ spec:
description: The Secret to select from
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the Secret
@@ -2616,6 +2759,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
description: |-
Container image name.
@@ -2654,6 +2798,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
description: HTTPGet specifies the http
@@ -2687,6 +2832,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the
HTTP server.
@@ -2767,6 +2913,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
description: HTTPGet specifies the http
@@ -2800,6 +2947,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the
HTTP server.
@@ -2877,6 +3025,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -2894,11 +3043,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -2933,6 +3082,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -3076,6 +3226,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -3093,11 +3244,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -3132,6 +3283,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -3239,11 +3391,9 @@ spec:
Claims lists the names of resources, defined in spec.resourceClaims,
that are used by this container.
-
This is an alpha field and requires enabling the
DynamicResourceAllocation feature gate.
-
This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one
@@ -3255,6 +3405,12 @@ spec:
the Pod where this field is used. It makes that resource available
inside a container.
type: string
+ request:
+ description: |-
+ Request is the name chosen for a request in the referenced claim.
+ If empty, everything from the claim is made available, otherwise
+ only the result of this request.
+ type: string
required:
- name
type: object
@@ -3309,6 +3465,30 @@ spec:
2) has CAP_SYS_ADMIN
Note that this field cannot be set when spec.os.name is windows.
type: boolean
+ appArmorProfile:
+ description: |-
+ appArmorProfile is the AppArmor options to use by this container. If set, this profile
+ overrides the pod's appArmorProfile.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile loaded on the node that should be used.
+ The profile must be preconfigured on the node to work.
+ Must match the loaded name of the profile.
+ Must be set if and only if type is "Localhost".
+ type: string
+ type:
+ description: |-
+ type indicates which kind of AppArmor profile will be applied.
+ Valid options are:
+ Localhost - a profile pre-loaded on the node.
+ RuntimeDefault - the container runtime's default profile.
+ Unconfined - no AppArmor enforcement.
+ type: string
+ required:
+ - type
+ type: object
capabilities:
description: |-
The capabilities to add/drop when running containers.
@@ -3322,6 +3502,7 @@ spec:
capabilities type
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
description: Removed capabilities
items:
@@ -3329,6 +3510,7 @@ spec:
capabilities type
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
description: |-
@@ -3340,7 +3522,7 @@ spec:
procMount:
description: |-
procMount denotes the type of proc mount to use for the containers.
- The default is DefaultProcMount which uses the container runtime defaults for
+ The default value is Default which uses the container runtime defaults for
readonly paths and masked paths.
This requires the ProcMountType feature flag to be enabled.
Note that this field cannot be set when spec.os.name is windows.
@@ -3421,7 +3603,6 @@ spec:
type indicates which kind of seccomp profile will be applied.
Valid options are:
-
Localhost - a profile defined in a file on the node should be used.
RuntimeDefault - the container runtime default profile should be used.
Unconfined - no profile should be applied.
@@ -3481,6 +3662,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -3498,11 +3680,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -3537,6 +3719,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -3630,7 +3813,6 @@ spec:
The ephemeral container will be run in the namespaces (IPC, PID, etc) of this container.
If not set then the ephemeral container uses the namespaces configured in the Pod spec.
-
The container runtime must implement support for this feature.
type: string
terminationMessagePath:
@@ -3675,6 +3857,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
description: |-
Pod volumes to mount into the container's filesystem. Subpath mounts are not allowed for ephemeral containers.
@@ -3694,6 +3879,8 @@ spec:
to container and the other way around.
When not set, MountPropagationNone is used.
This field is beta in 1.10.
+ When RecursiveReadOnly is set to IfPossible or to Enabled, MountPropagation must be None or unspecified
+ (which defaults to None).
type: string
name:
description: This must match the Name of
@@ -3704,6 +3891,17 @@ spec:
Mounted read-only if true, read-write otherwise (false or unspecified).
Defaults to false.
type: boolean
+ recursiveReadOnly:
+ description: |-
+ RecursiveReadOnly specifies whether read-only mounts should be handled
+ recursively.
+
+ If ReadOnly is false, this field has no meaning and must be unspecified.
+
+ If ReadOnly is true, and this field is set to Disabled, the mount is not made
+ recursively read-only. If this field is set to IfPossible, the mount is made
+ recursively read-only, if it is supported by the container runtime.
+ type: string
subPath:
description: |-
Path within the volume from which the container's volume should be mounted.
@@ -3721,6 +3919,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
description: |-
Container's working directory.
@@ -3732,10 +3933,13 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
hostAliases:
description: |-
HostAliases is an optional list of hosts and IPs that will be injected into the pod's hosts
- file if specified. This is only valid for non-hostNetwork pods.
+ file if specified.
items:
description: |-
HostAlias holds the mapping between IP and hostnames that will be injected as an entry in the
@@ -3746,11 +3950,17 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
ip:
description: IP address of the host file entry.
type: string
+ required:
+ - ip
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - ip
+ x-kubernetes-list-type: map
hostIPC:
description: |-
Use the host's ipc namespace.
@@ -3792,14 +4002,20 @@ spec:
referenced object inside the same namespace.
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
initContainers:
description: |-
List of initialization containers belonging to the pod.
@@ -3821,6 +4037,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
command:
description: |-
Entrypoint array. Not executed within a shell.
@@ -3831,6 +4048,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
env:
description: |-
List of environment variables to set in the container.
@@ -3864,10 +4082,13 @@ spec:
description: The key to select.
type: string
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the
@@ -3932,10 +4153,13 @@ spec:
secret key.
type: string
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the
@@ -3950,6 +4174,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
envFrom:
description: |-
List of sources to populate environment variables in the container.
@@ -3966,10 +4193,13 @@ spec:
description: The ConfigMap to select from
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the ConfigMap
@@ -3986,10 +4216,13 @@ spec:
description: The Secret to select from
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: Specify whether the Secret
@@ -3999,6 +4232,7 @@ spec:
x-kubernetes-map-type: atomic
type: object
type: array
+ x-kubernetes-list-type: atomic
image:
description: |-
Container image name.
@@ -4040,6 +4274,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
description: HTTPGet specifies the http
@@ -4073,6 +4308,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the
HTTP server.
@@ -4153,6 +4389,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
description: HTTPGet specifies the http
@@ -4186,6 +4423,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the
HTTP server.
@@ -4266,6 +4504,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -4283,11 +4522,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -4322,6 +4561,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -4474,6 +4714,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -4491,11 +4732,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -4530,6 +4771,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -4638,11 +4880,9 @@ spec:
Claims lists the names of resources, defined in spec.resourceClaims,
that are used by this container.
-
This is an alpha field and requires enabling the
DynamicResourceAllocation feature gate.
-
This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one
@@ -4654,6 +4894,12 @@ spec:
the Pod where this field is used. It makes that resource available
inside a container.
type: string
+ request:
+ description: |-
+ Request is the name chosen for a request in the referenced claim.
+ If empty, everything from the claim is made available, otherwise
+ only the result of this request.
+ type: string
required:
- name
type: object
@@ -4709,6 +4955,30 @@ spec:
2) has CAP_SYS_ADMIN
Note that this field cannot be set when spec.os.name is windows.
type: boolean
+ appArmorProfile:
+ description: |-
+ appArmorProfile is the AppArmor options to use by this container. If set, this profile
+ overrides the pod's appArmorProfile.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile loaded on the node that should be used.
+ The profile must be preconfigured on the node to work.
+ Must match the loaded name of the profile.
+ Must be set if and only if type is "Localhost".
+ type: string
+ type:
+ description: |-
+ type indicates which kind of AppArmor profile will be applied.
+ Valid options are:
+ Localhost - a profile pre-loaded on the node.
+ RuntimeDefault - the container runtime's default profile.
+ Unconfined - no AppArmor enforcement.
+ type: string
+ required:
+ - type
+ type: object
capabilities:
description: |-
The capabilities to add/drop when running containers.
@@ -4722,6 +4992,7 @@ spec:
capabilities type
type: string
type: array
+ x-kubernetes-list-type: atomic
drop:
description: Removed capabilities
items:
@@ -4729,6 +5000,7 @@ spec:
capabilities type
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
privileged:
description: |-
@@ -4740,7 +5012,7 @@ spec:
procMount:
description: |-
procMount denotes the type of proc mount to use for the containers.
- The default is DefaultProcMount which uses the container runtime defaults for
+ The default value is Default which uses the container runtime defaults for
readonly paths and masked paths.
This requires the ProcMountType feature flag to be enabled.
Note that this field cannot be set when spec.os.name is windows.
@@ -4821,7 +5093,6 @@ spec:
type indicates which kind of seccomp profile will be applied.
Valid options are:
-
Localhost - a profile defined in a file on the node should be used.
RuntimeDefault - the container runtime default profile should be used.
Unconfined - no profile should be applied.
@@ -4883,6 +5154,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
failureThreshold:
description: |-
@@ -4900,11 +5172,11 @@ spec:
format: int32
type: integer
service:
+ default: ""
description: |-
Service is the name of the service to place in the gRPC HealthCheckRequest
(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
-
If this is not specified, the default behavior is defined by gRPC.
type: string
required:
@@ -4939,6 +5211,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
description: Path to access on the HTTP
server.
@@ -5068,6 +5341,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
volumeMounts:
description: |-
Pod volumes to mount into the container's filesystem.
@@ -5087,6 +5363,8 @@ spec:
to container and the other way around.
When not set, MountPropagationNone is used.
This field is beta in 1.10.
+ When RecursiveReadOnly is set to IfPossible or to Enabled, MountPropagation must be None or unspecified
+ (which defaults to None).
type: string
name:
description: This must match the Name of
@@ -5097,6 +5375,17 @@ spec:
Mounted read-only if true, read-write otherwise (false or unspecified).
Defaults to false.
type: boolean
+ recursiveReadOnly:
+ description: |-
+ RecursiveReadOnly specifies whether read-only mounts should be handled
+ recursively.
+
+ If ReadOnly is false, this field has no meaning and must be unspecified.
+
+ If ReadOnly is true, and this field is set to Disabled, the mount is not made
+ recursively read-only. If this field is set to IfPossible, the mount is made
+ recursively read-only, if it is supported by the container runtime.
+ type: string
subPath:
description: |-
Path within the volume from which the container's volume should be mounted.
@@ -5114,6 +5403,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
workingDir:
description: |-
Container's working directory.
@@ -5125,11 +5417,16 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
nodeName:
description: |-
- 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.
+ NodeName indicates in which node this pod is scheduled.
+ If empty, this pod is a candidate for scheduling by the scheduler defined in schedulerName.
+ Once this field is set, the kubelet for this node becomes responsible for the lifecycle of this pod.
+ This field should not be used to express a desire for the pod to be scheduled on a specific node.
+ https://kubernetes.
type: string
nodeSelector:
additionalProperties:
@@ -5145,16 +5442,14 @@ spec:
Specifies the OS of the containers in the pod.
Some pod and container fields are restricted if this is set.
-
If the OS field is set to linux, the following fields must be unset:
-securityContext.windowsOptions
-
If the OS field is set to windows, following fields must be unset:
- spec.hostPID
- spec.hostIPC
- spec.hostUsers
- - spec.securityContext.seLinuxOptions
+ - spec.securityContext.appArmorProfile
- spec.securityContext.
properties:
name:
@@ -5223,6 +5518,7 @@ spec:
- conditionType
type: object
type: array
+ x-kubernetes-list-type: atomic
resourceClaims:
description: |-
ResourceClaims defines which ResourceClaims must be allocated
@@ -5230,15 +5526,16 @@ spec:
will be made available to those containers which consume them
by name.
-
This is an alpha field and requires enabling the
DynamicResourceAllocation feature gate.
-
This field is immutable.
items:
description: |-
- PodResourceClaim references exactly one ResourceClaim through a ClaimSource.
+ PodResourceClaim references exactly one ResourceClaim, either directly
+ or by naming a ResourceClaimTemplate which is then turned into a ResourceClaim
+ for the pod.
+
It adds a name to it that uniquely identifies the ResourceClaim inside the Pod.
Containers that need access to the ResourceClaim reference it with this name.
properties:
@@ -5247,26 +5544,23 @@ spec:
Name uniquely identifies this resource claim inside the pod.
This must be a DNS_LABEL.
type: string
- source:
- description: Source describes where to find the
- ResourceClaim.
- properties:
- resourceClaimName:
- description: |-
- ResourceClaimName is the name of a ResourceClaim object in the same
- namespace as this pod.
- type: string
- resourceClaimTemplateName:
- description: |-
- ResourceClaimTemplateName is the name of a ResourceClaimTemplate
- object in the same namespace as this pod.
+ resourceClaimName:
+ description: |-
+ ResourceClaimName is the name of a ResourceClaim object in the same
+ namespace as this pod.
+ Exactly one of ResourceClaimName and ResourceClaimTemplateName must
+ be set.
+ type: string
+ resourceClaimTemplateName:
+ description: |-
+ ResourceClaimTemplateName is the name of a ResourceClaimTemplate
+ object in the same namespace as this pod.
- The template will be used to create a new ResourceClaim, which will
- be bound to this pod. When this pod is deleted, the ResourceClaim
- will also be deleted.
- type: string
- type: object
+ The template will be used to create a new ResourceClaim, which will
+ be bound to this pod. When this pod is deleted, the ResourceClaim
+ will also be deleted.
+ type: string
required:
- name
type: object
@@ -5300,11 +5594,7 @@ spec:
If schedulingGates is not empty, the pod will stay in the SchedulingGated state and the
scheduler will not attempt to schedule the pod.
-
SchedulingGates can only be set at pod creation time, and be removed only afterwards.
-
-
- This is a beta feature enabled by the PodSchedulingReadiness feature gate.
items:
description: PodSchedulingGate is associated to a
Pod to guard its scheduling.
@@ -5326,13 +5616,35 @@ spec:
SecurityContext holds pod-level security attributes and common container settings.
Optional: Defaults to empty. See type description for default values of each field.
properties:
+ appArmorProfile:
+ description: |-
+ appArmorProfile is the AppArmor options to use by the containers in this pod.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile loaded on the node that should be used.
+ The profile must be preconfigured on the node to work.
+ Must match the loaded name of the profile.
+ Must be set if and only if type is "Localhost".
+ type: string
+ type:
+ description: |-
+ type indicates which kind of AppArmor profile will be applied.
+ Valid options are:
+ Localhost - a profile pre-loaded on the node.
+ RuntimeDefault - the container runtime's default profile.
+ Unconfined - no AppArmor enforcement.
+ type: string
+ required:
+ - type
+ type: object
fsGroup:
description: |-
A special supplemental group that applies to all containers in a pod.
Some volume types allow the Kubelet to change the ownership of that volume
to be owned by the pod:
-
1. The owning GID will be the FSGroup
2. The setgid bit is set (new files created in the volume will be owned by FSGroup)
3.
@@ -5418,7 +5730,6 @@ spec:
type indicates which kind of seccomp profile will be applied.
Valid options are:
-
Localhost - a profile defined in a file on the node should be used.
RuntimeDefault - the container runtime default profile should be used.
Unconfined - no profile should be applied.
@@ -5428,14 +5739,24 @@ spec:
type: object
supplementalGroups:
description: |-
- A list of groups applied to the first process run in each container, in addition
- to the container's primary GID, the fsGroup (if specified), and group memberships
- defined in the container image for the uid of the container process. If unspecified,
- no additional groups are added to any container.
+ A list of groups applied to the first process run in each container, in
+ addition to the container's primary GID and fsGroup (if specified). If
+ the SupplementalGroupsPolicy feature is enabled, the
+ supplementalGroupsPolicy field determines whether these are in addition
+ to or instead of any group memberships defined in the container image.
items:
format: int64
type: integer
type: array
+ x-kubernetes-list-type: atomic
+ supplementalGroupsPolicy:
+ description: |-
+ Defines how supplemental groups of the first container processes are calculated.
+ Valid values are "Merge" and "Strict". If not specified, "Merge" is used.
+ (Alpha) Using the field requires the SupplementalGroupsPolicy feature gate to be enabled
+ and the container runtime must implement support for this feature.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: string
sysctls:
description: |-
Sysctls hold a list of namespaced sysctls used for the pod. Pods with unsupported
@@ -5456,6 +5777,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
windowsOptions:
description: |-
The Windows specific settings applied to all containers.
@@ -5491,7 +5813,7 @@ spec:
type: object
serviceAccount:
description: |-
- DeprecatedServiceAccount is a depreciated alias for ServiceAccountName.
+ DeprecatedServiceAccount is a deprecated alias for ServiceAccountName.
Deprecated: Use serviceAccountName instead.
type: string
serviceAccountName:
@@ -5564,6 +5886,7 @@ spec:
type: string
type: object
type: array
+ x-kubernetes-list-type: atomic
topologySpreadConstraints:
description: |-
TopologySpreadConstraints describes how a group of pods ought to spread across topology
@@ -5606,11 +5929,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -5657,7 +5982,6 @@ spec:
- Honor: only nodes matching nodeAffinity/nodeSelector are included in the calculations.
- Ignore: nodeAffinity/nodeSelector are ignored. All nodes are included in the calculations.
-
If this value is nil, the behavior is equivalent to the Honor policy.
type: string
nodeTaintsPolicy:
@@ -5668,7 +5992,6 @@ spec:
has a toleration, are included.
- Ignore: node taints are ignored. All nodes are included.
-
If this value is nil, the behavior is equivalent to the Ignore policy.
type: string
topologyKey:
@@ -5719,7 +6042,6 @@ spec:
Tip: Ensure that the filesystem type is supported by the host operating system.
Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
- TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
partition:
description: |-
@@ -5760,6 +6082,7 @@ spec:
in the blob storage
type: string
fsType:
+ default: ext4
description: |-
fsType is Filesystem type to mount.
Must be a filesystem type supported by the host operating system.
@@ -5773,6 +6096,7 @@ spec:
availability set). defaults to shared'
type: string
readOnly:
+ default: false
description: |-
readOnly Defaults to false (read/write). ReadOnly here will force
the ReadOnly setting in VolumeMounts.
@@ -5815,6 +6139,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
path:
description: 'path is Optional: Used as the
mounted root, rather than the full Ceph
@@ -5837,10 +6162,13 @@ spec:
More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -5876,10 +6204,13 @@ spec:
to OpenStack.
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -5938,11 +6269,15 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional specify whether the
@@ -5975,10 +6310,13 @@ spec:
secret object contains more than one secret, all secret references are passed.
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -6022,7 +6360,7 @@ spec:
fieldRef:
description: 'Required: Selects a field
of the pod: only annotations, labels,
- name and namespace are supported.'
+ name, namespace and uid are supported.'
properties:
apiVersion:
description: Version of the schema
@@ -6084,6 +6422,7 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
emptyDir:
description: |-
@@ -6163,6 +6502,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
dataSource:
description: |-
dataSource field can be used to specify either:
@@ -6289,11 +6629,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -6341,7 +6683,6 @@ spec:
fsType is the filesystem type to mount.
Must be a filesystem type supported by the host operating system.
Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
- TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
lun:
description: 'lun is Optional: FC target lun
@@ -6359,6 +6700,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
wwids:
description: |-
wwids Optional: FC volume world wide identifiers (wwids)
@@ -6366,6 +6708,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
flexVolume:
description: |-
@@ -6402,10 +6745,13 @@ spec:
scripts.
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -6440,7 +6786,6 @@ spec:
Tip: Ensure that the filesystem type is supported by the host operating system.
Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
- TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
partition:
description: |-
@@ -6520,7 +6865,7 @@ spec:
machine that is directly exposed to the container. This is generally
used for system agents or other privileged things that are allowed
to see the host machine. Most containers will NOT need this.
- More info: https://kubernetes.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath
properties:
path:
description: |-
@@ -6537,6 +6882,29 @@ spec:
required:
- path
type: object
+ image:
+ description: |-
+ image represents an OCI object (a container image or artifact) pulled and mounted on the kubelet's host machine.
+ The volume is resolved at pod startup depending on which PullPolicy value is provided:
+
+ - Always: the kubelet always attempts to pull the reference. Container creation will fail If the pull fails.
+ - Never: the kubelet never pulls the reference and only uses a local image or artifact.
+ properties:
+ pullPolicy:
+ description: |-
+ Policy for pulling OCI objects. Possible values are:
+ Always: the kubelet always attempts to pull the reference. Container creation will fail If the pull fails.
+ Never: the kubelet never pulls the reference and only uses a local image or artifact. Container creation will fail if the reference isn't present.
+ IfNotPresent: the kubelet pulls if the reference isn't already present on disk.
+ type: string
+ reference:
+ description: |-
+ Required: Image or artifact reference to be used.
+ Behaves in the same way as pod.spec.containers[*].image.
+ Pull secrets will be assembled in the same way as for the container image by looking up node credentials, SA image pull secrets, and pod spec image pull secrets.
+ More info: https://kubernetes.
+ type: string
+ type: object
iscsi:
description: |-
iscsi represents an ISCSI Disk resource that is attached to a
@@ -6557,7 +6925,6 @@ spec:
Tip: Ensure that the filesystem type is supported by the host operating system.
Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
More info: https://kubernetes.io/docs/concepts/storage/volumes#iscsi
- TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
initiatorName:
description: |-
@@ -6570,6 +6937,7 @@ spec:
Name.
type: string
iscsiInterface:
+ default: default
description: |-
iscsiInterface is the interface Name that uses an iSCSI transport.
Defaults to 'default' (tcp).
@@ -6586,6 +6954,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
readOnly:
description: |-
readOnly here will force the ReadOnly setting in VolumeMounts.
@@ -6596,10 +6965,13 @@ spec:
for iSCSI target and initiator authentication
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -6717,21 +7089,21 @@ spec:
format: int32
type: integer
sources:
- description: sources is the list of volume
- projections
+ description: |-
+ sources is the list of volume projections. Each entry in this list
+ handles one source.
items:
- description: Projection that may be projected
- along with other supported volume types
+ description: |-
+ Projection that may be projected along with other supported volume types.
+ Exactly one of these fields must be set.
properties:
clusterTrustBundle:
description: |-
ClusterTrustBundle allows a pod to access the `.spec.trustBundle` field
of ClusterTrustBundle objects in an auto-updating file.
-
Alpha, gated by the ClusterTrustBundleProjection feature gate.
-
ClusterTrustBundle objects can either be selected by name, or by the
combination of signer name and a label selector.
properties:
@@ -6771,11 +7143,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -6851,11 +7225,15 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional specify whether
@@ -6880,8 +7258,8 @@ spec:
fieldRef:
description: 'Required: Selects
a field of the pod: only
- annotations, labels, name
- and namespace are supported.'
+ annotations, labels, name,
+ namespace and uid are supported.'
properties:
apiVersion:
description: Version of
@@ -6949,6 +7327,7 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
secret:
description: secret information about
@@ -6989,11 +7368,15 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
optional:
description: optional field specify
@@ -7034,6 +7417,7 @@ spec:
type: object
type: object
type: array
+ x-kubernetes-list-type: atomic
type: object
quobyte:
description: quobyte represents a Quobyte mount
@@ -7084,7 +7468,6 @@ spec:
Tip: Ensure that the filesystem type is supported by the host operating system.
Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
More info: https://kubernetes.io/docs/concepts/storage/volumes#rbd
- TODO: how do we prevent errors in the filesystem from compromising the machine
type: string
image:
description: |-
@@ -7092,6 +7475,7 @@ spec:
More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
type: string
keyring:
+ default: /etc/ceph/keyring
description: |-
keyring is the path to key ring for RBDUser.
Default is /etc/ceph/keyring.
@@ -7104,7 +7488,9 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
pool:
+ default: rbd
description: |-
pool is the rados pool name.
Default is rbd.
@@ -7124,14 +7510,18 @@ spec:
More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
user:
+ default: admin
description: |-
user is the rados user name.
Default is admin.
@@ -7146,6 +7536,7 @@ spec:
volume attached and mounted on Kubernetes nodes.
properties:
fsType:
+ default: xfs
description: |-
fsType is the filesystem type to mount.
Must be a filesystem type supported by the host operating system.
@@ -7172,10 +7563,13 @@ spec:
sensitive information. If this is not provided, Login operation will fail.
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -7185,6 +7579,7 @@ spec:
false
type: boolean
storageMode:
+ default: ThinProvisioned
description: |-
storageMode indicates whether the storage for a volume should be ThickProvisioned or ThinProvisioned.
Default is ThinProvisioned.
@@ -7255,6 +7650,7 @@ spec:
- path
type: object
type: array
+ x-kubernetes-list-type: atomic
optional:
description: optional field specify whether
the Secret or its keys must be defined
@@ -7286,10 +7682,13 @@ spec:
credentials. If not specified, default values will be attempted.
properties:
name:
+ default: ""
description: |-
Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
@@ -7338,6 +7737,9 @@ spec:
- name
type: object
type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
required:
- containers
type: object
@@ -7440,11 +7842,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
diff --git a/charts/kubeflow/apps/training-operator/upstream/base/crds/kustomization.yaml b/charts/kubeflow/apps/training-operator/upstream/base/crds/kustomization.yaml
index 6617ab3..16d824b 100644
--- a/charts/kubeflow/apps/training-operator/upstream/base/crds/kustomization.yaml
+++ b/charts/kubeflow/apps/training-operator/upstream/base/crds/kustomization.yaml
@@ -2,8 +2,8 @@ apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- kubeflow.org_tfjobs.yaml
- - kubeflow.org_mxjobs.yaml
- kubeflow.org_pytorchjobs.yaml
- kubeflow.org_xgboostjobs.yaml
- kubeflow.org_mpijobs.yaml
- kubeflow.org_paddlejobs.yaml
+ - kubeflow.org_jaxjobs.yaml
diff --git a/charts/kubeflow/apps/training-operator/upstream/base/deployment.yaml b/charts/kubeflow/apps/training-operator/upstream/base/deployment.yaml
index b38295a..4453737 100644
--- a/charts/kubeflow/apps/training-operator/upstream/base/deployment.yaml
+++ b/charts/kubeflow/apps/training-operator/upstream/base/deployment.yaml
@@ -13,13 +13,12 @@ spec:
metadata:
labels:
control-plane: kubeflow-training-operator
- annotations:
sidecar.istio.io/inject: "false"
spec:
containers:
- command:
- /manager
- image: kubeflow/training-operator
+ image: ghcr.io/kubeflow/training-v1/training-operator
name: training-operator
ports:
- containerPort: 8080
diff --git a/charts/kubeflow/apps/training-operator/upstream/base/rbac/role.yaml b/charts/kubeflow/apps/training-operator/upstream/base/rbac/role.yaml
index 60cdbf2..ae91d43 100644
--- a/charts/kubeflow/apps/training-operator/upstream/base/rbac/role.yaml
+++ b/charts/kubeflow/apps/training-operator/upstream/base/rbac/role.yaml
@@ -92,6 +92,32 @@ rules:
- patch
- update
- watch
+- apiGroups:
+ - kubeflow.org
+ resources:
+ - jaxjobs
+ verbs:
+ - create
+ - delete
+ - get
+ - list
+ - patch
+ - update
+ - watch
+- apiGroups:
+ - kubeflow.org
+ resources:
+ - jaxjobs/finalizers
+ verbs:
+ - update
+- apiGroups:
+ - kubeflow.org
+ resources:
+ - jaxjobs/status
+ verbs:
+ - get
+ - patch
+ - update
- apiGroups:
- kubeflow.org
resources:
@@ -118,32 +144,6 @@ rules:
- get
- patch
- update
-- apiGroups:
- - kubeflow.org
- resources:
- - mxjobs
- verbs:
- - create
- - delete
- - get
- - list
- - patch
- - update
- - watch
-- apiGroups:
- - kubeflow.org
- resources:
- - mxjobs/finalizers
- verbs:
- - update
-- apiGroups:
- - kubeflow.org
- resources:
- - mxjobs/status
- verbs:
- - get
- - patch
- - update
- apiGroups:
- kubeflow.org
resources:
diff --git a/charts/kubeflow/apps/training-operator/upstream/base/webhook/kustomization.yaml b/charts/kubeflow/apps/training-operator/upstream/base/webhook/kustomization.yaml
index 1523fc1..bc84486 100644
--- a/charts/kubeflow/apps/training-operator/upstream/base/webhook/kustomization.yaml
+++ b/charts/kubeflow/apps/training-operator/upstream/base/webhook/kustomization.yaml
@@ -1,15 +1,17 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- - manifests.yaml
-commonLabels:
- control-plane: kubeflow-training-operator
+- manifests.yaml
patches:
- - path: patch.yaml
- target:
- group: admissionregistration.k8s.io
- version: v1
- kind: ValidatingWebhookConfiguration
+- path: patch.yaml
+ target:
+ group: admissionregistration.k8s.io
+ kind: ValidatingWebhookConfiguration
+ version: v1
configurations:
- - kustomizeconfig.yaml
+- kustomizeconfig.yaml
+labels:
+- includeSelectors: true
+ pairs:
+ control-plane: kubeflow-training-operator
diff --git a/charts/kubeflow/apps/training-operator/upstream/base/webhook/manifests.yaml b/charts/kubeflow/apps/training-operator/upstream/base/webhook/manifests.yaml
index 3447065..2c381d0 100644
--- a/charts/kubeflow/apps/training-operator/upstream/base/webhook/manifests.yaml
+++ b/charts/kubeflow/apps/training-operator/upstream/base/webhook/manifests.yaml
@@ -10,9 +10,9 @@ webhooks:
service:
name: webhook-service
namespace: system
- path: /validate-kubeflow-org-v1-mxjob
+ path: /validate-kubeflow-org-v1-jaxjob
failurePolicy: Fail
- name: validator.mxjob.training-operator.kubeflow.org
+ name: validator.jaxjob.training-operator.kubeflow.org
rules:
- apiGroups:
- kubeflow.org
@@ -21,9 +21,8 @@ webhooks:
operations:
- CREATE
- UPDATE
- - DELETE
resources:
- - mxjobs
+ - jaxjobs
sideEffects: None
- admissionReviewVersions:
- v1
diff --git a/charts/kubeflow/apps/training-operator/upstream/overlays/kubeflow/kubeflow-training-roles.yaml b/charts/kubeflow/apps/training-operator/upstream/overlays/kubeflow/kubeflow-training-roles.yaml
index 7c4b4de..02f382e 100644
--- a/charts/kubeflow/apps/training-operator/upstream/overlays/kubeflow/kubeflow-training-roles.yaml
+++ b/charts/kubeflow/apps/training-operator/upstream/overlays/kubeflow/kubeflow-training-roles.yaml
@@ -25,9 +25,9 @@ rules:
- mpijobs
- tfjobs
- pytorchjobs
- - mxjobs
- xgboostjobs
- paddlejobs
+ - jaxjobs
verbs:
- create
- delete
@@ -42,9 +42,9 @@ rules:
- mpijobs/status
- tfjobs/status
- pytorchjobs/status
- - mxjobs/status
- xgboostjobs/status
- paddlejobs/status
+ - jaxjobs/status
verbs:
- get
- apiGroups:
@@ -80,9 +80,9 @@ rules:
- mpijobs
- tfjobs
- pytorchjobs
- - mxjobs
- xgboostjobs
- paddlejobs
+ - jaxjobs
verbs:
- get
- list
@@ -93,8 +93,8 @@ rules:
- mpijobs/status
- tfjobs/status
- pytorchjobs/status
- - mxjobs/status
- xgboostjobs/status
- paddlejobs/status
+ - jaxjobs/status
verbs:
- get
diff --git a/charts/kubeflow/apps/training-operator/upstream/overlays/kubeflow/kustomization.yaml b/charts/kubeflow/apps/training-operator/upstream/overlays/kubeflow/kustomization.yaml
index f4dabc2..30c8c48 100644
--- a/charts/kubeflow/apps/training-operator/upstream/overlays/kubeflow/kustomization.yaml
+++ b/charts/kubeflow/apps/training-operator/upstream/overlays/kubeflow/kustomization.yaml
@@ -5,8 +5,8 @@ resources:
- ../../base
- kubeflow-training-roles.yaml
images:
- - name: kubeflow/training-operator
- newTag: "v1-9e52eb7"
+ - name: ghcr.io/kubeflow/training-v1/training-operator
+ newTag: v1-3f15cb8
# TODO (tenzen-y): Once we support cert-manager, we need to remove this secret generation.
# REF: https://github.com/kubeflow/training-operator/issues/2049
secretGenerator:
diff --git a/charts/kubeflow/apps/training-operator/upstream/overlays/standalone/kustomization.yaml b/charts/kubeflow/apps/training-operator/upstream/overlays/standalone/kustomization.yaml
index 0a6eb6f..a39a5c4 100644
--- a/charts/kubeflow/apps/training-operator/upstream/overlays/standalone/kustomization.yaml
+++ b/charts/kubeflow/apps/training-operator/upstream/overlays/standalone/kustomization.yaml
@@ -5,8 +5,8 @@ resources:
- ../../base
- namespace.yaml
images:
- - name: kubeflow/training-operator
- newTag: "v1-9e52eb7"
+ - name: ghcr.io/kubeflow/training-v1/training-operator
+ newTag: v1-3f15cb8
secretGenerator:
- name: training-operator-webhook-cert
options:
diff --git a/charts/kubeflow/apps/training-operator/upstream/v2/base/crds/kubeflow.org_clustertrainingruntimes.yaml b/charts/kubeflow/apps/training-operator/upstream/v2/base/crds/kubeflow.org_clustertrainingruntimes.yaml
new file mode 100644
index 0000000..4d28180
--- /dev/null
+++ b/charts/kubeflow/apps/training-operator/upstream/v2/base/crds/kubeflow.org_clustertrainingruntimes.yaml
@@ -0,0 +1,9760 @@
+---
+apiVersion: apiextensions.k8s.io/v1
+kind: CustomResourceDefinition
+metadata:
+ annotations:
+ controller-gen.kubebuilder.io/version: v0.16.5
+ name: clustertrainingruntimes.kubeflow.org
+spec:
+ group: kubeflow.org
+ names:
+ kind: ClusterTrainingRuntime
+ listKind: ClusterTrainingRuntimeList
+ plural: clustertrainingruntimes
+ singular: clustertrainingruntime
+ scope: Cluster
+ versions:
+ - name: v2alpha1
+ schema:
+ openAPIV3Schema:
+ description: |-
+ ClusterTrainingRuntime represents a training runtime which can be referenced as part of
+ `runtimeRef` API in TrainJob. This resource is a cluster-scoped and can be referenced
+ by TrainJob that created in *any* namespace.
+ properties:
+ apiVersion:
+ description: |-
+ APIVersion defines the versioned schema of this representation of an object.
+ Servers should convert recognized schemas to the latest internal value, and
+ may reject unrecognized values.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
+ type: string
+ kind:
+ description: |-
+ Kind is a string value representing the REST resource this object represents.
+ Servers may infer this from the endpoint the client submits requests to.
+ Cannot be updated.
+ In CamelCase.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
+ type: string
+ metadata:
+ type: object
+ spec:
+ description: Specification of the desired ClusterTrainingRuntime.
+ properties:
+ mlPolicy:
+ description: Configuration for the model training with ML-specific
+ parameters.
+ properties:
+ mpi:
+ description: Configuration for the MPI Runtime.
+ properties:
+ mpiImplementation:
+ description: |-
+ Implementation name for the MPI to create the appropriate hostfile.
+ Defaults to OpenMPI.
+ type: string
+ numProcPerNode:
+ description: |-
+ Number of processes per node.
+ This value is equal to the number of slots for each node in the hostfile.
+ format: int32
+ type: integer
+ runLauncherAsNode:
+ description: |-
+ Whether to run training process on the launcher Job.
+ Defaults to false.
+ type: boolean
+ sshAuthMountPath:
+ description: Directory where SSH keys are mounted.
+ type: string
+ type: object
+ numNodes:
+ description: |-
+ Number of training nodes.
+ Defaults to 1.
+ format: int32
+ type: integer
+ torch:
+ description: Configuration for the PyTorch runtime.
+ properties:
+ elasticPolicy:
+ description: Elastic policy for the PyTorch training.
+ properties:
+ maxNodes:
+ description: Upper limit for the number of nodes to which
+ training job can scale up.
+ format: int32
+ type: integer
+ maxRestarts:
+ description: |-
+ How many times the training job can be restarted.
+ This value is inserted into the `--max-restarts` argument of the `torchrun` CLI and
+ the `.spec.failurePolicy.maxRestarts` parameter of the training Job.
+ format: int32
+ type: integer
+ metrics:
+ description: |-
+ Specification which are used to calculate the desired number of nodes. See the individual
+ metric source types for more information about how each type of metric must respond.
+ The HPA will be created to perform auto-scaling.
+ items:
+ description: |-
+ MetricSpec specifies how to scale based on a single metric
+ (only `type` and one other matching field should be set at once).
+ properties:
+ containerResource:
+ description: |-
+ containerResource refers to a resource metric (such as those specified in
+ requests and limits) known to Kubernetes describing a single container in
+ each pod of the current scale target (e.g. CPU or memory). Such metrics are
+ built in to Kubernetes, and have special scaling options on top of those
+ available to normal per-pod metrics using the "pods" source.
+ This is an alpha feature and can be enabled by the HPAContainerMetrics feature flag.
+ properties:
+ container:
+ description: container is the name of the container
+ in the pods of the scaling target
+ type: string
+ name:
+ description: name is the name of the resource
+ in question.
+ type: string
+ target:
+ description: target specifies the target value
+ for the given metric
+ properties:
+ averageUtilization:
+ description: |-
+ averageUtilization is the target value of the average of the
+ resource metric across all relevant pods, represented as a percentage of
+ the requested value of the resource for the pods.
+ Currently only valid for Resource metric source type
+ format: int32
+ type: integer
+ averageValue:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ averageValue is the target value of the average of the
+ metric across all relevant pods (as a quantity)
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type:
+ description: type represents whether the
+ metric type is Utilization, Value, or
+ AverageValue
+ type: string
+ value:
+ anyOf:
+ - type: integer
+ - type: string
+ description: value is the target value of
+ the metric (as a quantity).
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ required:
+ - type
+ type: object
+ required:
+ - container
+ - name
+ - target
+ type: object
+ external:
+ description: |-
+ external refers to a global metric that is not associated
+ with any Kubernetes object. It allows autoscaling based on information
+ coming from components running outside of cluster
+ (for example length of queue in cloud messaging service, or
+ QPS from loadbalancer running outside of cluster).
+ properties:
+ metric:
+ description: metric identifies the target metric
+ by name and selector
+ properties:
+ name:
+ description: name is the name of the given
+ metric
+ type: string
+ selector:
+ description: |-
+ selector is the string-encoded form of a standard kubernetes label selector for the given metric
+ When set, it is passed as an additional parameter to the metrics server for more specific metrics scoping.
+ When unset, just the metricName will be used to gather metrics.
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list
+ of label selector requirements. The
+ requirements are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key is the label
+ key that the selector applies
+ to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ required:
+ - name
+ type: object
+ target:
+ description: target specifies the target value
+ for the given metric
+ properties:
+ averageUtilization:
+ description: |-
+ averageUtilization is the target value of the average of the
+ resource metric across all relevant pods, represented as a percentage of
+ the requested value of the resource for the pods.
+ Currently only valid for Resource metric source type
+ format: int32
+ type: integer
+ averageValue:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ averageValue is the target value of the average of the
+ metric across all relevant pods (as a quantity)
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type:
+ description: type represents whether the
+ metric type is Utilization, Value, or
+ AverageValue
+ type: string
+ value:
+ anyOf:
+ - type: integer
+ - type: string
+ description: value is the target value of
+ the metric (as a quantity).
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ required:
+ - type
+ type: object
+ required:
+ - metric
+ - target
+ type: object
+ object:
+ description: |-
+ object refers to a metric describing a single kubernetes object
+ (for example, hits-per-second on an Ingress object).
+ properties:
+ describedObject:
+ description: describedObject specifies the descriptions
+ of a object,such as kind,name apiVersion
+ properties:
+ apiVersion:
+ description: apiVersion is the API version
+ of the referent
+ type: string
+ kind:
+ description: 'kind is the kind of the referent;
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
+ type: string
+ name:
+ description: 'name is the name of the referent;
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
+ type: string
+ required:
+ - kind
+ - name
+ type: object
+ metric:
+ description: metric identifies the target metric
+ by name and selector
+ properties:
+ name:
+ description: name is the name of the given
+ metric
+ type: string
+ selector:
+ description: |-
+ selector is the string-encoded form of a standard kubernetes label selector for the given metric
+ When set, it is passed as an additional parameter to the metrics server for more specific metrics scoping.
+ When unset, just the metricName will be used to gather metrics.
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list
+ of label selector requirements. The
+ requirements are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key is the label
+ key that the selector applies
+ to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ required:
+ - name
+ type: object
+ target:
+ description: target specifies the target value
+ for the given metric
+ properties:
+ averageUtilization:
+ description: |-
+ averageUtilization is the target value of the average of the
+ resource metric across all relevant pods, represented as a percentage of
+ the requested value of the resource for the pods.
+ Currently only valid for Resource metric source type
+ format: int32
+ type: integer
+ averageValue:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ averageValue is the target value of the average of the
+ metric across all relevant pods (as a quantity)
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type:
+ description: type represents whether the
+ metric type is Utilization, Value, or
+ AverageValue
+ type: string
+ value:
+ anyOf:
+ - type: integer
+ - type: string
+ description: value is the target value of
+ the metric (as a quantity).
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ required:
+ - type
+ type: object
+ required:
+ - describedObject
+ - metric
+ - target
+ type: object
+ pods:
+ description: |-
+ pods refers to a metric describing each pod in the current scale target
+ (for example, transactions-processed-per-second). The values will be
+ averaged together before being compared to the target value.
+ properties:
+ metric:
+ description: metric identifies the target metric
+ by name and selector
+ properties:
+ name:
+ description: name is the name of the given
+ metric
+ type: string
+ selector:
+ description: |-
+ selector is the string-encoded form of a standard kubernetes label selector for the given metric
+ When set, it is passed as an additional parameter to the metrics server for more specific metrics scoping.
+ When unset, just the metricName will be used to gather metrics.
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list
+ of label selector requirements. The
+ requirements are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key is the label
+ key that the selector applies
+ to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ required:
+ - name
+ type: object
+ target:
+ description: target specifies the target value
+ for the given metric
+ properties:
+ averageUtilization:
+ description: |-
+ averageUtilization is the target value of the average of the
+ resource metric across all relevant pods, represented as a percentage of
+ the requested value of the resource for the pods.
+ Currently only valid for Resource metric source type
+ format: int32
+ type: integer
+ averageValue:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ averageValue is the target value of the average of the
+ metric across all relevant pods (as a quantity)
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type:
+ description: type represents whether the
+ metric type is Utilization, Value, or
+ AverageValue
+ type: string
+ value:
+ anyOf:
+ - type: integer
+ - type: string
+ description: value is the target value of
+ the metric (as a quantity).
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ required:
+ - type
+ type: object
+ required:
+ - metric
+ - target
+ type: object
+ resource:
+ description: |-
+ resource refers to a resource metric (such as those specified in
+ requests and limits) known to Kubernetes describing each pod in the
+ current scale target (e.g. CPU or memory). Such metrics are built in to
+ Kubernetes, and have special scaling options on top of those available
+ to normal per-pod metrics using the "pods" source.
+ properties:
+ name:
+ description: name is the name of the resource
+ in question.
+ type: string
+ target:
+ description: target specifies the target value
+ for the given metric
+ properties:
+ averageUtilization:
+ description: |-
+ averageUtilization is the target value of the average of the
+ resource metric across all relevant pods, represented as a percentage of
+ the requested value of the resource for the pods.
+ Currently only valid for Resource metric source type
+ format: int32
+ type: integer
+ averageValue:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ averageValue is the target value of the average of the
+ metric across all relevant pods (as a quantity)
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type:
+ description: type represents whether the
+ metric type is Utilization, Value, or
+ AverageValue
+ type: string
+ value:
+ anyOf:
+ - type: integer
+ - type: string
+ description: value is the target value of
+ the metric (as a quantity).
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ required:
+ - type
+ type: object
+ required:
+ - name
+ - target
+ type: object
+ type:
+ description: |-
+ type is the type of metric source. It should be one of "ContainerResource", "External",
+ "Object", "Pods" or "Resource", each mapping to a matching field in the object.
+ Note: "ContainerResource" type is available on when the feature-gate
+ HPAContainerMetrics is enabled
+ type: string
+ required:
+ - type
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ minNodes:
+ description: Lower limit for the number of nodes to which
+ training job can scale down.
+ format: int32
+ type: integer
+ type: object
+ numProcPerNode:
+ description: |-
+ Number of processes per node.
+ This value is inserted into the `--nproc-per-node` argument of the `torchrun` CLI.
+ Supported values: `auto`, `cpu`, `gpu`, or int value.
+ Defaults to `auto`.
+ type: string
+ type: object
+ type: object
+ podGroupPolicy:
+ description: Configuration for the PodGroup to enable gang-scheduling
+ via supported plugins.
+ properties:
+ coscheduling:
+ description: Coscheduling plugin from the Kubernetes scheduler-plugins
+ for gang-scheduling.
+ properties:
+ scheduleTimeoutSeconds:
+ description: |-
+ Time threshold to schedule PodGroup for gang-scheduling.
+ If the scheduling timeout is equal to 0, the default value is used.
+ Defaults to 60 seconds.
+ format: int32
+ type: integer
+ type: object
+ type: object
+ template:
+ description: JobSet template which will be used by TrainJob.
+ properties:
+ metadata:
+ description: |-
+ Metadata for custom JobSet's labels and annotations.
+ JobSet name and namespace is equal to the TrainJob's name and namespace.
+ properties:
+ annotations:
+ additionalProperties:
+ type: string
+ type: object
+ finalizers:
+ items:
+ type: string
+ type: array
+ labels:
+ additionalProperties:
+ type: string
+ type: object
+ name:
+ type: string
+ namespace:
+ type: string
+ type: object
+ spec:
+ description: Specification of the desired JobSet which will be
+ created from TrainJob.
+ properties:
+ failurePolicy:
+ description: |-
+ FailurePolicy, if set, configures when to declare the JobSet as
+ failed.
+ The JobSet is always declared failed if any job in the set
+ finished with status failed.
+ properties:
+ maxRestarts:
+ description: |-
+ MaxRestarts defines the limit on the number of JobSet restarts.
+ A restart is achieved by recreating all active child jobs.
+ format: int32
+ type: integer
+ type: object
+ x-kubernetes-validations:
+ - message: Value is immutable
+ rule: self == oldSelf
+ managedBy:
+ description: ManagedBy is used to indicate the controller
+ or entity that manages a JobSet
+ type: string
+ network:
+ description: Network defines the networking options for the
+ jobset.
+ properties:
+ enableDNSHostnames:
+ description: |-
+ EnableDNSHostnames allows pods to be reached via their hostnames.
+ Pods will be reachable using the fully qualified pod hostname:
+ ---.
+ type: boolean
+ subdomain:
+ description: |-
+ Subdomain is an explicit choice for a network subdomain name
+ When set, any replicated job in the set is added to this network.
+ Defaults to if not set.
+ type: string
+ type: object
+ x-kubernetes-validations:
+ - message: Value is immutable
+ rule: self == oldSelf
+ replicatedJobs:
+ description: ReplicatedJobs is the group of jobs that will
+ form the set.
+ items:
+ properties:
+ name:
+ description: |-
+ Name is the name of the entry and will be used as a suffix
+ for the Job name.
+ type: string
+ replicas:
+ default: 1
+ description: |-
+ Replicas is the number of jobs that will be created from this ReplicatedJob's template.
+ Jobs names will be in the format: --
+ format: int32
+ type: integer
+ template:
+ description: Template defines the template of the Job
+ that will be created.
+ properties:
+ metadata:
+ description: |-
+ Standard object's metadata of the jobs created from this template.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
+ properties:
+ annotations:
+ additionalProperties:
+ type: string
+ type: object
+ finalizers:
+ items:
+ type: string
+ type: array
+ labels:
+ additionalProperties:
+ type: string
+ type: object
+ name:
+ type: string
+ namespace:
+ type: string
+ type: object
+ spec:
+ description: |-
+ Specification of the desired behavior of the job.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
+ properties:
+ activeDeadlineSeconds:
+ description: |-
+ Specifies the duration in seconds relative to the startTime that the job
+ may be continuously active before the system tries to terminate it; value
+ must be positive integer. If a Job is suspended (at creation or through an
+ update), this timer will effectively be stopped and reset when the Job is
+ resumed again.
+ format: int64
+ type: integer
+ backoffLimit:
+ description: |-
+ Specifies the number of retries before marking this job failed.
+ Defaults to 6
+ format: int32
+ type: integer
+ backoffLimitPerIndex:
+ description: |-
+ Specifies the limit for the number of retries within an
+ index before marking this index as failed. When enabled the number of
+ failures per index is kept in the pod's
+ batch.kubernetes.io/job-index-failure-count annotation. It can only
+ be set when Job's completionMode=Indexed, and the Pod's restart
+ policy is Never. The field is immutable.
+ This field is beta-level. It can be used when the `JobBackoffLimitPerIndex`
+ feature gate is enabled (enabled by default).
+ format: int32
+ type: integer
+ completionMode:
+ description: |-
+ completionMode specifies how Pod completions are tracked. It can be
+ `NonIndexed` (default) or `Indexed`.
+
+ `NonIndexed` means that the Job is considered complete when there have
+ been .spec.completions successfully completed Pods. Each Pod completion is
+ homologous to each other.
+
+ `Indexed` means that the Pods of a
+ Job get an associated completion index from 0 to (.spec.completions - 1),
+ available in the annotation batch.kubernetes.io/job-completion-index.
+ The Job is considered complete when there is one successfully completed Pod
+ for each index.
+ When value is `Indexed`, .spec.completions must be specified and
+ `.spec.parallelism` must be less than or equal to 10^5.
+ In addition, The Pod name takes the form
+ `$(job-name)-$(index)-$(random-string)`,
+ the Pod hostname takes the form `$(job-name)-$(index)`.
+
+ More completion modes can be added in the future.
+ If the Job controller observes a mode that it doesn't recognize, which
+ is possible during upgrades due to version skew, the controller
+ skips updates for the Job.
+ type: string
+ completions:
+ description: |-
+ Specifies the desired number of successfully finished pods the
+ job should be run with. Setting to null means that the success of any
+ pod signals the success of all pods, and allows parallelism to have any positive
+ value. Setting to 1 means that parallelism is limited to 1 and the success of that
+ pod signals the success of the job.
+ More info: https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/
+ format: int32
+ type: integer
+ managedBy:
+ description: |-
+ ManagedBy field indicates the controller that manages a Job. The k8s Job
+ controller reconciles jobs which don't have this field at all or the field
+ value is the reserved string `kubernetes.io/job-controller`, but skips
+ reconciling Jobs with a custom value for this field.
+ The value must be a valid domain-prefixed path (e.g. acme.io/foo) -
+ all characters before the first "/" must be a valid subdomain as defined
+ by RFC 1123. All characters trailing the first "/" must be valid HTTP Path
+ characters as defined by RFC 3986. The value cannot exceed 63 characters.
+ This field is immutable.
+
+ This field is alpha-level. The job controller accepts setting the field
+ when the feature gate JobManagedBy is enabled (disabled by default).
+ type: string
+ manualSelector:
+ description: |-
+ manualSelector controls generation of pod labels and pod selectors.
+ Leave `manualSelector` unset unless you are certain what you are doing.
+ When false or unset, the system pick labels unique to this job
+ and appends those labels to the pod template. When true,
+ the user is responsible for picking unique labels and specifying
+ the selector. Failure to pick a unique label may cause this
+ and other jobs to not function correctly. However, You may see
+ `manualSelector=true` in jobs that were created with the old `extensions/v1beta1`
+ API.
+ More info: https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/#specifying-your-own-pod-selector
+ type: boolean
+ maxFailedIndexes:
+ description: |-
+ Specifies the maximal number of failed indexes before marking the Job as
+ failed, when backoffLimitPerIndex is set. Once the number of failed
+ indexes exceeds this number the entire Job is marked as Failed and its
+ execution is terminated. When left as null the job continues execution of
+ all of its indexes and is marked with the `Complete` Job condition.
+ It can only be specified when backoffLimitPerIndex is set.
+ It can be null or up to completions. It is required and must be
+ less than or equal to 10^4 when is completions greater than 10^5.
+ This field is beta-level. It can be used when the `JobBackoffLimitPerIndex`
+ feature gate is enabled (enabled by default).
+ format: int32
+ type: integer
+ parallelism:
+ description: |-
+ Specifies the maximum desired number of pods the job should
+ run at any given time. The actual number of pods running in steady state will
+ be less than this number when ((.spec.completions - .status.successful) < .spec.parallelism),
+ i.e. when the work left to do is less than max parallelism.
+ More info: https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/
+ format: int32
+ type: integer
+ podFailurePolicy:
+ description: |-
+ Specifies the policy of handling failed pods. In particular, it allows to
+ specify the set of actions and conditions which need to be
+ satisfied to take the associated action.
+ If empty, the default behaviour applies - the counter of failed pods,
+ represented by the jobs's .status.failed field, is incremented and it is
+ checked against the backoffLimit. This field cannot be used in combination
+ with restartPolicy=OnFailure.
+ properties:
+ rules:
+ description: |-
+ A list of pod failure policy rules. The rules are evaluated in order.
+ Once a rule matches a Pod failure, the remaining of the rules are ignored.
+ When no rule matches the Pod failure, the default handling applies - the
+ counter of pod failures is incremented and it is checked against
+ the backoffLimit. At most 20 elements are allowed.
+ items:
+ description: |-
+ PodFailurePolicyRule describes how a pod failure is handled when the requirements are met.
+ One of onExitCodes and onPodConditions, but not both, can be used in each rule.
+ properties:
+ action:
+ description: |-
+ Specifies the action taken on a pod failure when the requirements are satisfied.
+ Possible values are:
+
+ - FailJob: indicates that the pod's job is marked as Failed and all
+ running pods are terminated.
+ - FailIndex: indicates that the pod's index is marked as Failed and will
+ not be restarted.
+ This value is beta-level. It can be used when the
+ `JobBackoffLimitPerIndex` feature gate is enabled (enabled by default).
+ - Ignore: indicates that the counter towards the .backoffLimit is not
+ incremented and a replacement pod is created.
+ - Count: indicates that the pod is handled in the default way - the
+ counter towards the .backoffLimit is incremented.
+ Additional values are considered to be added in the future. Clients should
+ react to an unknown action by skipping the rule.
+ type: string
+ onExitCodes:
+ description: Represents the requirement
+ on the container exit codes.
+ properties:
+ containerName:
+ description: |-
+ Restricts the check for exit codes to the container with the
+ specified name. When null, the rule applies to all containers.
+ When specified, it should match one the container or initContainer
+ names in the pod template.
+ type: string
+ operator:
+ description: |-
+ Represents the relationship between the container exit code(s) and the
+ specified values. Containers completed with success (exit code 0) are
+ excluded from the requirement check. Possible values are:
+
+ - In: the requirement is satisfied if at least one container exit code
+ (might be multiple if there are multiple containers not restricted
+ by the 'containerName' field) is in the set of specified values.
+ - NotIn: the requirement is satisfied if at least one container exit code
+ (might be multiple if there are multiple containers not restricted
+ by the 'containerName' field) is not in the set of specified values.
+ Additional values are considered to be added in the future. Clients should
+ react to an unknown operator by assuming the requirement is not satisfied.
+ type: string
+ values:
+ description: |-
+ Specifies the set of values. Each returned container exit code (might be
+ multiple in case of multiple containers) is checked against this set of
+ values with respect to the operator. The list of values must be ordered
+ and must not contain duplicates. Value '0' cannot be used for the In operator.
+ At least one element is required. At most 255 elements are allowed.
+ items:
+ format: int32
+ type: integer
+ type: array
+ x-kubernetes-list-type: set
+ required:
+ - operator
+ - values
+ type: object
+ onPodConditions:
+ description: |-
+ Represents the requirement on the pod conditions. The requirement is represented
+ as a list of pod condition patterns. The requirement is satisfied if at
+ least one pattern matches an actual pod condition. At most 20 elements are allowed.
+ items:
+ description: |-
+ PodFailurePolicyOnPodConditionsPattern describes a pattern for matching
+ an actual pod condition type.
+ properties:
+ status:
+ description: |-
+ Specifies the required Pod condition status. To match a pod condition
+ it is required that the specified status equals the pod condition status.
+ Defaults to True.
+ type: string
+ type:
+ description: |-
+ Specifies the required Pod condition type. To match a pod condition
+ it is required that specified type equals the pod condition type.
+ type: string
+ required:
+ - status
+ - type
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - action
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - rules
+ type: object
+ podReplacementPolicy:
+ description: |-
+ podReplacementPolicy specifies when to create replacement Pods.
+ Possible values are:
+ - TerminatingOrFailed means that we recreate pods
+ when they are terminating (has a metadata.deletionTimestamp) or failed.
+ - Failed means to wait until a previously created Pod is fully terminated (has phase
+ Failed or Succeeded) before creating a replacement Pod.
+
+ When using podFailurePolicy, Failed is the the only allowed value.
+ TerminatingOrFailed and Failed are allowed values when podFailurePolicy is not in use.
+ This is an beta field. To use this, enable the JobPodReplacementPolicy feature toggle.
+ This is on by default.
+ type: string
+ selector:
+ description: |-
+ A label query over pods that should match the pod count.
+ Normally, the system sets this field for you.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list
+ of label selector requirements. The requirements
+ are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key is the label key
+ that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ successPolicy:
+ description: |-
+ successPolicy specifies the policy when the Job can be declared as succeeded.
+ If empty, the default behavior applies - the Job is declared as succeeded
+ only when the number of succeeded pods equals to the completions.
+ When the field is specified, it must be immutable and works only for the Indexed Jobs.
+ Once the Job meets the SuccessPolicy, the lingering pods are terminated.
+
+ This field is beta-level. To use this field, you must enable the
+ `JobSuccessPolicy` feature gate (enabled by default).
+ properties:
+ rules:
+ description: |-
+ rules represents the list of alternative rules for the declaring the Jobs
+ as successful before `.status.succeeded >= .spec.completions`. Once any of the rules are met,
+ the "SucceededCriteriaMet" condition is added, and the lingering pods are removed.
+ The terminal state for such a Job has the "Complete" condition.
+ Additionally, these rules are evaluated in order; Once the Job meets one of the rules,
+ other rules are ignored. At most 20 elements are allowed.
+ items:
+ description: |-
+ SuccessPolicyRule describes rule for declaring a Job as succeeded.
+ Each rule must have at least one of the "succeededIndexes" or "succeededCount" specified.
+ properties:
+ succeededCount:
+ description: |-
+ succeededCount specifies the minimal required size of the actual set of the succeeded indexes
+ for the Job. When succeededCount is used along with succeededIndexes, the check is
+ constrained only to the set of indexes specified by succeededIndexes.
+ For example, given that succeededIndexes is "1-4", succeededCount is "3",
+ and completed indexes are "1", "3", and "5", the Job isn't declared as succeeded
+ because only "1" and "3" indexes are considered in that rules.
+ When this field is null, this doesn't default to any value and
+ is never evaluated at any time.
+ When specified it needs to be a positive integer.
+ format: int32
+ type: integer
+ succeededIndexes:
+ description: |-
+ succeededIndexes specifies the set of indexes
+ which need to be contained in the actual set of the succeeded indexes for the Job.
+ The list of indexes must be within 0 to ".spec.completions-1" and
+ must not contain duplicates. At least one element is required.
+ The indexes are represented as intervals separated by commas.
+ The intervals can be a decimal integer or a pair of decimal integers separated by a hyphen.
+ The number are listed in represented by the first and last element of the series,
+ separated by a hyphen.
+ For example, if the completed indexes are 1, 3, 4, 5 and 7, they are
+ represented as "1,3-5,7".
+ When this field is null, this field doesn't default to any value
+ and is never evaluated at any time.
+ type: string
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - rules
+ type: object
+ suspend:
+ description: |-
+ suspend specifies whether the Job controller should create Pods or not. If
+ a Job is created with suspend set to true, no Pods are created by the Job
+ controller. If a Job is suspended after creation (i.e. the flag goes from
+ false to true), the Job controller will delete all active Pods associated
+ with this Job. Users must design their workload to gracefully handle this.
+ Suspending a Job will reset the StartTime field of the Job, effectively
+ resetting the ActiveDeadlineSeconds timer too. Defaults to false.
+ type: boolean
+ template:
+ description: |-
+ Describes the pod that will be created when executing a job.
+ The only allowed template.spec.restartPolicy values are "Never" or "OnFailure".
+ More info: https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/
+ properties:
+ metadata:
+ description: |-
+ Standard object's metadata.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
+ properties:
+ annotations:
+ additionalProperties:
+ type: string
+ type: object
+ finalizers:
+ items:
+ type: string
+ type: array
+ labels:
+ additionalProperties:
+ type: string
+ type: object
+ name:
+ type: string
+ namespace:
+ type: string
+ type: object
+ spec:
+ description: |-
+ Specification of the desired behavior of the pod.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
+ properties:
+ activeDeadlineSeconds:
+ description: |-
+ Optional duration in seconds the pod may be active on the node relative to
+ StartTime before the system will actively try to mark it failed and kill associated containers.
+ Value must be a positive integer.
+ format: int64
+ type: integer
+ affinity:
+ description: If specified, the pod's
+ scheduling constraints
+ properties:
+ nodeAffinity:
+ description: Describes node affinity
+ scheduling rules for the pod.
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node matches the corresponding matchExpressions; the
+ node(s) with the highest sum are the most preferred.
+ items:
+ description: |-
+ An empty preferred scheduling term matches all objects with implicit weight 0
+ (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op).
+ properties:
+ preference:
+ description: A node selector
+ term, associated with
+ the corresponding weight.
+ properties:
+ matchExpressions:
+ description: A list
+ of node selector
+ requirements by
+ node's labels.
+ items:
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
+ properties:
+ key:
+ description: The
+ label key
+ that the selector
+ applies to.
+ type: string
+ operator:
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
+ type: string
+ values:
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchFields:
+ description: A list
+ of node selector
+ requirements by
+ node's fields.
+ items:
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
+ properties:
+ key:
+ description: The
+ label key
+ that the selector
+ applies to.
+ type: string
+ operator:
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
+ type: string
+ values:
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ x-kubernetes-map-type: atomic
+ weight:
+ description: Weight associated
+ with matching the corresponding
+ nodeSelectorTerm, in
+ the range 1-100.
+ format: int32
+ type: integer
+ required:
+ - preference
+ - weight
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ If the affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to an update), the system
+ may or may not try to eventually evict the pod from its node.
+ properties:
+ nodeSelectorTerms:
+ description: Required. A
+ list of node selector
+ terms. The terms are ORed.
+ items:
+ description: |-
+ A null or empty node selector term matches no objects. The requirements of
+ them are ANDed.
+ The TopologySelectorTerm type implements a subset of the NodeSelectorTerm.
+ properties:
+ matchExpressions:
+ description: A list
+ of node selector
+ requirements by
+ node's labels.
+ items:
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
+ properties:
+ key:
+ description: The
+ label key
+ that the selector
+ applies to.
+ type: string
+ operator:
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
+ type: string
+ values:
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchFields:
+ description: A list
+ of node selector
+ requirements by
+ node's fields.
+ items:
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
+ properties:
+ key:
+ description: The
+ label key
+ that the selector
+ applies to.
+ type: string
+ operator:
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
+ type: string
+ values:
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ x-kubernetes-map-type: atomic
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - nodeSelectorTerms
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ podAffinity:
+ description: Describes pod affinity
+ scheduling rules (e.g. co-locate
+ this pod in the same node, zone,
+ etc. as some other pod(s)).
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the
+ node(s) with the highest sum are the most preferred.
+ items:
+ description: The weights of
+ all of the matched WeightedPodAffinityTerm
+ fields are added per-node
+ to find the most preferred
+ node(s)
+ properties:
+ podAffinityTerm:
+ description: Required.
+ A pod affinity term,
+ associated with the
+ corresponding weight.
+ properties:
+ labelSelector:
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
+ properties:
+ matchExpressions:
+ description: matchExpressions
+ is a list of
+ label selector
+ requirements.
+ The requirements
+ are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key
+ is the
+ label
+ key that
+ the selector
+ applies
+ to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both matchLabelKeys and labelSelector.
+ Also, matchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
+ Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
+ properties:
+ matchExpressions:
+ description: matchExpressions
+ is a list of
+ label selector
+ requirements.
+ The requirements
+ are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key
+ is the
+ label
+ key that
+ the selector
+ applies
+ to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ namespaces:
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
+ type: string
+ required:
+ - topologyKey
+ type: object
+ weight:
+ description: |-
+ weight associated with matching the corresponding podAffinityTerm,
+ in the range 1-100.
+ format: int32
+ type: integer
+ required:
+ - podAffinityTerm
+ - weight
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ If the affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to a pod label update), the
+ system may or may not try to eventually evict the pod from its node.
+ When there are multiple elements, the lists of nodes corresponding to each
+ podAffinityTerm are intersected, i.e. all terms must be satisfied.
+ items:
+ description: |-
+ Defines a set of pods (namely those matching the labelSelector
+ relative to the given namespace(s)) that this pod should be
+ co-located (affinity) or not co-located (anti-affinity) with,
+ where co-located is defined as running on a node whose value of
+ the label with key matches that of any node on which
+ a pod of the set of pods is running
+ properties:
+ labelSelector:
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
+ properties:
+ matchExpressions:
+ description: matchExpressions
+ is a list of label
+ selector requirements.
+ The requirements
+ are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key
+ is the label
+ key that the
+ selector applies
+ to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both matchLabelKeys and labelSelector.
+ Also, matchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
+ Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
+ properties:
+ matchExpressions:
+ description: matchExpressions
+ is a list of label
+ selector requirements.
+ The requirements
+ are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key
+ is the label
+ key that the
+ selector applies
+ to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ namespaces:
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
+ type: string
+ required:
+ - topologyKey
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ podAntiAffinity:
+ description: Describes pod anti-affinity
+ scheduling rules (e.g. avoid putting
+ this pod in the same node, zone,
+ etc. as some other pod(s)).
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the anti-affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling anti-affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the
+ node(s) with the highest sum are the most preferred.
+ items:
+ description: The weights of
+ all of the matched WeightedPodAffinityTerm
+ fields are added per-node
+ to find the most preferred
+ node(s)
+ properties:
+ podAffinityTerm:
+ description: Required.
+ A pod affinity term,
+ associated with the
+ corresponding weight.
+ properties:
+ labelSelector:
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
+ properties:
+ matchExpressions:
+ description: matchExpressions
+ is a list of
+ label selector
+ requirements.
+ The requirements
+ are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key
+ is the
+ label
+ key that
+ the selector
+ applies
+ to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both matchLabelKeys and labelSelector.
+ Also, matchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
+ Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
+ properties:
+ matchExpressions:
+ description: matchExpressions
+ is a list of
+ label selector
+ requirements.
+ The requirements
+ are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key
+ is the
+ label
+ key that
+ the selector
+ applies
+ to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ namespaces:
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
+ type: string
+ required:
+ - topologyKey
+ type: object
+ weight:
+ description: |-
+ weight associated with matching the corresponding podAffinityTerm,
+ in the range 1-100.
+ format: int32
+ type: integer
+ required:
+ - podAffinityTerm
+ - weight
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ If the anti-affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the anti-affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to a pod label update), the
+ system may or may not try to eventually evict the pod from its node.
+ When there are multiple elements, the lists of nodes corresponding to each
+ podAffinityTerm are intersected, i.e. all terms must be satisfied.
+ items:
+ description: |-
+ Defines a set of pods (namely those matching the labelSelector
+ relative to the given namespace(s)) that this pod should be
+ co-located (affinity) or not co-located (anti-affinity) with,
+ where co-located is defined as running on a node whose value of
+ the label with key matches that of any node on which
+ a pod of the set of pods is running
+ properties:
+ labelSelector:
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
+ properties:
+ matchExpressions:
+ description: matchExpressions
+ is a list of label
+ selector requirements.
+ The requirements
+ are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key
+ is the label
+ key that the
+ selector applies
+ to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both matchLabelKeys and labelSelector.
+ Also, matchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
+ Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
+ properties:
+ matchExpressions:
+ description: matchExpressions
+ is a list of label
+ selector requirements.
+ The requirements
+ are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key
+ is the label
+ key that the
+ selector applies
+ to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ namespaces:
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
+ type: string
+ required:
+ - topologyKey
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ type: object
+ automountServiceAccountToken:
+ description: AutomountServiceAccountToken
+ indicates whether a service account
+ token should be automatically mounted.
+ type: boolean
+ containers:
+ description: |-
+ List of containers belonging to the pod.
+ Containers cannot currently be added or removed.
+ There must be at least one container in a Pod.
+ Cannot be updated.
+ items:
+ description: A single application
+ container that you want to run within
+ a pod.
+ properties:
+ args:
+ description: |-
+ Arguments to the entrypoint.
+ The container image's CMD is used if this is not provided.
+ Variable references $(VAR_NAME) are expanded using the container's environment. If a variable
+ cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will
+ produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless
+ of whether the variable exists or not. Cannot be updated.
+ More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ command:
+ description: |-
+ Entrypoint array. Not executed within a shell.
+ The container image's ENTRYPOINT is used if this is not provided.
+ Variable references $(VAR_NAME) are expanded using the container's environment. If a variable
+ cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will
+ produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless
+ of whether the variable exists or not. Cannot be updated.
+ More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ env:
+ description: |-
+ List of environment variables to set in the container.
+ Cannot be updated.
+ items:
+ description: EnvVar represents
+ an environment variable present
+ in a Container.
+ properties:
+ name:
+ description: Name of the
+ environment variable.
+ Must be a C_IDENTIFIER.
+ type: string
+ value:
+ description: |-
+ Variable references $(VAR_NAME) are expanded
+ using the previously defined environment variables in the container and
+ any service environment variables. If a variable cannot be resolved,
+ the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e.
+ "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)".
+ Escaped references will never be expanded, regardless of whether the variable
+ exists or not.
+ Defaults to "".
+ type: string
+ valueFrom:
+ description: Source for
+ the environment variable's
+ value. Cannot be used
+ if value is not empty.
+ properties:
+ configMapKeyRef:
+ description: Selects
+ a key of a ConfigMap.
+ properties:
+ key:
+ description: The
+ key to select.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify
+ whether the ConfigMap
+ or its key must
+ be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ fieldRef:
+ description: |-
+ Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`,
+ spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.
+ properties:
+ apiVersion:
+ description: Version
+ of the schema
+ the FieldPath
+ is written in
+ terms of, defaults
+ to "v1".
+ type: string
+ fieldPath:
+ description: Path
+ of the field to
+ select in the
+ specified API
+ version.
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ resourceFieldRef:
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported.
+ properties:
+ containerName:
+ description: 'Container
+ name: required
+ for volumes, optional
+ for env vars'
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ description: Specifies
+ the output format
+ of the exposed
+ resources, defaults
+ to "1"
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ description: 'Required:
+ resource to select'
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ secretKeyRef:
+ description: Selects
+ a key of a secret
+ in the pod's namespace
+ properties:
+ key:
+ description: The
+ key of the secret
+ to select from. Must
+ be a valid secret
+ key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify
+ whether the Secret
+ or its key must
+ be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ envFrom:
+ description: |-
+ List of sources to populate environment variables in the container.
+ The keys defined within a source must be a C_IDENTIFIER. All invalid keys
+ will be reported as an event when the container is starting. When a key exists in multiple
+ sources, the value associated with the last source will take precedence.
+ Values defined by an Env with a duplicate key will take precedence.
+ Cannot be updated.
+ items:
+ description: EnvFromSource represents
+ the source of a set of ConfigMaps
+ properties:
+ configMapRef:
+ description: The ConfigMap
+ to select from
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify
+ whether the ConfigMap
+ must be defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ prefix:
+ description: An optional
+ identifier to prepend
+ to each key in the ConfigMap.
+ Must be a C_IDENTIFIER.
+ type: string
+ secretRef:
+ description: The Secret
+ to select from
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify
+ whether the Secret
+ must be defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ image:
+ description: |-
+ Container image name.
+ More info: https://kubernetes.io/docs/concepts/containers/images
+ This field is optional to allow higher level config management to default or override
+ container images in workload controllers like Deployments and StatefulSets.
+ type: string
+ imagePullPolicy:
+ description: |-
+ Image pull policy.
+ One of Always, Never, IfNotPresent.
+ Defaults to Always if :latest tag is specified, or IfNotPresent otherwise.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/containers/images#updating-images
+ type: string
+ lifecycle:
+ description: |-
+ Actions that the management system should take in response to container lifecycle events.
+ Cannot be updated.
+ properties:
+ postStart:
+ description: |-
+ PostStart is called immediately after a container is created. If the handler fails,
+ the container is terminated and restarted according to its restart policy.
+ Other management of the container blocks until the hook completes.
+ More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
+ properties:
+ exec:
+ description: Exec specifies
+ the action to take.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ description: HTTPGet specifies
+ the http request to
+ perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom
+ headers to set in
+ the request. HTTP
+ allows repeated
+ headers.
+ items:
+ description: HTTPHeader
+ describes a custom
+ header to be used
+ in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The
+ header field
+ value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path
+ to access on the
+ HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ description: Sleep represents
+ the duration that the
+ container should sleep
+ before being terminated.
+ properties:
+ seconds:
+ description: Seconds
+ is the number of
+ seconds to sleep.
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ description: |-
+ Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept
+ for the backward compatibility. There are no validation of this field and
+ lifecycle hooks will fail in runtime when tcp handler is specified.
+ properties:
+ host:
+ description: 'Optional:
+ Host name to connect
+ to, defaults to
+ the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ preStop:
+ description: |-
+ PreStop is called immediately before a container is terminated due to an
+ API request or management event such as liveness/startup probe failure,
+ preemption, resource contention, etc. The handler is not called if the
+ container crashes or exits. The Pod's termination grace period countdown begins before the
+ PreStop hook is executed. Regardless of the outcome of the handler, the
+ container will eventually terminate within the Pod's termination grace
+ period (unless delayed by finalizers). Other management of the container blocks until the hook completes
+ or until the termination grace period is reached.
+ More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
+ properties:
+ exec:
+ description: Exec specifies
+ the action to take.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ description: HTTPGet specifies
+ the http request to
+ perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom
+ headers to set in
+ the request. HTTP
+ allows repeated
+ headers.
+ items:
+ description: HTTPHeader
+ describes a custom
+ header to be used
+ in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The
+ header field
+ value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path
+ to access on the
+ HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ description: Sleep represents
+ the duration that the
+ container should sleep
+ before being terminated.
+ properties:
+ seconds:
+ description: Seconds
+ is the number of
+ seconds to sleep.
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ description: |-
+ Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept
+ for the backward compatibility. There are no validation of this field and
+ lifecycle hooks will fail in runtime when tcp handler is specified.
+ properties:
+ host:
+ description: 'Optional:
+ Host name to connect
+ to, defaults to
+ the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ type: object
+ livenessProbe:
+ description: |-
+ Periodic probe of container liveness.
+ Container will be restarted if the probe fails.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ properties:
+ exec:
+ description: Exec specifies
+ the action to take.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
+ format: int32
+ type: integer
+ grpc:
+ description: GRPC specifies
+ an action involving a GRPC
+ port.
+ properties:
+ port:
+ description: Port number
+ of the gRPC service.
+ Number must be in the
+ range 1 to 65535.
+ format: int32
+ type: integer
+ service:
+ default: ""
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
+ (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
+
+ If this is not specified, the default behavior is defined by gRPC.
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ description: HTTPGet specifies
+ the http request to perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers
+ to set in the request.
+ HTTP allows repeated
+ headers.
+ items:
+ description: HTTPHeader
+ describes a custom
+ header to be used
+ in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The
+ header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access
+ on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ periodSeconds:
+ description: |-
+ How often (in seconds) to perform the probe.
+ Default to 10 seconds. Minimum value is 1.
+ format: int32
+ type: integer
+ successThreshold:
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
+ format: int32
+ type: integer
+ tcpSocket:
+ description: TCPSocket specifies
+ an action involving a TCP
+ port.
+ properties:
+ host:
+ description: 'Optional:
+ Host name to connect
+ to, defaults to the
+ pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
+ format: int64
+ type: integer
+ timeoutSeconds:
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ type: object
+ name:
+ description: |-
+ Name of the container specified as a DNS_LABEL.
+ Each container in a pod must have a unique name (DNS_LABEL).
+ Cannot be updated.
+ type: string
+ ports:
+ description: |-
+ List of ports to expose from the container. Not specifying a port here
+ DOES NOT prevent that port from being exposed. Any port which is
+ listening on the default "0.0.0.0" address inside a container will be
+ accessible from the network.
+ Modifying this array with strategic merge patch may corrupt the data.
+ For more information See https://github.com/kubernetes/kubernetes/issues/108255.
+ Cannot be updated.
+ items:
+ description: ContainerPort represents
+ a network port in a single
+ container.
+ properties:
+ containerPort:
+ description: |-
+ Number of port to expose on the pod's IP address.
+ This must be a valid port number, 0 < x < 65536.
+ format: int32
+ type: integer
+ hostIP:
+ description: What host IP
+ to bind the external port
+ to.
+ type: string
+ hostPort:
+ description: |-
+ Number of port to expose on the host.
+ If specified, this must be a valid port number, 0 < x < 65536.
+ If HostNetwork is specified, this must match ContainerPort.
+ Most containers do not need this.
+ format: int32
+ type: integer
+ name:
+ description: |-
+ If specified, this must be an IANA_SVC_NAME and unique within the pod. Each
+ named port in a pod must have a unique name. Name for the port that can be
+ referred to by services.
+ type: string
+ protocol:
+ default: TCP
+ description: |-
+ Protocol for port. Must be UDP, TCP, or SCTP.
+ Defaults to "TCP".
+ type: string
+ required:
+ - containerPort
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - containerPort
+ - protocol
+ x-kubernetes-list-type: map
+ readinessProbe:
+ description: |-
+ Periodic probe of container service readiness.
+ Container will be removed from service endpoints if the probe fails.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ properties:
+ exec:
+ description: Exec specifies
+ the action to take.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
+ format: int32
+ type: integer
+ grpc:
+ description: GRPC specifies
+ an action involving a GRPC
+ port.
+ properties:
+ port:
+ description: Port number
+ of the gRPC service.
+ Number must be in the
+ range 1 to 65535.
+ format: int32
+ type: integer
+ service:
+ default: ""
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
+ (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
+
+ If this is not specified, the default behavior is defined by gRPC.
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ description: HTTPGet specifies
+ the http request to perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers
+ to set in the request.
+ HTTP allows repeated
+ headers.
+ items:
+ description: HTTPHeader
+ describes a custom
+ header to be used
+ in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The
+ header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access
+ on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ periodSeconds:
+ description: |-
+ How often (in seconds) to perform the probe.
+ Default to 10 seconds. Minimum value is 1.
+ format: int32
+ type: integer
+ successThreshold:
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
+ format: int32
+ type: integer
+ tcpSocket:
+ description: TCPSocket specifies
+ an action involving a TCP
+ port.
+ properties:
+ host:
+ description: 'Optional:
+ Host name to connect
+ to, defaults to the
+ pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
+ format: int64
+ type: integer
+ timeoutSeconds:
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ type: object
+ resizePolicy:
+ description: Resources resize
+ policy for the container.
+ items:
+ description: ContainerResizePolicy
+ represents resource resize
+ policy for the container.
+ properties:
+ resourceName:
+ description: |-
+ Name of the resource to which this resource resize policy applies.
+ Supported values: cpu, memory.
+ type: string
+ restartPolicy:
+ description: |-
+ Restart policy to apply when specified resource is resized.
+ If not specified, it defaults to NotRequired.
+ type: string
+ required:
+ - resourceName
+ - restartPolicy
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ resources:
+ description: |-
+ Compute Resources required by this container.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ properties:
+ claims:
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+ This field is immutable. It can only be set for containers.
+ items:
+ description: ResourceClaim
+ references one entry in
+ PodSpec.ResourceClaims.
+ properties:
+ name:
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
+ type: string
+ request:
+ description: |-
+ Request is the name chosen for a request in the referenced claim.
+ If empty, everything from the claim is made available, otherwise
+ only the result of this request.
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ limits:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ type: object
+ requests:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ type: object
+ type: object
+ restartPolicy:
+ description: |-
+ RestartPolicy defines the restart behavior of individual containers in a pod.
+ This field may only be set for init containers, and the only allowed value is "Always".
+ For non-init containers or when this field is not specified,
+ the restart behavior is defined by the Pod's restart policy and the container type.
+ Setting the RestartPolicy as "Always" for the init container will have the following effect:
+ this init container will be continually restarted on
+ exit until all regular containers have terminated. Once all regular
+ containers have completed, all init containers with restartPolicy "Always"
+ will be shut down. This lifecycle differs from normal init containers and
+ is often referred to as a "sidecar" container. Although this init
+ container still starts in the init container sequence, it does not wait
+ for the container to complete before proceeding to the next init
+ container. Instead, the next init container starts immediately after this
+ init container is started, or after any startupProbe has successfully
+ completed.
+ type: string
+ securityContext:
+ description: |-
+ SecurityContext defines the security options the container should be run with.
+ If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext.
+ More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
+ properties:
+ allowPrivilegeEscalation:
+ description: |-
+ AllowPrivilegeEscalation controls whether a process can gain more
+ privileges than its parent process. This bool directly controls if
+ the no_new_privs flag will be set on the container process.
+ AllowPrivilegeEscalation is true always when the container is:
+ 1) run as Privileged
+ 2) has CAP_SYS_ADMIN
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ appArmorProfile:
+ description: |-
+ appArmorProfile is the AppArmor options to use by this container. If set, this profile
+ overrides the pod's appArmorProfile.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile loaded on the node that should be used.
+ The profile must be preconfigured on the node to work.
+ Must match the loaded name of the profile.
+ Must be set if and only if type is "Localhost".
+ type: string
+ type:
+ description: |-
+ type indicates which kind of AppArmor profile will be applied.
+ Valid options are:
+ Localhost - a profile pre-loaded on the node.
+ RuntimeDefault - the container runtime's default profile.
+ Unconfined - no AppArmor enforcement.
+ type: string
+ required:
+ - type
+ type: object
+ capabilities:
+ description: |-
+ The capabilities to add/drop when running containers.
+ Defaults to the default set of capabilities granted by the container runtime.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ add:
+ description: Added capabilities
+ items:
+ description: Capability
+ represent POSIX capabilities
+ type
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ drop:
+ description: Removed capabilities
+ items:
+ description: Capability
+ represent POSIX capabilities
+ type
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ privileged:
+ description: |-
+ Run container in privileged mode.
+ Processes in privileged containers are essentially equivalent to root on the host.
+ Defaults to false.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ procMount:
+ description: |-
+ procMount denotes the type of proc mount to use for the containers.
+ The default value is Default which uses the container runtime defaults for
+ readonly paths and masked paths.
+ This requires the ProcMountType feature flag to be enabled.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: string
+ readOnlyRootFilesystem:
+ description: |-
+ Whether this container has a read-only root filesystem.
+ Default is false.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ runAsGroup:
+ description: |-
+ The GID to run the entrypoint of the container process.
+ Uses runtime default if unset.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ runAsNonRoot:
+ description: |-
+ Indicates that the container must run as a non-root user.
+ If true, the Kubelet will validate the image at runtime to ensure that it
+ does not run as UID 0 (root) and fail to start the container if it does.
+ If unset or false, no such validation will be performed.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: boolean
+ runAsUser:
+ description: |-
+ The UID to run the entrypoint of the container process.
+ Defaults to user specified in image metadata if unspecified.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ seLinuxOptions:
+ description: |-
+ The SELinux context to be applied to the container.
+ If unspecified, the container runtime will allocate a random SELinux context for each
+ container. May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ level:
+ description: Level is
+ SELinux level label
+ that applies to the
+ container.
+ type: string
+ role:
+ description: Role is a
+ SELinux role label that
+ applies to the container.
+ type: string
+ type:
+ description: Type is a
+ SELinux type label that
+ applies to the container.
+ type: string
+ user:
+ description: User is a
+ SELinux user label that
+ applies to the container.
+ type: string
+ type: object
+ seccompProfile:
+ description: |-
+ The seccomp options to use by this container. If seccomp options are
+ provided at both the pod & container level, the container options
+ override the pod options.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile defined in a file on the node should be used.
+ The profile must be preconfigured on the node to work.
+ Must be a descending path, relative to the kubelet's configured seccomp profile location.
+ Must be set if type is "Localhost". Must NOT be set for any other type.
+ type: string
+ type:
+ description: |-
+ type indicates which kind of seccomp profile will be applied.
+ Valid options are:
+
+ Localhost - a profile defined in a file on the node should be used.
+ RuntimeDefault - the container runtime default profile should be used.
+ Unconfined - no profile should be applied.
+ type: string
+ required:
+ - type
+ type: object
+ windowsOptions:
+ description: |-
+ The Windows specific settings applied to all containers.
+ If unspecified, the options from the PodSecurityContext will be used.
+ If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is linux.
+ properties:
+ gmsaCredentialSpec:
+ description: |-
+ GMSACredentialSpec is where the GMSA admission webhook
+ (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the
+ GMSA credential spec named by the GMSACredentialSpecName field.
+ type: string
+ gmsaCredentialSpecName:
+ description: GMSACredentialSpecName
+ is the name of the GMSA
+ credential spec to use.
+ type: string
+ hostProcess:
+ description: |-
+ HostProcess determines if a container should be run as a 'Host Process' container.
+ All of a Pod's containers must have the same effective HostProcess value
+ (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers).
+ In addition, if HostProcess is true then HostNetwork must also be set to true.
+ type: boolean
+ runAsUserName:
+ description: |-
+ The UserName in Windows to run the entrypoint of the container process.
+ Defaults to the user specified in image metadata if unspecified.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: string
+ type: object
+ type: object
+ startupProbe:
+ description: |-
+ 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: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ properties:
+ exec:
+ description: Exec specifies
+ the action to take.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
+ format: int32
+ type: integer
+ grpc:
+ description: GRPC specifies
+ an action involving a GRPC
+ port.
+ properties:
+ port:
+ description: Port number
+ of the gRPC service.
+ Number must be in the
+ range 1 to 65535.
+ format: int32
+ type: integer
+ service:
+ default: ""
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
+ (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
+
+ If this is not specified, the default behavior is defined by gRPC.
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ description: HTTPGet specifies
+ the http request to perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers
+ to set in the request.
+ HTTP allows repeated
+ headers.
+ items:
+ description: HTTPHeader
+ describes a custom
+ header to be used
+ in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The
+ header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access
+ on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ periodSeconds:
+ description: |-
+ How often (in seconds) to perform the probe.
+ Default to 10 seconds. Minimum value is 1.
+ format: int32
+ type: integer
+ successThreshold:
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
+ format: int32
+ type: integer
+ tcpSocket:
+ description: TCPSocket specifies
+ an action involving a TCP
+ port.
+ properties:
+ host:
+ description: 'Optional:
+ Host name to connect
+ to, defaults to the
+ pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
+ format: int64
+ type: integer
+ timeoutSeconds:
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ type: object
+ stdin:
+ description: |-
+ Whether this container should allocate a buffer for stdin in the container runtime. If this
+ is not set, reads from stdin in the container will always result in EOF.
+ Default is false.
+ type: boolean
+ stdinOnce:
+ description: |-
+ Whether the container runtime should close the stdin channel after it has been opened by
+ a single attach. When stdin is true the stdin stream will remain open across multiple attach
+ sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the
+ first client attaches to stdin, and then remains open and accepts data until the client disconnects,
+ at which time stdin is closed and remains closed until the container is restarted. If this
+ flag is false, a container processes that reads from stdin will never receive an EOF.
+ Default is false
+ type: boolean
+ terminationMessagePath:
+ description: |-
+ Optional: Path at which the file to which the container's termination message
+ will be written is mounted into the container's filesystem.
+ Message written is intended to be brief final status, such as an assertion failure message.
+ Will be truncated by the node if greater than 4096 bytes. The total message length across
+ all containers will be limited to 12kb.
+ Defaults to /dev/termination-log.
+ Cannot be updated.
+ type: string
+ terminationMessagePolicy:
+ description: |-
+ Indicate how the termination message should be populated. File will use the contents of
+ terminationMessagePath to populate the container status message on both success and failure.
+ FallbackToLogsOnError will use the last chunk of container log output if the termination
+ message file is empty and the container exited with an error.
+ The log output is limited to 2048 bytes or 80 lines, whichever is smaller.
+ Defaults to File.
+ Cannot be updated.
+ type: string
+ tty:
+ description: |-
+ Whether this container should allocate a TTY for itself, also requires 'stdin' to be true.
+ Default is false.
+ type: boolean
+ volumeDevices:
+ description: volumeDevices is
+ the list of block devices to
+ be used by the container.
+ items:
+ description: volumeDevice describes
+ a mapping of a raw block device
+ within a container.
+ properties:
+ devicePath:
+ description: devicePath
+ is the path inside of
+ the container that the
+ device will be mapped
+ to.
+ type: string
+ name:
+ description: name must match
+ the name of a persistentVolumeClaim
+ in the pod
+ type: string
+ required:
+ - devicePath
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
+ volumeMounts:
+ description: |-
+ Pod volumes to mount into the container's filesystem.
+ Cannot be updated.
+ items:
+ description: VolumeMount describes
+ a mounting of a Volume within
+ a container.
+ properties:
+ mountPath:
+ description: |-
+ Path within the container at which the volume should be mounted. Must
+ not contain ':'.
+ type: string
+ mountPropagation:
+ description: |-
+ mountPropagation determines how mounts are propagated from the host
+ to container and the other way around.
+ When not set, MountPropagationNone is used.
+ This field is beta in 1.10.
+ When RecursiveReadOnly is set to IfPossible or to Enabled, MountPropagation must be None or unspecified
+ (which defaults to None).
+ type: string
+ name:
+ description: This must match
+ the Name of a Volume.
+ type: string
+ readOnly:
+ description: |-
+ Mounted read-only if true, read-write otherwise (false or unspecified).
+ Defaults to false.
+ type: boolean
+ recursiveReadOnly:
+ description: |-
+ RecursiveReadOnly specifies whether read-only mounts should be handled
+ recursively.
+
+ If ReadOnly is false, this field has no meaning and must be unspecified.
+
+ If ReadOnly is true, and this field is set to Disabled, the mount is not made
+ recursively read-only. If this field is set to IfPossible, the mount is made
+ recursively read-only, if it is supported by the container runtime. If this
+ field is set to Enabled, the mount is made recursively read-only if it is
+ supported by the container runtime, otherwise the pod will not be started and
+ an error will be generated to indicate the reason.
+
+ If this field is set to IfPossible or Enabled, MountPropagation must be set to
+ None (or be unspecified, which defaults to None).
+
+ If this field is not specified, it is treated as an equivalent of Disabled.
+ type: string
+ subPath:
+ description: |-
+ Path within the volume from which the container's volume should be mounted.
+ Defaults to "" (volume's root).
+ type: string
+ subPathExpr:
+ description: |-
+ Expanded path within the volume from which the container's volume should be mounted.
+ Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.
+ Defaults to "" (volume's root).
+ SubPathExpr and SubPath are mutually exclusive.
+ type: string
+ required:
+ - mountPath
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
+ workingDir:
+ description: |-
+ Container's working directory.
+ If not specified, the container runtime's default will be used, which
+ might be configured in the container image.
+ Cannot be updated.
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ dnsConfig:
+ description: |-
+ Specifies the DNS parameters of a pod.
+ Parameters specified here will be merged to the generated DNS
+ configuration based on DNSPolicy.
+ properties:
+ nameservers:
+ description: |-
+ A list of DNS name server IP addresses.
+ This will be appended to the base nameservers generated from DNSPolicy.
+ Duplicated nameservers will be removed.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ options:
+ description: |-
+ A list of DNS resolver options.
+ This will be merged with the base options generated from DNSPolicy.
+ Duplicated entries will be removed. Resolution options given in Options
+ will override those that appear in the base DNSPolicy.
+ items:
+ description: PodDNSConfigOption
+ defines DNS resolver options
+ of a pod.
+ properties:
+ name:
+ description: Required.
+ type: string
+ value:
+ type: string
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ searches:
+ description: |-
+ A list of DNS search domains for host-name lookup.
+ This will be appended to the base search paths generated from DNSPolicy.
+ Duplicated search paths will be removed.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ dnsPolicy:
+ description: |-
+ Set DNS policy for the pod.
+ Defaults to "ClusterFirst".
+ Valid values are 'ClusterFirstWithHostNet', 'ClusterFirst', 'Default' or 'None'.
+ DNS parameters given in DNSConfig will be merged with the policy selected with DNSPolicy.
+ To have DNS options set along with hostNetwork, you have to specify DNS policy
+ explicitly to 'ClusterFirstWithHostNet'.
+ type: string
+ enableServiceLinks:
+ description: |-
+ EnableServiceLinks indicates whether information about services should be injected into pod's
+ environment variables, matching the syntax of Docker links.
+ Optional: Defaults to true.
+ type: boolean
+ ephemeralContainers:
+ description: |-
+ List of ephemeral containers run in this pod. Ephemeral containers may be run in an existing
+ pod to perform user-initiated actions such as debugging. This list cannot be specified when
+ creating a pod, and it cannot be modified by updating the pod spec. In order to add an
+ ephemeral container to an existing pod, use the pod's ephemeralcontainers subresource.
+ items:
+ description: |-
+ An EphemeralContainer is a temporary container that you may add to an existing Pod for
+ user-initiated activities such as debugging. Ephemeral containers have no resource or
+ scheduling guarantees, and they will not be restarted when they exit or when a Pod is
+ removed or restarted. The kubelet may evict a Pod if an ephemeral container causes the
+ Pod to exceed its resource allocation.
+
+ To add an ephemeral container, use the ephemeralcontainers subresource of an existing
+ Pod. Ephemeral containers may not be removed or restarted.
+ properties:
+ args:
+ description: |-
+ Arguments to the entrypoint.
+ The image's CMD is used if this is not provided.
+ Variable references $(VAR_NAME) are expanded using the container's environment. If a variable
+ cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will
+ produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless
+ of whether the variable exists or not. Cannot be updated.
+ More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ command:
+ description: |-
+ Entrypoint array. Not executed within a shell.
+ The image's ENTRYPOINT is used if this is not provided.
+ Variable references $(VAR_NAME) are expanded using the container's environment. If a variable
+ cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will
+ produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless
+ of whether the variable exists or not. Cannot be updated.
+ More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ env:
+ description: |-
+ List of environment variables to set in the container.
+ Cannot be updated.
+ items:
+ description: EnvVar represents
+ an environment variable present
+ in a Container.
+ properties:
+ name:
+ description: Name of the
+ environment variable.
+ Must be a C_IDENTIFIER.
+ type: string
+ value:
+ description: |-
+ Variable references $(VAR_NAME) are expanded
+ using the previously defined environment variables in the container and
+ any service environment variables. If a variable cannot be resolved,
+ the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e.
+ "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)".
+ Escaped references will never be expanded, regardless of whether the variable
+ exists or not.
+ Defaults to "".
+ type: string
+ valueFrom:
+ description: Source for
+ the environment variable's
+ value. Cannot be used
+ if value is not empty.
+ properties:
+ configMapKeyRef:
+ description: Selects
+ a key of a ConfigMap.
+ properties:
+ key:
+ description: The
+ key to select.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify
+ whether the ConfigMap
+ or its key must
+ be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ fieldRef:
+ description: |-
+ Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`,
+ spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.
+ properties:
+ apiVersion:
+ description: Version
+ of the schema
+ the FieldPath
+ is written in
+ terms of, defaults
+ to "v1".
+ type: string
+ fieldPath:
+ description: Path
+ of the field to
+ select in the
+ specified API
+ version.
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ resourceFieldRef:
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported.
+ properties:
+ containerName:
+ description: 'Container
+ name: required
+ for volumes, optional
+ for env vars'
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ description: Specifies
+ the output format
+ of the exposed
+ resources, defaults
+ to "1"
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ description: 'Required:
+ resource to select'
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ secretKeyRef:
+ description: Selects
+ a key of a secret
+ in the pod's namespace
+ properties:
+ key:
+ description: The
+ key of the secret
+ to select from. Must
+ be a valid secret
+ key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify
+ whether the Secret
+ or its key must
+ be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ envFrom:
+ description: |-
+ List of sources to populate environment variables in the container.
+ The keys defined within a source must be a C_IDENTIFIER. All invalid keys
+ will be reported as an event when the container is starting. When a key exists in multiple
+ sources, the value associated with the last source will take precedence.
+ Values defined by an Env with a duplicate key will take precedence.
+ Cannot be updated.
+ items:
+ description: EnvFromSource represents
+ the source of a set of ConfigMaps
+ properties:
+ configMapRef:
+ description: The ConfigMap
+ to select from
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify
+ whether the ConfigMap
+ must be defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ prefix:
+ description: An optional
+ identifier to prepend
+ to each key in the ConfigMap.
+ Must be a C_IDENTIFIER.
+ type: string
+ secretRef:
+ description: The Secret
+ to select from
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify
+ whether the Secret
+ must be defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ image:
+ description: |-
+ Container image name.
+ More info: https://kubernetes.io/docs/concepts/containers/images
+ type: string
+ imagePullPolicy:
+ description: |-
+ Image pull policy.
+ One of Always, Never, IfNotPresent.
+ Defaults to Always if :latest tag is specified, or IfNotPresent otherwise.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/containers/images#updating-images
+ type: string
+ lifecycle:
+ description: Lifecycle is not
+ allowed for ephemeral containers.
+ properties:
+ postStart:
+ description: |-
+ PostStart is called immediately after a container is created. If the handler fails,
+ the container is terminated and restarted according to its restart policy.
+ Other management of the container blocks until the hook completes.
+ More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
+ properties:
+ exec:
+ description: Exec specifies
+ the action to take.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ description: HTTPGet specifies
+ the http request to
+ perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom
+ headers to set in
+ the request. HTTP
+ allows repeated
+ headers.
+ items:
+ description: HTTPHeader
+ describes a custom
+ header to be used
+ in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The
+ header field
+ value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path
+ to access on the
+ HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ description: Sleep represents
+ the duration that the
+ container should sleep
+ before being terminated.
+ properties:
+ seconds:
+ description: Seconds
+ is the number of
+ seconds to sleep.
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ description: |-
+ Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept
+ for the backward compatibility. There are no validation of this field and
+ lifecycle hooks will fail in runtime when tcp handler is specified.
+ properties:
+ host:
+ description: 'Optional:
+ Host name to connect
+ to, defaults to
+ the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ preStop:
+ description: |-
+ PreStop is called immediately before a container is terminated due to an
+ API request or management event such as liveness/startup probe failure,
+ preemption, resource contention, etc. The handler is not called if the
+ container crashes or exits. The Pod's termination grace period countdown begins before the
+ PreStop hook is executed. Regardless of the outcome of the handler, the
+ container will eventually terminate within the Pod's termination grace
+ period (unless delayed by finalizers). Other management of the container blocks until the hook completes
+ or until the termination grace period is reached.
+ More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
+ properties:
+ exec:
+ description: Exec specifies
+ the action to take.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ description: HTTPGet specifies
+ the http request to
+ perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom
+ headers to set in
+ the request. HTTP
+ allows repeated
+ headers.
+ items:
+ description: HTTPHeader
+ describes a custom
+ header to be used
+ in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The
+ header field
+ value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path
+ to access on the
+ HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ description: Sleep represents
+ the duration that the
+ container should sleep
+ before being terminated.
+ properties:
+ seconds:
+ description: Seconds
+ is the number of
+ seconds to sleep.
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ description: |-
+ Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept
+ for the backward compatibility. There are no validation of this field and
+ lifecycle hooks will fail in runtime when tcp handler is specified.
+ properties:
+ host:
+ description: 'Optional:
+ Host name to connect
+ to, defaults to
+ the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ type: object
+ livenessProbe:
+ description: Probes are not allowed
+ for ephemeral containers.
+ properties:
+ exec:
+ description: Exec specifies
+ the action to take.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
+ format: int32
+ type: integer
+ grpc:
+ description: GRPC specifies
+ an action involving a GRPC
+ port.
+ properties:
+ port:
+ description: Port number
+ of the gRPC service.
+ Number must be in the
+ range 1 to 65535.
+ format: int32
+ type: integer
+ service:
+ default: ""
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
+ (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
+
+ If this is not specified, the default behavior is defined by gRPC.
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ description: HTTPGet specifies
+ the http request to perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers
+ to set in the request.
+ HTTP allows repeated
+ headers.
+ items:
+ description: HTTPHeader
+ describes a custom
+ header to be used
+ in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The
+ header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access
+ on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ periodSeconds:
+ description: |-
+ How often (in seconds) to perform the probe.
+ Default to 10 seconds. Minimum value is 1.
+ format: int32
+ type: integer
+ successThreshold:
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
+ format: int32
+ type: integer
+ tcpSocket:
+ description: TCPSocket specifies
+ an action involving a TCP
+ port.
+ properties:
+ host:
+ description: 'Optional:
+ Host name to connect
+ to, defaults to the
+ pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
+ format: int64
+ type: integer
+ timeoutSeconds:
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ type: object
+ name:
+ description: |-
+ Name of the ephemeral container specified as a DNS_LABEL.
+ This name must be unique among all containers, init containers and ephemeral containers.
+ type: string
+ ports:
+ description: Ports are not allowed
+ for ephemeral containers.
+ items:
+ description: ContainerPort represents
+ a network port in a single
+ container.
+ properties:
+ containerPort:
+ description: |-
+ Number of port to expose on the pod's IP address.
+ This must be a valid port number, 0 < x < 65536.
+ format: int32
+ type: integer
+ hostIP:
+ description: What host IP
+ to bind the external port
+ to.
+ type: string
+ hostPort:
+ description: |-
+ Number of port to expose on the host.
+ If specified, this must be a valid port number, 0 < x < 65536.
+ If HostNetwork is specified, this must match ContainerPort.
+ Most containers do not need this.
+ format: int32
+ type: integer
+ name:
+ description: |-
+ If specified, this must be an IANA_SVC_NAME and unique within the pod. Each
+ named port in a pod must have a unique name. Name for the port that can be
+ referred to by services.
+ type: string
+ protocol:
+ default: TCP
+ description: |-
+ Protocol for port. Must be UDP, TCP, or SCTP.
+ Defaults to "TCP".
+ type: string
+ required:
+ - containerPort
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - containerPort
+ - protocol
+ x-kubernetes-list-type: map
+ readinessProbe:
+ description: Probes are not allowed
+ for ephemeral containers.
+ properties:
+ exec:
+ description: Exec specifies
+ the action to take.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
+ format: int32
+ type: integer
+ grpc:
+ description: GRPC specifies
+ an action involving a GRPC
+ port.
+ properties:
+ port:
+ description: Port number
+ of the gRPC service.
+ Number must be in the
+ range 1 to 65535.
+ format: int32
+ type: integer
+ service:
+ default: ""
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
+ (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
+
+ If this is not specified, the default behavior is defined by gRPC.
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ description: HTTPGet specifies
+ the http request to perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers
+ to set in the request.
+ HTTP allows repeated
+ headers.
+ items:
+ description: HTTPHeader
+ describes a custom
+ header to be used
+ in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The
+ header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access
+ on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ periodSeconds:
+ description: |-
+ How often (in seconds) to perform the probe.
+ Default to 10 seconds. Minimum value is 1.
+ format: int32
+ type: integer
+ successThreshold:
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
+ format: int32
+ type: integer
+ tcpSocket:
+ description: TCPSocket specifies
+ an action involving a TCP
+ port.
+ properties:
+ host:
+ description: 'Optional:
+ Host name to connect
+ to, defaults to the
+ pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
+ format: int64
+ type: integer
+ timeoutSeconds:
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ type: object
+ resizePolicy:
+ description: Resources resize
+ policy for the container.
+ items:
+ description: ContainerResizePolicy
+ represents resource resize
+ policy for the container.
+ properties:
+ resourceName:
+ description: |-
+ Name of the resource to which this resource resize policy applies.
+ Supported values: cpu, memory.
+ type: string
+ restartPolicy:
+ description: |-
+ Restart policy to apply when specified resource is resized.
+ If not specified, it defaults to NotRequired.
+ type: string
+ required:
+ - resourceName
+ - restartPolicy
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ resources:
+ description: |-
+ Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources
+ already allocated to the pod.
+ properties:
+ claims:
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+ This field is immutable. It can only be set for containers.
+ items:
+ description: ResourceClaim
+ references one entry in
+ PodSpec.ResourceClaims.
+ properties:
+ name:
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
+ type: string
+ request:
+ description: |-
+ Request is the name chosen for a request in the referenced claim.
+ If empty, everything from the claim is made available, otherwise
+ only the result of this request.
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ limits:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ type: object
+ requests:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ type: object
+ type: object
+ restartPolicy:
+ description: |-
+ Restart policy for the container to manage the restart behavior of each
+ container within a pod.
+ This may only be set for init containers. You cannot set this field on
+ ephemeral containers.
+ type: string
+ securityContext:
+ description: |-
+ Optional: SecurityContext defines the security options the ephemeral container should be run with.
+ If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext.
+ properties:
+ allowPrivilegeEscalation:
+ description: |-
+ AllowPrivilegeEscalation controls whether a process can gain more
+ privileges than its parent process. This bool directly controls if
+ the no_new_privs flag will be set on the container process.
+ AllowPrivilegeEscalation is true always when the container is:
+ 1) run as Privileged
+ 2) has CAP_SYS_ADMIN
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ appArmorProfile:
+ description: |-
+ appArmorProfile is the AppArmor options to use by this container. If set, this profile
+ overrides the pod's appArmorProfile.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile loaded on the node that should be used.
+ The profile must be preconfigured on the node to work.
+ Must match the loaded name of the profile.
+ Must be set if and only if type is "Localhost".
+ type: string
+ type:
+ description: |-
+ type indicates which kind of AppArmor profile will be applied.
+ Valid options are:
+ Localhost - a profile pre-loaded on the node.
+ RuntimeDefault - the container runtime's default profile.
+ Unconfined - no AppArmor enforcement.
+ type: string
+ required:
+ - type
+ type: object
+ capabilities:
+ description: |-
+ The capabilities to add/drop when running containers.
+ Defaults to the default set of capabilities granted by the container runtime.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ add:
+ description: Added capabilities
+ items:
+ description: Capability
+ represent POSIX capabilities
+ type
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ drop:
+ description: Removed capabilities
+ items:
+ description: Capability
+ represent POSIX capabilities
+ type
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ privileged:
+ description: |-
+ Run container in privileged mode.
+ Processes in privileged containers are essentially equivalent to root on the host.
+ Defaults to false.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ procMount:
+ description: |-
+ procMount denotes the type of proc mount to use for the containers.
+ The default value is Default which uses the container runtime defaults for
+ readonly paths and masked paths.
+ This requires the ProcMountType feature flag to be enabled.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: string
+ readOnlyRootFilesystem:
+ description: |-
+ Whether this container has a read-only root filesystem.
+ Default is false.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ runAsGroup:
+ description: |-
+ The GID to run the entrypoint of the container process.
+ Uses runtime default if unset.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ runAsNonRoot:
+ description: |-
+ Indicates that the container must run as a non-root user.
+ If true, the Kubelet will validate the image at runtime to ensure that it
+ does not run as UID 0 (root) and fail to start the container if it does.
+ If unset or false, no such validation will be performed.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: boolean
+ runAsUser:
+ description: |-
+ The UID to run the entrypoint of the container process.
+ Defaults to user specified in image metadata if unspecified.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ seLinuxOptions:
+ description: |-
+ The SELinux context to be applied to the container.
+ If unspecified, the container runtime will allocate a random SELinux context for each
+ container. May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ level:
+ description: Level is
+ SELinux level label
+ that applies to the
+ container.
+ type: string
+ role:
+ description: Role is a
+ SELinux role label that
+ applies to the container.
+ type: string
+ type:
+ description: Type is a
+ SELinux type label that
+ applies to the container.
+ type: string
+ user:
+ description: User is a
+ SELinux user label that
+ applies to the container.
+ type: string
+ type: object
+ seccompProfile:
+ description: |-
+ The seccomp options to use by this container. If seccomp options are
+ provided at both the pod & container level, the container options
+ override the pod options.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile defined in a file on the node should be used.
+ The profile must be preconfigured on the node to work.
+ Must be a descending path, relative to the kubelet's configured seccomp profile location.
+ Must be set if type is "Localhost". Must NOT be set for any other type.
+ type: string
+ type:
+ description: |-
+ type indicates which kind of seccomp profile will be applied.
+ Valid options are:
+
+ Localhost - a profile defined in a file on the node should be used.
+ RuntimeDefault - the container runtime default profile should be used.
+ Unconfined - no profile should be applied.
+ type: string
+ required:
+ - type
+ type: object
+ windowsOptions:
+ description: |-
+ The Windows specific settings applied to all containers.
+ If unspecified, the options from the PodSecurityContext will be used.
+ If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is linux.
+ properties:
+ gmsaCredentialSpec:
+ description: |-
+ GMSACredentialSpec is where the GMSA admission webhook
+ (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the
+ GMSA credential spec named by the GMSACredentialSpecName field.
+ type: string
+ gmsaCredentialSpecName:
+ description: GMSACredentialSpecName
+ is the name of the GMSA
+ credential spec to use.
+ type: string
+ hostProcess:
+ description: |-
+ HostProcess determines if a container should be run as a 'Host Process' container.
+ All of a Pod's containers must have the same effective HostProcess value
+ (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers).
+ In addition, if HostProcess is true then HostNetwork must also be set to true.
+ type: boolean
+ runAsUserName:
+ description: |-
+ The UserName in Windows to run the entrypoint of the container process.
+ Defaults to the user specified in image metadata if unspecified.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: string
+ type: object
+ type: object
+ startupProbe:
+ description: Probes are not allowed
+ for ephemeral containers.
+ properties:
+ exec:
+ description: Exec specifies
+ the action to take.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
+ format: int32
+ type: integer
+ grpc:
+ description: GRPC specifies
+ an action involving a GRPC
+ port.
+ properties:
+ port:
+ description: Port number
+ of the gRPC service.
+ Number must be in the
+ range 1 to 65535.
+ format: int32
+ type: integer
+ service:
+ default: ""
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
+ (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
+
+ If this is not specified, the default behavior is defined by gRPC.
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ description: HTTPGet specifies
+ the http request to perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers
+ to set in the request.
+ HTTP allows repeated
+ headers.
+ items:
+ description: HTTPHeader
+ describes a custom
+ header to be used
+ in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The
+ header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access
+ on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ periodSeconds:
+ description: |-
+ How often (in seconds) to perform the probe.
+ Default to 10 seconds. Minimum value is 1.
+ format: int32
+ type: integer
+ successThreshold:
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
+ format: int32
+ type: integer
+ tcpSocket:
+ description: TCPSocket specifies
+ an action involving a TCP
+ port.
+ properties:
+ host:
+ description: 'Optional:
+ Host name to connect
+ to, defaults to the
+ pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
+ format: int64
+ type: integer
+ timeoutSeconds:
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ type: object
+ stdin:
+ description: |-
+ Whether this container should allocate a buffer for stdin in the container runtime. If this
+ is not set, reads from stdin in the container will always result in EOF.
+ Default is false.
+ type: boolean
+ stdinOnce:
+ description: |-
+ Whether the container runtime should close the stdin channel after it has been opened by
+ a single attach. When stdin is true the stdin stream will remain open across multiple attach
+ sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the
+ first client attaches to stdin, and then remains open and accepts data until the client disconnects,
+ at which time stdin is closed and remains closed until the container is restarted. If this
+ flag is false, a container processes that reads from stdin will never receive an EOF.
+ Default is false
+ type: boolean
+ targetContainerName:
+ description: |-
+ If set, the name of the container from PodSpec that this ephemeral container targets.
+ The ephemeral container will be run in the namespaces (IPC, PID, etc) of this container.
+ If not set then the ephemeral container uses the namespaces configured in the Pod spec.
+
+ The container runtime must implement support for this feature. If the runtime does not
+ support namespace targeting then the result of setting this field is undefined.
+ type: string
+ terminationMessagePath:
+ description: |-
+ Optional: Path at which the file to which the container's termination message
+ will be written is mounted into the container's filesystem.
+ Message written is intended to be brief final status, such as an assertion failure message.
+ Will be truncated by the node if greater than 4096 bytes. The total message length across
+ all containers will be limited to 12kb.
+ Defaults to /dev/termination-log.
+ Cannot be updated.
+ type: string
+ terminationMessagePolicy:
+ description: |-
+ Indicate how the termination message should be populated. File will use the contents of
+ terminationMessagePath to populate the container status message on both success and failure.
+ FallbackToLogsOnError will use the last chunk of container log output if the termination
+ message file is empty and the container exited with an error.
+ The log output is limited to 2048 bytes or 80 lines, whichever is smaller.
+ Defaults to File.
+ Cannot be updated.
+ type: string
+ tty:
+ description: |-
+ Whether this container should allocate a TTY for itself, also requires 'stdin' to be true.
+ Default is false.
+ type: boolean
+ volumeDevices:
+ description: volumeDevices is
+ the list of block devices to
+ be used by the container.
+ items:
+ description: volumeDevice describes
+ a mapping of a raw block device
+ within a container.
+ properties:
+ devicePath:
+ description: devicePath
+ is the path inside of
+ the container that the
+ device will be mapped
+ to.
+ type: string
+ name:
+ description: name must match
+ the name of a persistentVolumeClaim
+ in the pod
+ type: string
+ required:
+ - devicePath
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
+ volumeMounts:
+ description: |-
+ Pod volumes to mount into the container's filesystem. Subpath mounts are not allowed for ephemeral containers.
+ Cannot be updated.
+ items:
+ description: VolumeMount describes
+ a mounting of a Volume within
+ a container.
+ properties:
+ mountPath:
+ description: |-
+ Path within the container at which the volume should be mounted. Must
+ not contain ':'.
+ type: string
+ mountPropagation:
+ description: |-
+ mountPropagation determines how mounts are propagated from the host
+ to container and the other way around.
+ When not set, MountPropagationNone is used.
+ This field is beta in 1.10.
+ When RecursiveReadOnly is set to IfPossible or to Enabled, MountPropagation must be None or unspecified
+ (which defaults to None).
+ type: string
+ name:
+ description: This must match
+ the Name of a Volume.
+ type: string
+ readOnly:
+ description: |-
+ Mounted read-only if true, read-write otherwise (false or unspecified).
+ Defaults to false.
+ type: boolean
+ recursiveReadOnly:
+ description: |-
+ RecursiveReadOnly specifies whether read-only mounts should be handled
+ recursively.
+
+ If ReadOnly is false, this field has no meaning and must be unspecified.
+
+ If ReadOnly is true, and this field is set to Disabled, the mount is not made
+ recursively read-only. If this field is set to IfPossible, the mount is made
+ recursively read-only, if it is supported by the container runtime. If this
+ field is set to Enabled, the mount is made recursively read-only if it is
+ supported by the container runtime, otherwise the pod will not be started and
+ an error will be generated to indicate the reason.
+
+ If this field is set to IfPossible or Enabled, MountPropagation must be set to
+ None (or be unspecified, which defaults to None).
+
+ If this field is not specified, it is treated as an equivalent of Disabled.
+ type: string
+ subPath:
+ description: |-
+ Path within the volume from which the container's volume should be mounted.
+ Defaults to "" (volume's root).
+ type: string
+ subPathExpr:
+ description: |-
+ Expanded path within the volume from which the container's volume should be mounted.
+ Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.
+ Defaults to "" (volume's root).
+ SubPathExpr and SubPath are mutually exclusive.
+ type: string
+ required:
+ - mountPath
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
+ workingDir:
+ description: |-
+ Container's working directory.
+ If not specified, the container runtime's default will be used, which
+ might be configured in the container image.
+ Cannot be updated.
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ hostAliases:
+ description: |-
+ HostAliases is an optional list of hosts and IPs that will be injected into the pod's hosts
+ file if specified.
+ items:
+ description: |-
+ HostAlias holds the mapping between IP and hostnames that will be injected as an entry in the
+ pod's hosts file.
+ properties:
+ hostnames:
+ description: Hostnames for the
+ above IP address.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ ip:
+ description: IP address of the
+ host file entry.
+ type: string
+ required:
+ - ip
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - ip
+ x-kubernetes-list-type: map
+ hostIPC:
+ description: |-
+ Use the host's ipc namespace.
+ Optional: Default to false.
+ type: boolean
+ hostNetwork:
+ description: |-
+ Host networking requested for this pod. Use the host's network namespace.
+ If this option is set, the ports that will be used must be specified.
+ Default to false.
+ type: boolean
+ hostPID:
+ description: |-
+ Use the host's pid namespace.
+ Optional: Default to false.
+ type: boolean
+ hostUsers:
+ description: |-
+ Use the host's user namespace.
+ Optional: Default to true.
+ If set to true or not present, the pod will be run in the host user namespace, useful
+ for when the pod needs a feature only available to the host user namespace, such as
+ loading a kernel module with CAP_SYS_MODULE.
+ When set to false, a new userns is created for the pod. Setting false is useful for
+ mitigating container breakout vulnerabilities even allowing users to run their
+ containers as root without actually having root privileges on the host.
+ This field is alpha-level and is only honored by servers that enable the UserNamespacesSupport feature.
+ type: boolean
+ hostname:
+ description: |-
+ Specifies the hostname of the Pod
+ If not specified, the pod's hostname will be set to a system-defined value.
+ type: string
+ imagePullSecrets:
+ description: |-
+ ImagePullSecrets is an optional list of references to secrets in the same namespace to use for pulling any of the images used by this PodSpec.
+ If specified, these secrets will be passed to individual puller implementations for them to use.
+ More info: https://kubernetes.io/docs/concepts/containers/images#specifying-imagepullsecrets-on-a-pod
+ items:
+ description: |-
+ LocalObjectReference contains enough information to let you locate the
+ referenced object inside the same namespace.
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ initContainers:
+ description: |-
+ List of initialization containers belonging to the pod.
+ Init containers are executed in order prior to containers being started. If any
+ init container fails, the pod is considered to have failed and is handled according
+ to its restartPolicy. The name for an init container or normal container must be
+ unique among all containers.
+ Init containers may not have Lifecycle actions, Readiness probes, Liveness probes, or Startup probes.
+ The resourceRequirements of an init container are taken into account during scheduling
+ by finding the highest request/limit for each resource type, and then using the max of
+ of that value or the sum of the normal containers. Limits are applied to init containers
+ in a similar fashion.
+ Init containers cannot currently be added or removed.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/init-containers/
+ items:
+ description: A single application
+ container that you want to run within
+ a pod.
+ properties:
+ args:
+ description: |-
+ Arguments to the entrypoint.
+ The container image's CMD is used if this is not provided.
+ Variable references $(VAR_NAME) are expanded using the container's environment. If a variable
+ cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will
+ produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless
+ of whether the variable exists or not. Cannot be updated.
+ More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ command:
+ description: |-
+ Entrypoint array. Not executed within a shell.
+ The container image's ENTRYPOINT is used if this is not provided.
+ Variable references $(VAR_NAME) are expanded using the container's environment. If a variable
+ cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will
+ produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless
+ of whether the variable exists or not. Cannot be updated.
+ More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ env:
+ description: |-
+ List of environment variables to set in the container.
+ Cannot be updated.
+ items:
+ description: EnvVar represents
+ an environment variable present
+ in a Container.
+ properties:
+ name:
+ description: Name of the
+ environment variable.
+ Must be a C_IDENTIFIER.
+ type: string
+ value:
+ description: |-
+ Variable references $(VAR_NAME) are expanded
+ using the previously defined environment variables in the container and
+ any service environment variables. If a variable cannot be resolved,
+ the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e.
+ "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)".
+ Escaped references will never be expanded, regardless of whether the variable
+ exists or not.
+ Defaults to "".
+ type: string
+ valueFrom:
+ description: Source for
+ the environment variable's
+ value. Cannot be used
+ if value is not empty.
+ properties:
+ configMapKeyRef:
+ description: Selects
+ a key of a ConfigMap.
+ properties:
+ key:
+ description: The
+ key to select.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify
+ whether the ConfigMap
+ or its key must
+ be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ fieldRef:
+ description: |-
+ Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`,
+ spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.
+ properties:
+ apiVersion:
+ description: Version
+ of the schema
+ the FieldPath
+ is written in
+ terms of, defaults
+ to "v1".
+ type: string
+ fieldPath:
+ description: Path
+ of the field to
+ select in the
+ specified API
+ version.
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ resourceFieldRef:
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported.
+ properties:
+ containerName:
+ description: 'Container
+ name: required
+ for volumes, optional
+ for env vars'
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ description: Specifies
+ the output format
+ of the exposed
+ resources, defaults
+ to "1"
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ description: 'Required:
+ resource to select'
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ secretKeyRef:
+ description: Selects
+ a key of a secret
+ in the pod's namespace
+ properties:
+ key:
+ description: The
+ key of the secret
+ to select from. Must
+ be a valid secret
+ key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify
+ whether the Secret
+ or its key must
+ be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ envFrom:
+ description: |-
+ List of sources to populate environment variables in the container.
+ The keys defined within a source must be a C_IDENTIFIER. All invalid keys
+ will be reported as an event when the container is starting. When a key exists in multiple
+ sources, the value associated with the last source will take precedence.
+ Values defined by an Env with a duplicate key will take precedence.
+ Cannot be updated.
+ items:
+ description: EnvFromSource represents
+ the source of a set of ConfigMaps
+ properties:
+ configMapRef:
+ description: The ConfigMap
+ to select from
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify
+ whether the ConfigMap
+ must be defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ prefix:
+ description: An optional
+ identifier to prepend
+ to each key in the ConfigMap.
+ Must be a C_IDENTIFIER.
+ type: string
+ secretRef:
+ description: The Secret
+ to select from
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify
+ whether the Secret
+ must be defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ image:
+ description: |-
+ Container image name.
+ More info: https://kubernetes.io/docs/concepts/containers/images
+ This field is optional to allow higher level config management to default or override
+ container images in workload controllers like Deployments and StatefulSets.
+ type: string
+ imagePullPolicy:
+ description: |-
+ Image pull policy.
+ One of Always, Never, IfNotPresent.
+ Defaults to Always if :latest tag is specified, or IfNotPresent otherwise.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/containers/images#updating-images
+ type: string
+ lifecycle:
+ description: |-
+ Actions that the management system should take in response to container lifecycle events.
+ Cannot be updated.
+ properties:
+ postStart:
+ description: |-
+ PostStart is called immediately after a container is created. If the handler fails,
+ the container is terminated and restarted according to its restart policy.
+ Other management of the container blocks until the hook completes.
+ More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
+ properties:
+ exec:
+ description: Exec specifies
+ the action to take.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ description: HTTPGet specifies
+ the http request to
+ perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom
+ headers to set in
+ the request. HTTP
+ allows repeated
+ headers.
+ items:
+ description: HTTPHeader
+ describes a custom
+ header to be used
+ in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The
+ header field
+ value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path
+ to access on the
+ HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ description: Sleep represents
+ the duration that the
+ container should sleep
+ before being terminated.
+ properties:
+ seconds:
+ description: Seconds
+ is the number of
+ seconds to sleep.
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ description: |-
+ Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept
+ for the backward compatibility. There are no validation of this field and
+ lifecycle hooks will fail in runtime when tcp handler is specified.
+ properties:
+ host:
+ description: 'Optional:
+ Host name to connect
+ to, defaults to
+ the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ preStop:
+ description: |-
+ PreStop is called immediately before a container is terminated due to an
+ API request or management event such as liveness/startup probe failure,
+ preemption, resource contention, etc. The handler is not called if the
+ container crashes or exits. The Pod's termination grace period countdown begins before the
+ PreStop hook is executed. Regardless of the outcome of the handler, the
+ container will eventually terminate within the Pod's termination grace
+ period (unless delayed by finalizers). Other management of the container blocks until the hook completes
+ or until the termination grace period is reached.
+ More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
+ properties:
+ exec:
+ description: Exec specifies
+ the action to take.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ description: HTTPGet specifies
+ the http request to
+ perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom
+ headers to set in
+ the request. HTTP
+ allows repeated
+ headers.
+ items:
+ description: HTTPHeader
+ describes a custom
+ header to be used
+ in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The
+ header field
+ value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path
+ to access on the
+ HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ description: Sleep represents
+ the duration that the
+ container should sleep
+ before being terminated.
+ properties:
+ seconds:
+ description: Seconds
+ is the number of
+ seconds to sleep.
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ description: |-
+ Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept
+ for the backward compatibility. There are no validation of this field and
+ lifecycle hooks will fail in runtime when tcp handler is specified.
+ properties:
+ host:
+ description: 'Optional:
+ Host name to connect
+ to, defaults to
+ the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ type: object
+ livenessProbe:
+ description: |-
+ Periodic probe of container liveness.
+ Container will be restarted if the probe fails.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ properties:
+ exec:
+ description: Exec specifies
+ the action to take.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
+ format: int32
+ type: integer
+ grpc:
+ description: GRPC specifies
+ an action involving a GRPC
+ port.
+ properties:
+ port:
+ description: Port number
+ of the gRPC service.
+ Number must be in the
+ range 1 to 65535.
+ format: int32
+ type: integer
+ service:
+ default: ""
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
+ (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
+
+ If this is not specified, the default behavior is defined by gRPC.
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ description: HTTPGet specifies
+ the http request to perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers
+ to set in the request.
+ HTTP allows repeated
+ headers.
+ items:
+ description: HTTPHeader
+ describes a custom
+ header to be used
+ in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The
+ header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access
+ on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ periodSeconds:
+ description: |-
+ How often (in seconds) to perform the probe.
+ Default to 10 seconds. Minimum value is 1.
+ format: int32
+ type: integer
+ successThreshold:
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
+ format: int32
+ type: integer
+ tcpSocket:
+ description: TCPSocket specifies
+ an action involving a TCP
+ port.
+ properties:
+ host:
+ description: 'Optional:
+ Host name to connect
+ to, defaults to the
+ pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
+ format: int64
+ type: integer
+ timeoutSeconds:
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ type: object
+ name:
+ description: |-
+ Name of the container specified as a DNS_LABEL.
+ Each container in a pod must have a unique name (DNS_LABEL).
+ Cannot be updated.
+ type: string
+ ports:
+ description: |-
+ List of ports to expose from the container. Not specifying a port here
+ DOES NOT prevent that port from being exposed. Any port which is
+ listening on the default "0.0.0.0" address inside a container will be
+ accessible from the network.
+ Modifying this array with strategic merge patch may corrupt the data.
+ For more information See https://github.com/kubernetes/kubernetes/issues/108255.
+ Cannot be updated.
+ items:
+ description: ContainerPort represents
+ a network port in a single
+ container.
+ properties:
+ containerPort:
+ description: |-
+ Number of port to expose on the pod's IP address.
+ This must be a valid port number, 0 < x < 65536.
+ format: int32
+ type: integer
+ hostIP:
+ description: What host IP
+ to bind the external port
+ to.
+ type: string
+ hostPort:
+ description: |-
+ Number of port to expose on the host.
+ If specified, this must be a valid port number, 0 < x < 65536.
+ If HostNetwork is specified, this must match ContainerPort.
+ Most containers do not need this.
+ format: int32
+ type: integer
+ name:
+ description: |-
+ If specified, this must be an IANA_SVC_NAME and unique within the pod. Each
+ named port in a pod must have a unique name. Name for the port that can be
+ referred to by services.
+ type: string
+ protocol:
+ default: TCP
+ description: |-
+ Protocol for port. Must be UDP, TCP, or SCTP.
+ Defaults to "TCP".
+ type: string
+ required:
+ - containerPort
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - containerPort
+ - protocol
+ x-kubernetes-list-type: map
+ readinessProbe:
+ description: |-
+ Periodic probe of container service readiness.
+ Container will be removed from service endpoints if the probe fails.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ properties:
+ exec:
+ description: Exec specifies
+ the action to take.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
+ format: int32
+ type: integer
+ grpc:
+ description: GRPC specifies
+ an action involving a GRPC
+ port.
+ properties:
+ port:
+ description: Port number
+ of the gRPC service.
+ Number must be in the
+ range 1 to 65535.
+ format: int32
+ type: integer
+ service:
+ default: ""
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
+ (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
+
+ If this is not specified, the default behavior is defined by gRPC.
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ description: HTTPGet specifies
+ the http request to perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers
+ to set in the request.
+ HTTP allows repeated
+ headers.
+ items:
+ description: HTTPHeader
+ describes a custom
+ header to be used
+ in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The
+ header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access
+ on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ periodSeconds:
+ description: |-
+ How often (in seconds) to perform the probe.
+ Default to 10 seconds. Minimum value is 1.
+ format: int32
+ type: integer
+ successThreshold:
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
+ format: int32
+ type: integer
+ tcpSocket:
+ description: TCPSocket specifies
+ an action involving a TCP
+ port.
+ properties:
+ host:
+ description: 'Optional:
+ Host name to connect
+ to, defaults to the
+ pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
+ format: int64
+ type: integer
+ timeoutSeconds:
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ type: object
+ resizePolicy:
+ description: Resources resize
+ policy for the container.
+ items:
+ description: ContainerResizePolicy
+ represents resource resize
+ policy for the container.
+ properties:
+ resourceName:
+ description: |-
+ Name of the resource to which this resource resize policy applies.
+ Supported values: cpu, memory.
+ type: string
+ restartPolicy:
+ description: |-
+ Restart policy to apply when specified resource is resized.
+ If not specified, it defaults to NotRequired.
+ type: string
+ required:
+ - resourceName
+ - restartPolicy
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ resources:
+ description: |-
+ Compute Resources required by this container.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ properties:
+ claims:
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+ This field is immutable. It can only be set for containers.
+ items:
+ description: ResourceClaim
+ references one entry in
+ PodSpec.ResourceClaims.
+ properties:
+ name:
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
+ type: string
+ request:
+ description: |-
+ Request is the name chosen for a request in the referenced claim.
+ If empty, everything from the claim is made available, otherwise
+ only the result of this request.
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ limits:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ type: object
+ requests:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ type: object
+ type: object
+ restartPolicy:
+ description: |-
+ RestartPolicy defines the restart behavior of individual containers in a pod.
+ This field may only be set for init containers, and the only allowed value is "Always".
+ For non-init containers or when this field is not specified,
+ the restart behavior is defined by the Pod's restart policy and the container type.
+ Setting the RestartPolicy as "Always" for the init container will have the following effect:
+ this init container will be continually restarted on
+ exit until all regular containers have terminated. Once all regular
+ containers have completed, all init containers with restartPolicy "Always"
+ will be shut down. This lifecycle differs from normal init containers and
+ is often referred to as a "sidecar" container. Although this init
+ container still starts in the init container sequence, it does not wait
+ for the container to complete before proceeding to the next init
+ container. Instead, the next init container starts immediately after this
+ init container is started, or after any startupProbe has successfully
+ completed.
+ type: string
+ securityContext:
+ description: |-
+ SecurityContext defines the security options the container should be run with.
+ If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext.
+ More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
+ properties:
+ allowPrivilegeEscalation:
+ description: |-
+ AllowPrivilegeEscalation controls whether a process can gain more
+ privileges than its parent process. This bool directly controls if
+ the no_new_privs flag will be set on the container process.
+ AllowPrivilegeEscalation is true always when the container is:
+ 1) run as Privileged
+ 2) has CAP_SYS_ADMIN
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ appArmorProfile:
+ description: |-
+ appArmorProfile is the AppArmor options to use by this container. If set, this profile
+ overrides the pod's appArmorProfile.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile loaded on the node that should be used.
+ The profile must be preconfigured on the node to work.
+ Must match the loaded name of the profile.
+ Must be set if and only if type is "Localhost".
+ type: string
+ type:
+ description: |-
+ type indicates which kind of AppArmor profile will be applied.
+ Valid options are:
+ Localhost - a profile pre-loaded on the node.
+ RuntimeDefault - the container runtime's default profile.
+ Unconfined - no AppArmor enforcement.
+ type: string
+ required:
+ - type
+ type: object
+ capabilities:
+ description: |-
+ The capabilities to add/drop when running containers.
+ Defaults to the default set of capabilities granted by the container runtime.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ add:
+ description: Added capabilities
+ items:
+ description: Capability
+ represent POSIX capabilities
+ type
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ drop:
+ description: Removed capabilities
+ items:
+ description: Capability
+ represent POSIX capabilities
+ type
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ privileged:
+ description: |-
+ Run container in privileged mode.
+ Processes in privileged containers are essentially equivalent to root on the host.
+ Defaults to false.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ procMount:
+ description: |-
+ procMount denotes the type of proc mount to use for the containers.
+ The default value is Default which uses the container runtime defaults for
+ readonly paths and masked paths.
+ This requires the ProcMountType feature flag to be enabled.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: string
+ readOnlyRootFilesystem:
+ description: |-
+ Whether this container has a read-only root filesystem.
+ Default is false.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ runAsGroup:
+ description: |-
+ The GID to run the entrypoint of the container process.
+ Uses runtime default if unset.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ runAsNonRoot:
+ description: |-
+ Indicates that the container must run as a non-root user.
+ If true, the Kubelet will validate the image at runtime to ensure that it
+ does not run as UID 0 (root) and fail to start the container if it does.
+ If unset or false, no such validation will be performed.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: boolean
+ runAsUser:
+ description: |-
+ The UID to run the entrypoint of the container process.
+ Defaults to user specified in image metadata if unspecified.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ seLinuxOptions:
+ description: |-
+ The SELinux context to be applied to the container.
+ If unspecified, the container runtime will allocate a random SELinux context for each
+ container. May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ level:
+ description: Level is
+ SELinux level label
+ that applies to the
+ container.
+ type: string
+ role:
+ description: Role is a
+ SELinux role label that
+ applies to the container.
+ type: string
+ type:
+ description: Type is a
+ SELinux type label that
+ applies to the container.
+ type: string
+ user:
+ description: User is a
+ SELinux user label that
+ applies to the container.
+ type: string
+ type: object
+ seccompProfile:
+ description: |-
+ The seccomp options to use by this container. If seccomp options are
+ provided at both the pod & container level, the container options
+ override the pod options.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile defined in a file on the node should be used.
+ The profile must be preconfigured on the node to work.
+ Must be a descending path, relative to the kubelet's configured seccomp profile location.
+ Must be set if type is "Localhost". Must NOT be set for any other type.
+ type: string
+ type:
+ description: |-
+ type indicates which kind of seccomp profile will be applied.
+ Valid options are:
+
+ Localhost - a profile defined in a file on the node should be used.
+ RuntimeDefault - the container runtime default profile should be used.
+ Unconfined - no profile should be applied.
+ type: string
+ required:
+ - type
+ type: object
+ windowsOptions:
+ description: |-
+ The Windows specific settings applied to all containers.
+ If unspecified, the options from the PodSecurityContext will be used.
+ If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is linux.
+ properties:
+ gmsaCredentialSpec:
+ description: |-
+ GMSACredentialSpec is where the GMSA admission webhook
+ (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the
+ GMSA credential spec named by the GMSACredentialSpecName field.
+ type: string
+ gmsaCredentialSpecName:
+ description: GMSACredentialSpecName
+ is the name of the GMSA
+ credential spec to use.
+ type: string
+ hostProcess:
+ description: |-
+ HostProcess determines if a container should be run as a 'Host Process' container.
+ All of a Pod's containers must have the same effective HostProcess value
+ (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers).
+ In addition, if HostProcess is true then HostNetwork must also be set to true.
+ type: boolean
+ runAsUserName:
+ description: |-
+ The UserName in Windows to run the entrypoint of the container process.
+ Defaults to the user specified in image metadata if unspecified.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: string
+ type: object
+ type: object
+ startupProbe:
+ description: |-
+ 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: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ properties:
+ exec:
+ description: Exec specifies
+ the action to take.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
+ format: int32
+ type: integer
+ grpc:
+ description: GRPC specifies
+ an action involving a GRPC
+ port.
+ properties:
+ port:
+ description: Port number
+ of the gRPC service.
+ Number must be in the
+ range 1 to 65535.
+ format: int32
+ type: integer
+ service:
+ default: ""
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
+ (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
+
+ If this is not specified, the default behavior is defined by gRPC.
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ description: HTTPGet specifies
+ the http request to perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers
+ to set in the request.
+ HTTP allows repeated
+ headers.
+ items:
+ description: HTTPHeader
+ describes a custom
+ header to be used
+ in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The
+ header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access
+ on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ periodSeconds:
+ description: |-
+ How often (in seconds) to perform the probe.
+ Default to 10 seconds. Minimum value is 1.
+ format: int32
+ type: integer
+ successThreshold:
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
+ format: int32
+ type: integer
+ tcpSocket:
+ description: TCPSocket specifies
+ an action involving a TCP
+ port.
+ properties:
+ host:
+ description: 'Optional:
+ Host name to connect
+ to, defaults to the
+ pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
+ format: int64
+ type: integer
+ timeoutSeconds:
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ type: object
+ stdin:
+ description: |-
+ Whether this container should allocate a buffer for stdin in the container runtime. If this
+ is not set, reads from stdin in the container will always result in EOF.
+ Default is false.
+ type: boolean
+ stdinOnce:
+ description: |-
+ Whether the container runtime should close the stdin channel after it has been opened by
+ a single attach. When stdin is true the stdin stream will remain open across multiple attach
+ sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the
+ first client attaches to stdin, and then remains open and accepts data until the client disconnects,
+ at which time stdin is closed and remains closed until the container is restarted. If this
+ flag is false, a container processes that reads from stdin will never receive an EOF.
+ Default is false
+ type: boolean
+ terminationMessagePath:
+ description: |-
+ Optional: Path at which the file to which the container's termination message
+ will be written is mounted into the container's filesystem.
+ Message written is intended to be brief final status, such as an assertion failure message.
+ Will be truncated by the node if greater than 4096 bytes. The total message length across
+ all containers will be limited to 12kb.
+ Defaults to /dev/termination-log.
+ Cannot be updated.
+ type: string
+ terminationMessagePolicy:
+ description: |-
+ Indicate how the termination message should be populated. File will use the contents of
+ terminationMessagePath to populate the container status message on both success and failure.
+ FallbackToLogsOnError will use the last chunk of container log output if the termination
+ message file is empty and the container exited with an error.
+ The log output is limited to 2048 bytes or 80 lines, whichever is smaller.
+ Defaults to File.
+ Cannot be updated.
+ type: string
+ tty:
+ description: |-
+ Whether this container should allocate a TTY for itself, also requires 'stdin' to be true.
+ Default is false.
+ type: boolean
+ volumeDevices:
+ description: volumeDevices is
+ the list of block devices to
+ be used by the container.
+ items:
+ description: volumeDevice describes
+ a mapping of a raw block device
+ within a container.
+ properties:
+ devicePath:
+ description: devicePath
+ is the path inside of
+ the container that the
+ device will be mapped
+ to.
+ type: string
+ name:
+ description: name must match
+ the name of a persistentVolumeClaim
+ in the pod
+ type: string
+ required:
+ - devicePath
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
+ volumeMounts:
+ description: |-
+ Pod volumes to mount into the container's filesystem.
+ Cannot be updated.
+ items:
+ description: VolumeMount describes
+ a mounting of a Volume within
+ a container.
+ properties:
+ mountPath:
+ description: |-
+ Path within the container at which the volume should be mounted. Must
+ not contain ':'.
+ type: string
+ mountPropagation:
+ description: |-
+ mountPropagation determines how mounts are propagated from the host
+ to container and the other way around.
+ When not set, MountPropagationNone is used.
+ This field is beta in 1.10.
+ When RecursiveReadOnly is set to IfPossible or to Enabled, MountPropagation must be None or unspecified
+ (which defaults to None).
+ type: string
+ name:
+ description: This must match
+ the Name of a Volume.
+ type: string
+ readOnly:
+ description: |-
+ Mounted read-only if true, read-write otherwise (false or unspecified).
+ Defaults to false.
+ type: boolean
+ recursiveReadOnly:
+ description: |-
+ RecursiveReadOnly specifies whether read-only mounts should be handled
+ recursively.
+
+ If ReadOnly is false, this field has no meaning and must be unspecified.
+
+ If ReadOnly is true, and this field is set to Disabled, the mount is not made
+ recursively read-only. If this field is set to IfPossible, the mount is made
+ recursively read-only, if it is supported by the container runtime. If this
+ field is set to Enabled, the mount is made recursively read-only if it is
+ supported by the container runtime, otherwise the pod will not be started and
+ an error will be generated to indicate the reason.
+
+ If this field is set to IfPossible or Enabled, MountPropagation must be set to
+ None (or be unspecified, which defaults to None).
+
+ If this field is not specified, it is treated as an equivalent of Disabled.
+ type: string
+ subPath:
+ description: |-
+ Path within the volume from which the container's volume should be mounted.
+ Defaults to "" (volume's root).
+ type: string
+ subPathExpr:
+ description: |-
+ Expanded path within the volume from which the container's volume should be mounted.
+ Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.
+ Defaults to "" (volume's root).
+ SubPathExpr and SubPath are mutually exclusive.
+ type: string
+ required:
+ - mountPath
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
+ workingDir:
+ description: |-
+ Container's working directory.
+ If not specified, the container runtime's default will be used, which
+ might be configured in the container image.
+ Cannot be updated.
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ nodeName:
+ description: |-
+ NodeName indicates in which node this pod is scheduled.
+ If empty, this pod is a candidate for scheduling by the scheduler defined in schedulerName.
+ Once this field is set, the kubelet for this node becomes responsible for the lifecycle of this pod.
+ This field should not be used to express a desire for the pod to be scheduled on a specific node.
+ https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#nodename
+ type: string
+ nodeSelector:
+ additionalProperties:
+ type: string
+ description: |-
+ 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: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
+ type: object
+ x-kubernetes-map-type: atomic
+ os:
+ description: |-
+ Specifies the OS of the containers in the pod.
+ Some pod and container fields are restricted if this is set.
+
+ If the OS field is set to linux, the following fields must be unset:
+ -securityContext.windowsOptions
+
+ If the OS field is set to windows, following fields must be unset:
+ - spec.hostPID
+ - spec.hostIPC
+ - spec.hostUsers
+ - spec.securityContext.appArmorProfile
+ - spec.securityContext.seLinuxOptions
+ - spec.securityContext.seccompProfile
+ - spec.securityContext.fsGroup
+ - spec.securityContext.fsGroupChangePolicy
+ - spec.securityContext.sysctls
+ - spec.shareProcessNamespace
+ - spec.securityContext.runAsUser
+ - spec.securityContext.runAsGroup
+ - spec.securityContext.supplementalGroups
+ - spec.securityContext.supplementalGroupsPolicy
+ - spec.containers[*].securityContext.appArmorProfile
+ - spec.containers[*].securityContext.seLinuxOptions
+ - spec.containers[*].securityContext.seccompProfile
+ - spec.containers[*].securityContext.capabilities
+ - spec.containers[*].securityContext.readOnlyRootFilesystem
+ - spec.containers[*].securityContext.privileged
+ - spec.containers[*].securityContext.allowPrivilegeEscalation
+ - spec.containers[*].securityContext.procMount
+ - spec.containers[*].securityContext.runAsUser
+ - spec.containers[*].securityContext.runAsGroup
+ properties:
+ name:
+ description: |-
+ Name is the name of the operating system. The currently supported values are linux and windows.
+ Additional value may be defined in future and can be one of:
+ https://github.com/opencontainers/runtime-spec/blob/master/config.md#platform-specific-configuration
+ Clients should expect to handle additional values and treat unrecognized values in this field as os: null
+ type: string
+ required:
+ - name
+ type: object
+ overhead:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ description: |-
+ Overhead represents the resource overhead associated with running a pod for a given RuntimeClass.
+ This field will be autopopulated at admission time by the RuntimeClass admission controller. If
+ the RuntimeClass admission controller is enabled, overhead must not be set in Pod create requests.
+ The RuntimeClass admission controller will reject Pod create requests which have the overhead already
+ set. If RuntimeClass is configured and selected in the PodSpec, Overhead will be set to the value
+ defined in the corresponding RuntimeClass, otherwise it will remain unset and treated as zero.
+ More info: https://git.k8s.io/enhancements/keps/sig-node/688-pod-overhead/README.md
+ type: object
+ preemptionPolicy:
+ description: |-
+ PreemptionPolicy is the Policy for preempting pods with lower priority.
+ One of Never, PreemptLowerPriority.
+ Defaults to PreemptLowerPriority if unset.
+ type: string
+ priority:
+ description: |-
+ The priority value. Various system components use this field to find the
+ priority of the pod. When Priority Admission Controller is enabled, it
+ prevents users from setting this field. The admission controller populates
+ this field from PriorityClassName.
+ The higher the value, the higher the priority.
+ format: int32
+ type: integer
+ priorityClassName:
+ description: |-
+ If specified, indicates the pod's priority. "system-node-critical" and
+ "system-cluster-critical" are two special keywords which indicate the
+ highest priorities with the former being the highest priority. Any other
+ name must be defined by creating a PriorityClass object with that name.
+ If not specified, the pod priority will be default or zero if there is no
+ default.
+ type: string
+ readinessGates:
+ description: |-
+ If specified, all readiness gates will be evaluated for pod readiness.
+ A pod is ready when all its containers are ready AND
+ all conditions specified in the readiness gates have status equal to "True"
+ More info: https://git.k8s.io/enhancements/keps/sig-network/580-pod-readiness-gates
+ items:
+ description: PodReadinessGate contains
+ the reference to a pod condition
+ properties:
+ conditionType:
+ description: ConditionType refers
+ to a condition in the pod's
+ condition list with matching
+ type.
+ type: string
+ required:
+ - conditionType
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ resourceClaims:
+ description: |-
+ ResourceClaims defines which ResourceClaims must be allocated
+ and reserved before the Pod is allowed to start. The resources
+ will be made available to those containers which consume them
+ by name.
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+ This field is immutable.
+ items:
+ description: |-
+ PodResourceClaim references exactly one ResourceClaim, either directly
+ or by naming a ResourceClaimTemplate which is then turned into a ResourceClaim
+ for the pod.
+
+ It adds a name to it that uniquely identifies the ResourceClaim inside the Pod.
+ Containers that need access to the ResourceClaim reference it with this name.
+ properties:
+ name:
+ description: |-
+ Name uniquely identifies this resource claim inside the pod.
+ This must be a DNS_LABEL.
+ type: string
+ resourceClaimName:
+ description: |-
+ ResourceClaimName is the name of a ResourceClaim object in the same
+ namespace as this pod.
+
+ Exactly one of ResourceClaimName and ResourceClaimTemplateName must
+ be set.
+ type: string
+ resourceClaimTemplateName:
+ description: |-
+ ResourceClaimTemplateName is the name of a ResourceClaimTemplate
+ object in the same namespace as this pod.
+
+ The template will be used to create a new ResourceClaim, which will
+ be bound to this pod. When this pod is deleted, the ResourceClaim
+ will also be deleted. The pod name and resource name, along with a
+ generated component, will be used to form a unique name for the
+ ResourceClaim, which will be recorded in pod.status.resourceClaimStatuses.
+
+ This field is immutable and no changes will be made to the
+ corresponding ResourceClaim by the control plane after creating the
+ ResourceClaim.
+
+ Exactly one of ResourceClaimName and ResourceClaimTemplateName must
+ be set.
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ restartPolicy:
+ description: |-
+ Restart policy for all containers within the pod.
+ One of Always, OnFailure, Never. In some contexts, only a subset of those values may be permitted.
+ Default to Always.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#restart-policy
+ type: string
+ runtimeClassName:
+ description: |-
+ RuntimeClassName refers to a RuntimeClass object in the node.k8s.io group, which should be used
+ to run this pod. If no RuntimeClass resource matches the named class, the pod will not be run.
+ If unset or empty, the "legacy" RuntimeClass will be used, which is an implicit class with an
+ empty definition that uses the default runtime handler.
+ More info: https://git.k8s.io/enhancements/keps/sig-node/585-runtime-class
+ type: string
+ schedulerName:
+ description: |-
+ If specified, the pod will be dispatched by specified scheduler.
+ If not specified, the pod will be dispatched by default scheduler.
+ type: string
+ schedulingGates:
+ description: |-
+ SchedulingGates is an opaque list of values that if specified will block scheduling the pod.
+ If schedulingGates is not empty, the pod will stay in the SchedulingGated state and the
+ scheduler will not attempt to schedule the pod.
+
+ SchedulingGates can only be set at pod creation time, and be removed only afterwards.
+ items:
+ description: PodSchedulingGate is
+ associated to a Pod to guard its
+ scheduling.
+ properties:
+ name:
+ description: |-
+ Name of the scheduling gate.
+ Each scheduling gate must have a unique name field.
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ securityContext:
+ description: |-
+ SecurityContext holds pod-level security attributes and common container settings.
+ Optional: Defaults to empty. See type description for default values of each field.
+ properties:
+ appArmorProfile:
+ description: |-
+ appArmorProfile is the AppArmor options to use by the containers in this pod.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile loaded on the node that should be used.
+ The profile must be preconfigured on the node to work.
+ Must match the loaded name of the profile.
+ Must be set if and only if type is "Localhost".
+ type: string
+ type:
+ description: |-
+ type indicates which kind of AppArmor profile will be applied.
+ Valid options are:
+ Localhost - a profile pre-loaded on the node.
+ RuntimeDefault - the container runtime's default profile.
+ Unconfined - no AppArmor enforcement.
+ type: string
+ required:
+ - type
+ type: object
+ fsGroup:
+ description: |-
+ A special supplemental group that applies to all containers in a pod.
+ Some volume types allow the Kubelet to change the ownership of that volume
+ to be owned by the pod:
+
+ 1. The owning GID will be the FSGroup
+ 2. The setgid bit is set (new files created in the volume will be owned by FSGroup)
+ 3. The permission bits are OR'd with rw-rw----
+
+ If unset, the Kubelet will not modify the ownership and permissions of any volume.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ fsGroupChangePolicy:
+ description: |-
+ fsGroupChangePolicy defines behavior of changing ownership and permission of the volume
+ before being exposed inside Pod. This field will only apply to
+ volume types which support fsGroup based ownership(and permissions).
+ It will have no effect on ephemeral volume types such as: secret, configmaps
+ and emptydir.
+ Valid values are "OnRootMismatch" and "Always". If not specified, "Always" is used.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: string
+ runAsGroup:
+ description: |-
+ The GID to run the entrypoint of the container process.
+ Uses runtime default if unset.
+ May also be set in SecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence
+ for that container.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ runAsNonRoot:
+ description: |-
+ Indicates that the container must run as a non-root user.
+ If true, the Kubelet will validate the image at runtime to ensure that it
+ does not run as UID 0 (root) and fail to start the container if it does.
+ If unset or false, no such validation will be performed.
+ May also be set in SecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: boolean
+ runAsUser:
+ description: |-
+ The UID to run the entrypoint of the container process.
+ Defaults to user specified in image metadata if unspecified.
+ May also be set in SecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence
+ for that container.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ seLinuxOptions:
+ description: |-
+ The SELinux context to be applied to all containers.
+ If unspecified, the container runtime will allocate a random SELinux context for each
+ container. May also be set in SecurityContext. If set in
+ both SecurityContext and PodSecurityContext, the value specified in SecurityContext
+ takes precedence for that container.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ level:
+ description: Level is SELinux
+ level label that applies to
+ the container.
+ type: string
+ role:
+ description: Role is a SELinux
+ role label that applies to
+ the container.
+ type: string
+ type:
+ description: Type is a SELinux
+ type label that applies to
+ the container.
+ type: string
+ user:
+ description: User is a SELinux
+ user label that applies to
+ the container.
+ type: string
+ type: object
+ seccompProfile:
+ description: |-
+ The seccomp options to use by the containers in this pod.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile defined in a file on the node should be used.
+ The profile must be preconfigured on the node to work.
+ Must be a descending path, relative to the kubelet's configured seccomp profile location.
+ Must be set if type is "Localhost". Must NOT be set for any other type.
+ type: string
+ type:
+ description: |-
+ type indicates which kind of seccomp profile will be applied.
+ Valid options are:
+
+ Localhost - a profile defined in a file on the node should be used.
+ RuntimeDefault - the container runtime default profile should be used.
+ Unconfined - no profile should be applied.
+ type: string
+ required:
+ - type
+ type: object
+ supplementalGroups:
+ description: |-
+ A list of groups applied to the first process run in each container, in
+ addition to the container's primary GID and fsGroup (if specified). If
+ the SupplementalGroupsPolicy feature is enabled, the
+ supplementalGroupsPolicy field determines whether these are in addition
+ to or instead of any group memberships defined in the container image.
+ If unspecified, no additional groups are added, though group memberships
+ defined in the container image may still be used, depending on the
+ supplementalGroupsPolicy field.
+ Note that this field cannot be set when spec.os.name is windows.
+ items:
+ format: int64
+ type: integer
+ type: array
+ x-kubernetes-list-type: atomic
+ supplementalGroupsPolicy:
+ description: |-
+ Defines how supplemental groups of the first container processes are calculated.
+ Valid values are "Merge" and "Strict". If not specified, "Merge" is used.
+ (Alpha) Using the field requires the SupplementalGroupsPolicy feature gate to be enabled
+ and the container runtime must implement support for this feature.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: string
+ sysctls:
+ description: |-
+ Sysctls hold a list of namespaced sysctls used for the pod. Pods with unsupported
+ sysctls (by the container runtime) might fail to launch.
+ Note that this field cannot be set when spec.os.name is windows.
+ items:
+ description: Sysctl defines a
+ kernel parameter to be set
+ properties:
+ name:
+ description: Name of a property
+ to set
+ type: string
+ value:
+ description: Value of a property
+ to set
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ windowsOptions:
+ description: |-
+ The Windows specific settings applied to all containers.
+ If unspecified, the options within a container's SecurityContext will be used.
+ If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is linux.
+ properties:
+ gmsaCredentialSpec:
+ description: |-
+ GMSACredentialSpec is where the GMSA admission webhook
+ (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the
+ GMSA credential spec named by the GMSACredentialSpecName field.
+ type: string
+ gmsaCredentialSpecName:
+ description: GMSACredentialSpecName
+ is the name of the GMSA credential
+ spec to use.
+ type: string
+ hostProcess:
+ description: |-
+ HostProcess determines if a container should be run as a 'Host Process' container.
+ All of a Pod's containers must have the same effective HostProcess value
+ (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers).
+ In addition, if HostProcess is true then HostNetwork must also be set to true.
+ type: boolean
+ runAsUserName:
+ description: |-
+ The UserName in Windows to run the entrypoint of the container process.
+ Defaults to the user specified in image metadata if unspecified.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: string
+ type: object
+ type: object
+ serviceAccount:
+ description: |-
+ DeprecatedServiceAccount is a deprecated alias for ServiceAccountName.
+ Deprecated: Use serviceAccountName instead.
+ type: string
+ serviceAccountName:
+ description: |-
+ ServiceAccountName is the name of the ServiceAccount to use to run this pod.
+ More info: https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/
+ type: string
+ setHostnameAsFQDN:
+ description: |-
+ If true the pod's hostname will be configured as the pod's FQDN, rather than the leaf name (the default).
+ In Linux containers, this means setting the FQDN in the hostname field of the kernel (the nodename field of struct utsname).
+ In Windows containers, this means setting the registry value of hostname for the registry key HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Services\\Tcpip\\Parameters to FQDN.
+ If a pod does not have FQDN, this has no effect.
+ Default to false.
+ type: boolean
+ shareProcessNamespace:
+ description: |-
+ Share a single process namespace between all of the containers in a pod.
+ When this is set containers will be able to view and signal processes from other containers
+ in the same pod, and the first process in each container will not be assigned PID 1.
+ HostPID and ShareProcessNamespace cannot both be set.
+ Optional: Default to false.
+ type: boolean
+ subdomain:
+ description: |-
+ If specified, the fully qualified Pod hostname will be "...svc.".
+ If not specified, the pod will not have a domainname at all.
+ type: string
+ terminationGracePeriodSeconds:
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully. May be decreased in delete request.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ If this value is nil, the default grace period will be used instead.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ Defaults to 30 seconds.
+ format: int64
+ type: integer
+ tolerations:
+ description: If specified, the pod's
+ tolerations.
+ items:
+ description: |-
+ The pod this Toleration is attached to tolerates any taint that matches
+ the triple using the matching operator .
+ properties:
+ effect:
+ description: |-
+ Effect indicates the taint effect to match. Empty means match all taint effects.
+ When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute.
+ type: string
+ key:
+ description: |-
+ Key is the taint key that the toleration applies to. Empty means match all taint keys.
+ If the key is empty, operator must be Exists; this combination means to match all values and all keys.
+ type: string
+ operator:
+ description: |-
+ Operator represents a key's relationship to the value.
+ Valid operators are Exists and Equal. Defaults to Equal.
+ Exists is equivalent to wildcard for value, so that a pod can
+ tolerate all taints of a particular category.
+ type: string
+ tolerationSeconds:
+ description: |-
+ TolerationSeconds represents the period of time the toleration (which must be
+ of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default,
+ it is not set, which means tolerate the taint forever (do not evict). Zero and
+ negative values will be treated as 0 (evict immediately) by the system.
+ format: int64
+ type: integer
+ value:
+ description: |-
+ Value is the taint value the toleration matches to.
+ If the operator is Exists, the value should be empty, otherwise just a regular string.
+ type: string
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ topologySpreadConstraints:
+ description: |-
+ TopologySpreadConstraints describes how a group of pods ought to spread across topology
+ domains. Scheduler will schedule pods in a way which abides by the constraints.
+ All topologySpreadConstraints are ANDed.
+ items:
+ description: TopologySpreadConstraint
+ specifies how to spread matching
+ pods among the given topology.
+ properties:
+ labelSelector:
+ description: |-
+ LabelSelector is used to find matching pods.
+ Pods that match this label selector are counted to determine the number of pods
+ in their corresponding topology domain.
+ properties:
+ matchExpressions:
+ description: matchExpressions
+ is a list of label selector
+ requirements. The requirements
+ are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key is
+ the label key that
+ the selector applies
+ to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select the pods over which
+ spreading will be calculated. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are ANDed with labelSelector
+ to select the group of existing pods over which spreading will be calculated
+ for the incoming pod. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector.
+ MatchLabelKeys cannot be set when LabelSelector isn't set.
+ Keys that don't exist in the incoming pod labels will
+ be ignored. A null or empty list means only match against labelSelector.
+
+ This is a beta field and requires the MatchLabelKeysInPodTopologySpread feature gate to be enabled (enabled by default).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ maxSkew:
+ description: |-
+ MaxSkew describes the degree to which pods may be unevenly distributed.
+ When `whenUnsatisfiable=DoNotSchedule`, it is the maximum permitted difference
+ between the number of matching pods in the target topology and the global minimum.
+ The global minimum is the minimum number of matching pods in an eligible domain
+ or zero if the number of eligible domains is less than MinDomains.
+ For example, in a 3-zone cluster, MaxSkew is set to 1, and pods with the same
+ labelSelector spread as 2/2/1:
+ In this case, the global minimum is 1.
+ | zone1 | zone2 | zone3 |
+ | P P | P P | P |
+ - if MaxSkew is 1, incoming pod can only be scheduled to zone3 to become 2/2/2;
+ scheduling it onto zone1(zone2) would make the ActualSkew(3-1) on zone1(zone2)
+ violate MaxSkew(1).
+ - if MaxSkew is 2, incoming pod can be scheduled onto any zone.
+ When `whenUnsatisfiable=ScheduleAnyway`, it is used to give higher precedence
+ to topologies that satisfy it.
+ It's a required field. Default value is 1 and 0 is not allowed.
+ format: int32
+ type: integer
+ minDomains:
+ description: |-
+ MinDomains indicates a minimum number of eligible domains.
+ When the number of eligible domains with matching topology keys is less than minDomains,
+ Pod Topology Spread treats "global minimum" as 0, and then the calculation of Skew is performed.
+ And when the number of eligible domains with matching topology keys equals or greater than minDomains,
+ this value has no effect on scheduling.
+ As a result, when the number of eligible domains is less than minDomains,
+ scheduler won't schedule more than maxSkew Pods to those domains.
+ If value is nil, the constraint behaves as if MinDomains is equal to 1.
+ Valid values are integers greater than 0.
+ When value is not nil, WhenUnsatisfiable must be DoNotSchedule.
+
+ For example, in a 3-zone cluster, MaxSkew is set to 2, MinDomains is set to 5 and pods with the same
+ labelSelector spread as 2/2/2:
+ | zone1 | zone2 | zone3 |
+ | P P | P P | P P |
+ The number of domains is less than 5(MinDomains), so "global minimum" is treated as 0.
+ In this situation, new pod with the same labelSelector cannot be scheduled,
+ because computed skew will be 3(3 - 0) if new Pod is scheduled to any of the three zones,
+ it will violate MaxSkew.
+ format: int32
+ type: integer
+ nodeAffinityPolicy:
+ description: |-
+ NodeAffinityPolicy indicates how we will treat Pod's nodeAffinity/nodeSelector
+ when calculating pod topology spread skew. Options are:
+ - Honor: only nodes matching nodeAffinity/nodeSelector are included in the calculations.
+ - Ignore: nodeAffinity/nodeSelector are ignored. All nodes are included in the calculations.
+
+ If this value is nil, the behavior is equivalent to the Honor policy.
+ This is a beta-level feature default enabled by the NodeInclusionPolicyInPodTopologySpread feature flag.
+ type: string
+ nodeTaintsPolicy:
+ description: |-
+ NodeTaintsPolicy indicates how we will treat node taints when calculating
+ pod topology spread skew. Options are:
+ - Honor: nodes without taints, along with tainted nodes for which the incoming pod
+ has a toleration, are included.
+ - Ignore: node taints are ignored. All nodes are included.
+
+ If this value is nil, the behavior is equivalent to the Ignore policy.
+ This is a beta-level feature default enabled by the NodeInclusionPolicyInPodTopologySpread feature flag.
+ type: string
+ topologyKey:
+ description: |-
+ TopologyKey is the key of node labels. Nodes that have a label with this key
+ and identical values are considered to be in the same topology.
+ We consider each as a "bucket", and try to put balanced number
+ of pods into each bucket.
+ We define a domain as a particular instance of a topology.
+ Also, we define an eligible domain as a domain whose nodes meet the requirements of
+ nodeAffinityPolicy and nodeTaintsPolicy.
+ e.g. If TopologyKey is "kubernetes.io/hostname", each Node is a domain of that topology.
+ And, if TopologyKey is "topology.kubernetes.io/zone", each zone is a domain of that topology.
+ It's a required field.
+ type: string
+ whenUnsatisfiable:
+ description: |-
+ WhenUnsatisfiable indicates how to deal with a pod if it doesn't satisfy
+ the spread constraint.
+ - DoNotSchedule (default) tells the scheduler not to schedule it.
+ - ScheduleAnyway tells the scheduler to schedule the pod in any location,
+ but giving higher precedence to topologies that would help reduce the
+ skew.
+ A constraint is considered "Unsatisfiable" for an incoming pod
+ if and only if every possible node assignment for that pod would violate
+ "MaxSkew" on some topology.
+ For example, in a 3-zone cluster, MaxSkew is set to 1, and pods with the same
+ labelSelector spread as 3/1/1:
+ | zone1 | zone2 | zone3 |
+ | P P P | P | P |
+ If WhenUnsatisfiable is set to DoNotSchedule, incoming pod can only be scheduled
+ to zone2(zone3) to become 3/2/1(3/1/2) as ActualSkew(2-1) on zone2(zone3) satisfies
+ MaxSkew(1). In other words, the cluster can still be imbalanced, but scheduler
+ won't make it *more* imbalanced.
+ It's a required field.
+ type: string
+ required:
+ - maxSkew
+ - topologyKey
+ - whenUnsatisfiable
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - topologyKey
+ - whenUnsatisfiable
+ x-kubernetes-list-type: map
+ volumes:
+ description: |-
+ List of volumes that can be mounted by containers belonging to the pod.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes
+ items:
+ description: Volume represents a named
+ volume in a pod that may be accessed
+ by any container in the pod.
+ properties:
+ awsElasticBlockStore:
+ description: |-
+ awsElasticBlockStore represents an AWS Disk resource that is attached to a
+ kubelet's host machine and then exposed to the pod.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
+ properties:
+ fsType:
+ description: |-
+ fsType is the filesystem type of the volume that you want to mount.
+ Tip: Ensure that the filesystem type is supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
+ type: string
+ partition:
+ description: |-
+ partition is the partition in the volume that you want to mount.
+ If omitted, the default is to mount by volume name.
+ Examples: For volume /dev/sda1, you specify the partition as "1".
+ Similarly, the volume partition for /dev/sda is "0" (or you can leave the property empty).
+ format: int32
+ type: integer
+ readOnly:
+ description: |-
+ readOnly value true will force the readOnly setting in VolumeMounts.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
+ type: boolean
+ volumeID:
+ description: |-
+ volumeID is unique ID of the persistent disk resource in AWS (Amazon EBS volume).
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
+ type: string
+ required:
+ - volumeID
+ type: object
+ azureDisk:
+ description: azureDisk represents
+ an Azure Data Disk mount on
+ the host and bind mount to the
+ pod.
+ properties:
+ cachingMode:
+ description: 'cachingMode
+ is the Host Caching mode:
+ None, Read Only, Read Write.'
+ type: string
+ diskName:
+ description: diskName is the
+ Name of the data disk in
+ the blob storage
+ type: string
+ diskURI:
+ description: diskURI is the
+ URI of data disk in the
+ blob storage
+ type: string
+ fsType:
+ default: ext4
+ description: |-
+ fsType is Filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ type: string
+ kind:
+ description: 'kind expected
+ values are Shared: multiple
+ blob disks per storage account Dedicated:
+ single blob disk per storage
+ account Managed: azure
+ managed data disk (only
+ in managed availability
+ set). defaults to shared'
+ type: string
+ readOnly:
+ default: false
+ description: |-
+ readOnly Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ type: boolean
+ required:
+ - diskName
+ - diskURI
+ type: object
+ azureFile:
+ description: azureFile represents
+ an Azure File Service mount
+ on the host and bind mount to
+ the pod.
+ properties:
+ readOnly:
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ type: boolean
+ secretName:
+ description: secretName is
+ the name of secret that
+ contains Azure Storage Account
+ Name and Key
+ type: string
+ shareName:
+ description: shareName is
+ the azure share Name
+ type: string
+ required:
+ - secretName
+ - shareName
+ type: object
+ cephfs:
+ description: cephFS represents
+ a Ceph FS mount on the host
+ that shares a pod's lifetime
+ properties:
+ monitors:
+ description: |-
+ monitors is Required: Monitors is a collection of Ceph monitors
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: 'path is Optional:
+ Used as the mounted root,
+ rather than the full Ceph
+ tree, default is /'
+ type: string
+ readOnly:
+ description: |-
+ readOnly is Optional: Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
+ type: boolean
+ secretFile:
+ description: |-
+ secretFile is Optional: SecretFile is the path to key ring for User, default is /etc/ceph/user.secret
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
+ type: string
+ secretRef:
+ description: |-
+ secretRef is Optional: SecretRef is reference to the authentication secret for User, default is empty.
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ user:
+ description: |-
+ user is optional: User is the rados user name, default is admin
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
+ type: string
+ required:
+ - monitors
+ type: object
+ cinder:
+ description: |-
+ cinder represents a cinder volume attached and mounted on kubelets host machine.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
+ properties:
+ fsType:
+ description: |-
+ fsType is the filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
+ type: string
+ readOnly:
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
+ type: boolean
+ secretRef:
+ description: |-
+ secretRef is optional: points to a secret object containing parameters used to connect
+ to OpenStack.
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ volumeID:
+ description: |-
+ volumeID used to identify the volume in cinder.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
+ type: string
+ required:
+ - volumeID
+ type: object
+ configMap:
+ description: configMap represents
+ a configMap that should populate
+ this volume
+ properties:
+ defaultMode:
+ description: |-
+ defaultMode is optional: mode bits used to set permissions on created files by default.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ Defaults to 0644.
+ Directories within the path are not affected by this setting.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
+ format: int32
+ type: integer
+ items:
+ description: |-
+ items if unspecified, each key-value pair in the Data field of the referenced
+ ConfigMap will be projected into the volume as a file whose name is the
+ key and content is the value. If specified, the listed keys will be
+ projected into the specified paths, and unlisted keys will not be
+ present. If a key is specified which is not present in the ConfigMap,
+ the volume setup will error unless it is marked optional. Paths must be
+ relative and may not contain the '..' path or start with '..'.
+ items:
+ description: Maps a string
+ key to a path within a
+ volume.
+ properties:
+ key:
+ description: key is
+ the key to project.
+ type: string
+ mode:
+ description: |-
+ mode is Optional: mode bits used to set permissions on this file.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ If not specified, the volume defaultMode will be used.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
+ format: int32
+ type: integer
+ path:
+ description: |-
+ path is the relative path of the file to map the key to.
+ May not be an absolute path.
+ May not contain the path element '..'.
+ May not start with the string '..'.
+ type: string
+ required:
+ - key
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: optional specify
+ whether the ConfigMap or
+ its keys must be defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ csi:
+ description: csi (Container Storage
+ Interface) represents ephemeral
+ storage that is handled by certain
+ external CSI drivers (Beta feature).
+ properties:
+ driver:
+ description: |-
+ driver is the name of the CSI driver that handles this volume.
+ Consult with your admin for the correct name as registered in the cluster.
+ type: string
+ fsType:
+ description: |-
+ fsType to mount. Ex. "ext4", "xfs", "ntfs".
+ If not provided, the empty value is passed to the associated CSI driver
+ which will determine the default filesystem to apply.
+ type: string
+ nodePublishSecretRef:
+ description: |-
+ nodePublishSecretRef is a reference to the secret object containing
+ sensitive information to pass to the CSI driver to complete the CSI
+ NodePublishVolume and NodeUnpublishVolume calls.
+ This field is optional, and may be empty if no secret is required. If the
+ secret object contains more than one secret, all secret references are passed.
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ readOnly:
+ description: |-
+ readOnly specifies a read-only configuration for the volume.
+ Defaults to false (read/write).
+ type: boolean
+ volumeAttributes:
+ additionalProperties:
+ type: string
+ description: |-
+ volumeAttributes stores driver-specific properties that are passed to the CSI
+ driver. Consult your driver's documentation for supported values.
+ type: object
+ required:
+ - driver
+ type: object
+ downwardAPI:
+ description: downwardAPI represents
+ downward API about the pod that
+ should populate this volume
+ properties:
+ defaultMode:
+ description: |-
+ Optional: mode bits to use on created files by default. Must be a
+ Optional: mode bits used to set permissions on created files by default.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ Defaults to 0644.
+ Directories within the path are not affected by this setting.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
+ format: int32
+ type: integer
+ items:
+ description: Items is a list
+ of downward API volume file
+ items:
+ description: DownwardAPIVolumeFile
+ represents information
+ to create the file containing
+ the pod field
+ properties:
+ fieldRef:
+ description: 'Required:
+ Selects a field of
+ the pod: only annotations,
+ labels, name, namespace
+ and uid are supported.'
+ properties:
+ apiVersion:
+ description: Version
+ of the schema
+ the FieldPath
+ is written in
+ terms of, defaults
+ to "v1".
+ type: string
+ fieldPath:
+ description: Path
+ of the field to
+ select in the
+ specified API
+ version.
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ mode:
+ description: |-
+ Optional: mode bits used to set permissions on this file, must be an octal value
+ between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ If not specified, the volume defaultMode will be used.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
+ format: int32
+ type: integer
+ path:
+ description: 'Required:
+ Path is the relative
+ path name of the file
+ to be created. Must
+ not be absolute or
+ contain the ''..''
+ path. Must be utf-8
+ encoded. The first
+ item of the relative
+ path must not start
+ with ''..'''
+ type: string
+ resourceFieldRef:
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, requests.cpu and requests.memory) are currently supported.
+ properties:
+ containerName:
+ description: 'Container
+ name: required
+ for volumes, optional
+ for env vars'
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ description: Specifies
+ the output format
+ of the exposed
+ resources, defaults
+ to "1"
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ description: 'Required:
+ resource to select'
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ required:
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ emptyDir:
+ description: |-
+ emptyDir represents a temporary directory that shares a pod's lifetime.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
+ properties:
+ medium:
+ description: |-
+ medium represents what type of storage medium should back this directory.
+ The default is "" which means to use the node's default medium.
+ Must be an empty string (default) or Memory.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
+ type: string
+ sizeLimit:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ sizeLimit is the total amount of local storage required for this EmptyDir volume.
+ The size limit is also applicable for memory medium.
+ The maximum usage on memory medium EmptyDir would be the minimum value between
+ the SizeLimit specified here and the sum of memory limits of all containers in a pod.
+ The default is nil which means that the limit is undefined.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ ephemeral:
+ description: |-
+ ephemeral represents a volume that is handled by a cluster storage driver.
+ The volume's lifecycle is tied to the pod that defines it - it will be created before the pod starts,
+ and deleted when the pod is removed.
+
+ Use this if:
+ a) the volume is only needed while the pod runs,
+ b) features of normal volumes like restoring from snapshot or capacity
+ tracking are needed,
+ c) the storage driver is specified through a storage class, and
+ d) the storage driver supports dynamic volume provisioning through
+ a PersistentVolumeClaim (see EphemeralVolumeSource for more
+ information on the connection between this volume type
+ and PersistentVolumeClaim).
+
+ Use PersistentVolumeClaim or one of the vendor-specific
+ APIs for volumes that persist for longer than the lifecycle
+ of an individual pod.
+
+ Use CSI for light-weight local ephemeral volumes if the CSI driver is meant to
+ be used that way - see the documentation of the driver for
+ more information.
+
+ A pod can use both types of ephemeral volumes and
+ persistent volumes at the same time.
+ properties:
+ volumeClaimTemplate:
+ description: |-
+ Will be used to create a stand-alone PVC to provision the volume.
+ The pod in which this EphemeralVolumeSource is embedded will be the
+ owner of the PVC, i.e. the PVC will be deleted together with the
+ pod. The name of the PVC will be `-` where
+ `` is the name from the `PodSpec.Volumes` array
+ entry. Pod validation will reject the pod if the concatenated name
+ is not valid for a PVC (for example, too long).
+
+ An existing PVC with that name that is not owned by the pod
+ will *not* be used for the pod to avoid using an unrelated
+ volume by mistake. Starting the pod is then blocked until
+ the unrelated PVC is removed. If such a pre-created PVC is
+ meant to be used by the pod, the PVC has to updated with an
+ owner reference to the pod once the pod exists. Normally
+ this should not be necessary, but it may be useful when
+ manually reconstructing a broken cluster.
+
+ This field is read-only and no changes will be made by Kubernetes
+ to the PVC after it has been created.
+
+ Required, must not be nil.
+ properties:
+ metadata:
+ description: |-
+ May contain labels and annotations that will be copied into the PVC
+ when creating it. No other fields are allowed and will be rejected during
+ validation.
+ properties:
+ annotations:
+ additionalProperties:
+ type: string
+ type: object
+ finalizers:
+ items:
+ type: string
+ type: array
+ labels:
+ additionalProperties:
+ type: string
+ type: object
+ name:
+ type: string
+ namespace:
+ type: string
+ type: object
+ spec:
+ description: |-
+ The specification for the PersistentVolumeClaim. The entire content is
+ copied unchanged into the PVC that gets created from this
+ template. The same fields as in a PersistentVolumeClaim
+ are also valid here.
+ properties:
+ accessModes:
+ description: |-
+ accessModes contains the desired access modes the volume should have.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ dataSource:
+ description: |-
+ dataSource field can be used to specify either:
+ * An existing VolumeSnapshot object (snapshot.storage.k8s.io/VolumeSnapshot)
+ * An existing PVC (PersistentVolumeClaim)
+ If the provisioner or an external controller can support the specified data source,
+ it will create a new volume based on the contents of the specified data source.
+ When the AnyVolumeDataSource feature gate is enabled, dataSource contents will be copied to dataSourceRef,
+ and dataSourceRef contents will be copied to dataSource when dataSourceRef.namespace is not specified.
+ If the namespace is specified, then dataSourceRef will not be copied to dataSource.
+ properties:
+ apiGroup:
+ description: |-
+ APIGroup is the group for the resource being referenced.
+ If APIGroup is not specified, the specified Kind must be in the core API group.
+ For any other third-party types, APIGroup is required.
+ type: string
+ kind:
+ description: Kind
+ is the type
+ of resource
+ being referenced
+ type: string
+ name:
+ description: Name
+ is the name
+ of resource
+ being referenced
+ type: string
+ required:
+ - kind
+ - name
+ type: object
+ x-kubernetes-map-type: atomic
+ dataSourceRef:
+ description: |-
+ dataSourceRef specifies the object from which to populate the volume with data, if a non-empty
+ volume is desired. This may be any object from a non-empty API group (non
+ core object) or a PersistentVolumeClaim object.
+ When this field is specified, volume binding will only succeed if the type of
+ the specified object matches some installed volume populator or dynamic
+ provisioner.
+ This field will replace the functionality of the dataSource field and as such
+ if both fields are non-empty, they must have the same value. For backwards
+ compatibility, when namespace isn't specified in dataSourceRef,
+ both fields (dataSource and dataSourceRef) will be set to the same
+ value automatically if one of them is empty and the other is non-empty.
+ When namespace is specified in dataSourceRef,
+ dataSource isn't set to the same value and must be empty.
+ There are three important differences between dataSource and dataSourceRef:
+ * While dataSource only allows two specific types of objects, dataSourceRef
+ allows any non-core object, as well as PersistentVolumeClaim objects.
+ * While dataSource ignores disallowed values (dropping them), dataSourceRef
+ preserves all values, and generates an error if a disallowed value is
+ specified.
+ * While dataSource only allows local objects, dataSourceRef allows objects
+ in any namespaces.
+ (Beta) Using this field requires the AnyVolumeDataSource feature gate to be enabled.
+ (Alpha) Using the namespace field of dataSourceRef requires the CrossNamespaceVolumeDataSource feature gate to be enabled.
+ properties:
+ apiGroup:
+ description: |-
+ APIGroup is the group for the resource being referenced.
+ If APIGroup is not specified, the specified Kind must be in the core API group.
+ For any other third-party types, APIGroup is required.
+ type: string
+ kind:
+ description: Kind
+ is the type
+ of resource
+ being referenced
+ type: string
+ name:
+ description: Name
+ is the name
+ of resource
+ being referenced
+ type: string
+ namespace:
+ description: |-
+ Namespace is the namespace of resource being referenced
+ Note that when a namespace is specified, a gateway.networking.k8s.io/ReferenceGrant object is required in the referent namespace to allow that namespace's owner to accept the reference. See the ReferenceGrant documentation for details.
+ (Alpha) This field requires the CrossNamespaceVolumeDataSource feature gate to be enabled.
+ type: string
+ required:
+ - kind
+ - name
+ type: object
+ resources:
+ description: |-
+ resources represents the minimum resources the volume should have.
+ If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements
+ that are lower than previous value but must still be higher than capacity recorded in the
+ status field of the claim.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
+ properties:
+ limits:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ type: object
+ requests:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ type: object
+ type: object
+ selector:
+ description: selector
+ is a label query
+ over volumes to
+ consider for binding.
+ properties:
+ matchExpressions:
+ description: matchExpressions
+ is a list of
+ label selector
+ requirements.
+ The requirements
+ are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key
+ is the
+ label
+ key that
+ the selector
+ applies
+ to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ storageClassName:
+ description: |-
+ storageClassName is the name of the StorageClass required by the claim.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1
+ type: string
+ volumeAttributesClassName:
+ description: |-
+ volumeAttributesClassName may be used to set the VolumeAttributesClass used by this claim.
+ If specified, the CSI driver will create or update the volume with the attributes defined
+ in the corresponding VolumeAttributesClass. This has a different purpose than storageClassName,
+ it can be changed after the claim is created. An empty string value means that no VolumeAttributesClass
+ will be applied to the claim but it's not allowed to reset this field to empty string once it is set.
+ If unspecified and the PersistentVolumeClaim is unbound, the default VolumeAttributesClass
+ will be set by the persistentvolume controller if it exists.
+ If the resource referred to by volumeAttributesClass does not exist, this PersistentVolumeClaim will be
+ set to a Pending state, as reflected by the modifyVolumeStatus field, until such as a resource
+ exists.
+ More info: https://kubernetes.io/docs/concepts/storage/volume-attributes-classes/
+ (Beta) Using this field requires the VolumeAttributesClass feature gate to be enabled (off by default).
+ type: string
+ volumeMode:
+ description: |-
+ volumeMode defines what type of volume is required by the claim.
+ Value of Filesystem is implied when not included in claim spec.
+ type: string
+ volumeName:
+ description: volumeName
+ is the binding reference
+ to the PersistentVolume
+ backing this claim.
+ type: string
+ type: object
+ required:
+ - spec
+ type: object
+ type: object
+ fc:
+ description: fc represents a Fibre
+ Channel resource that is attached
+ to a kubelet's host machine
+ and then exposed to the pod.
+ properties:
+ fsType:
+ description: |-
+ fsType is the filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ type: string
+ lun:
+ description: 'lun is Optional:
+ FC target lun number'
+ format: int32
+ type: integer
+ readOnly:
+ description: |-
+ readOnly is Optional: Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ type: boolean
+ targetWWNs:
+ description: 'targetWWNs is
+ Optional: FC target worldwide
+ names (WWNs)'
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ wwids:
+ description: |-
+ wwids Optional: FC volume world wide identifiers (wwids)
+ Either wwids or combination of targetWWNs and lun must be set, but not both simultaneously.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ flexVolume:
+ description: |-
+ flexVolume represents a generic volume resource that is
+ provisioned/attached using an exec based plugin.
+ properties:
+ driver:
+ description: driver is the
+ name of the driver to use
+ for this volume.
+ type: string
+ fsType:
+ description: |-
+ fsType is the filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Ex. "ext4", "xfs", "ntfs". The default filesystem depends on FlexVolume script.
+ type: string
+ options:
+ additionalProperties:
+ type: string
+ description: 'options is Optional:
+ this field holds extra command
+ options if any.'
+ type: object
+ readOnly:
+ description: |-
+ readOnly is Optional: defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ type: boolean
+ secretRef:
+ description: |-
+ secretRef is Optional: secretRef is reference to the secret object containing
+ sensitive information to pass to the plugin scripts. This may be
+ empty if no secret object is specified. If the secret object
+ contains more than one secret, all secrets are passed to the plugin
+ scripts.
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ required:
+ - driver
+ type: object
+ flocker:
+ description: flocker represents
+ a Flocker volume attached to
+ a kubelet's host machine. This
+ depends on the Flocker control
+ service being running
+ properties:
+ datasetName:
+ description: |-
+ datasetName is Name of the dataset stored as metadata -> name on the dataset for Flocker
+ should be considered as deprecated
+ type: string
+ datasetUUID:
+ description: datasetUUID is
+ the UUID of the dataset.
+ This is unique identifier
+ of a Flocker dataset
+ type: string
+ type: object
+ gcePersistentDisk:
+ description: |-
+ gcePersistentDisk represents a GCE Disk resource that is attached to a
+ kubelet's host machine and then exposed to the pod.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
+ properties:
+ fsType:
+ description: |-
+ fsType is filesystem type of the volume that you want to mount.
+ Tip: Ensure that the filesystem type is supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
+ type: string
+ partition:
+ description: |-
+ partition is the partition in the volume that you want to mount.
+ If omitted, the default is to mount by volume name.
+ Examples: For volume /dev/sda1, you specify the partition as "1".
+ Similarly, the volume partition for /dev/sda is "0" (or you can leave the property empty).
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
+ format: int32
+ type: integer
+ pdName:
+ description: |-
+ pdName is unique name of the PD resource in GCE. Used to identify the disk in GCE.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
+ type: string
+ readOnly:
+ description: |-
+ readOnly here will force the ReadOnly setting in VolumeMounts.
+ Defaults to false.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
+ type: boolean
+ required:
+ - pdName
+ type: object
+ gitRepo:
+ description: |-
+ gitRepo represents a git repository at a particular revision.
+ DEPRECATED: GitRepo is deprecated. To provision a container with a git repo, mount an
+ EmptyDir into an InitContainer that clones the repo using git, then mount the EmptyDir
+ into the Pod's container.
+ properties:
+ directory:
+ description: |-
+ directory is the target directory name.
+ Must not contain or start with '..'. If '.' is supplied, the volume directory will be the
+ git repository. Otherwise, if specified, the volume will contain the git repository in
+ the subdirectory with the given name.
+ type: string
+ repository:
+ description: repository is
+ the URL
+ type: string
+ revision:
+ description: revision is the
+ commit hash for the specified
+ revision.
+ type: string
+ required:
+ - repository
+ type: object
+ glusterfs:
+ description: |-
+ glusterfs represents a Glusterfs mount on the host that shares a pod's lifetime.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md
+ properties:
+ endpoints:
+ description: |-
+ endpoints is the endpoint name that details Glusterfs topology.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
+ type: string
+ path:
+ description: |-
+ path is the Glusterfs volume path.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
+ type: string
+ readOnly:
+ description: |-
+ readOnly here will force the Glusterfs volume to be mounted with read-only permissions.
+ Defaults to false.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
+ type: boolean
+ required:
+ - endpoints
+ - path
+ type: object
+ hostPath:
+ description: |-
+ hostPath represents a pre-existing file or directory on the host
+ machine that is directly exposed to the container. This is generally
+ used for system agents or other privileged things that are allowed
+ to see the host machine. Most containers will NOT need this.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath
+ properties:
+ path:
+ description: |-
+ path of the directory on the host.
+ If the path is a symlink, it will follow the link to the real path.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath
+ type: string
+ type:
+ description: |-
+ type for HostPath Volume
+ Defaults to ""
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath
+ type: string
+ required:
+ - path
+ type: object
+ image:
+ description: |-
+ image represents an OCI object (a container image or artifact) pulled and mounted on the kubelet's host machine.
+ The volume is resolved at pod startup depending on which PullPolicy value is provided:
+
+ - Always: the kubelet always attempts to pull the reference. Container creation will fail If the pull fails.
+ - Never: the kubelet never pulls the reference and only uses a local image or artifact. Container creation will fail if the reference isn't present.
+ - IfNotPresent: the kubelet pulls if the reference isn't already present on disk. Container creation will fail if the reference isn't present and the pull fails.
+
+ The volume gets re-resolved if the pod gets deleted and recreated, which means that new remote content will become available on pod recreation.
+ A failure to resolve or pull the image during pod startup will block containers from starting and may add significant latency. Failures will be retried using normal volume backoff and will be reported on the pod reason and message.
+ The types of objects that may be mounted by this volume are defined by the container runtime implementation on a host machine and at minimum must include all valid types supported by the container image field.
+ The OCI object gets mounted in a single directory (spec.containers[*].volumeMounts.mountPath) by merging the manifest layers in the same way as for container images.
+ The volume will be mounted read-only (ro) and non-executable files (noexec).
+ Sub path mounts for containers are not supported (spec.containers[*].volumeMounts.subpath).
+ The field spec.securityContext.fsGroupChangePolicy has no effect on this volume type.
+ properties:
+ pullPolicy:
+ description: |-
+ Policy for pulling OCI objects. Possible values are:
+ Always: the kubelet always attempts to pull the reference. Container creation will fail If the pull fails.
+ Never: the kubelet never pulls the reference and only uses a local image or artifact. Container creation will fail if the reference isn't present.
+ IfNotPresent: the kubelet pulls if the reference isn't already present on disk. Container creation will fail if the reference isn't present and the pull fails.
+ Defaults to Always if :latest tag is specified, or IfNotPresent otherwise.
+ type: string
+ reference:
+ description: |-
+ Required: Image or artifact reference to be used.
+ Behaves in the same way as pod.spec.containers[*].image.
+ Pull secrets will be assembled in the same way as for the container image by looking up node credentials, SA image pull secrets, and pod spec image pull secrets.
+ More info: https://kubernetes.io/docs/concepts/containers/images
+ This field is optional to allow higher level config management to default or override
+ container images in workload controllers like Deployments and StatefulSets.
+ type: string
+ type: object
+ iscsi:
+ description: |-
+ iscsi represents an ISCSI Disk resource that is attached to a
+ kubelet's host machine and then exposed to the pod.
+ More info: https://examples.k8s.io/volumes/iscsi/README.md
+ properties:
+ chapAuthDiscovery:
+ description: chapAuthDiscovery
+ defines whether support
+ iSCSI Discovery CHAP authentication
+ type: boolean
+ chapAuthSession:
+ description: chapAuthSession
+ defines whether support
+ iSCSI Session CHAP authentication
+ type: boolean
+ fsType:
+ description: |-
+ fsType is the filesystem type of the volume that you want to mount.
+ Tip: Ensure that the filesystem type is supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#iscsi
+ type: string
+ initiatorName:
+ description: |-
+ initiatorName is the custom iSCSI Initiator Name.
+ If initiatorName is specified with iscsiInterface simultaneously, new iSCSI interface
+ : will be created for the connection.
+ type: string
+ iqn:
+ description: iqn is the target
+ iSCSI Qualified Name.
+ type: string
+ iscsiInterface:
+ default: default
+ description: |-
+ iscsiInterface is the interface Name that uses an iSCSI transport.
+ Defaults to 'default' (tcp).
+ type: string
+ lun:
+ description: lun represents
+ iSCSI Target Lun number.
+ format: int32
+ type: integer
+ portals:
+ description: |-
+ portals is the iSCSI Target Portal List. The portal is either an IP or ip_addr:port if the port
+ is other than default (typically TCP ports 860 and 3260).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ readOnly:
+ description: |-
+ readOnly here will force the ReadOnly setting in VolumeMounts.
+ Defaults to false.
+ type: boolean
+ secretRef:
+ description: secretRef is
+ the CHAP Secret for iSCSI
+ target and initiator authentication
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ targetPortal:
+ description: |-
+ targetPortal is iSCSI Target Portal. The Portal is either an IP or ip_addr:port if the port
+ is other than default (typically TCP ports 860 and 3260).
+ type: string
+ required:
+ - iqn
+ - lun
+ - targetPortal
+ type: object
+ name:
+ description: |-
+ name of the volume.
+ Must be a DNS_LABEL and unique within the pod.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ nfs:
+ description: |-
+ nfs represents an NFS mount on the host that shares a pod's lifetime
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
+ properties:
+ path:
+ description: |-
+ path that is exported by the NFS server.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
+ type: string
+ readOnly:
+ description: |-
+ readOnly here will force the NFS export to be mounted with read-only permissions.
+ Defaults to false.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
+ type: boolean
+ server:
+ description: |-
+ server is the hostname or IP address of the NFS server.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
+ type: string
+ required:
+ - path
+ - server
+ type: object
+ persistentVolumeClaim:
+ description: |-
+ persistentVolumeClaimVolumeSource represents a reference to a
+ PersistentVolumeClaim in the same namespace.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
+ properties:
+ claimName:
+ description: |-
+ claimName is the name of a PersistentVolumeClaim in the same namespace as the pod using this volume.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
+ type: string
+ readOnly:
+ description: |-
+ readOnly Will force the ReadOnly setting in VolumeMounts.
+ Default false.
+ type: boolean
+ required:
+ - claimName
+ type: object
+ photonPersistentDisk:
+ description: photonPersistentDisk
+ represents a PhotonController
+ persistent disk attached and
+ mounted on kubelets host machine
+ properties:
+ fsType:
+ description: |-
+ fsType is the filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ type: string
+ pdID:
+ description: pdID is the ID
+ that identifies Photon Controller
+ persistent disk
+ type: string
+ required:
+ - pdID
+ type: object
+ portworxVolume:
+ description: portworxVolume represents
+ a portworx volume attached and
+ mounted on kubelets host machine
+ properties:
+ fsType:
+ description: |-
+ fSType represents the filesystem type to mount
+ Must be a filesystem type supported by the host operating system.
+ Ex. "ext4", "xfs". Implicitly inferred to be "ext4" if unspecified.
+ type: string
+ readOnly:
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ type: boolean
+ volumeID:
+ description: volumeID uniquely
+ identifies a Portworx volume
+ type: string
+ required:
+ - volumeID
+ type: object
+ projected:
+ description: projected items for
+ all in one resources secrets,
+ configmaps, and downward API
+ properties:
+ defaultMode:
+ description: |-
+ defaultMode are the mode bits used to set permissions on created files by default.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ Directories within the path are not affected by this setting.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
+ format: int32
+ type: integer
+ sources:
+ description: |-
+ sources is the list of volume projections. Each entry in this list
+ handles one source.
+ items:
+ description: |-
+ Projection that may be projected along with other supported volume types.
+ Exactly one of these fields must be set.
+ properties:
+ clusterTrustBundle:
+ description: |-
+ ClusterTrustBundle allows a pod to access the `.spec.trustBundle` field
+ of ClusterTrustBundle objects in an auto-updating file.
+
+ Alpha, gated by the ClusterTrustBundleProjection feature gate.
+
+ ClusterTrustBundle objects can either be selected by name, or by the
+ combination of signer name and a label selector.
+
+ Kubelet performs aggressive normalization of the PEM contents written
+ into the pod filesystem. Esoteric PEM features such as inter-block
+ comments and block headers are stripped. Certificates are deduplicated.
+ The ordering of certificates within the file is arbitrary, and Kubelet
+ may change the order over time.
+ properties:
+ labelSelector:
+ description: |-
+ Select all ClusterTrustBundles that match this label selector. Only has
+ effect if signerName is set. Mutually-exclusive with name. If unset,
+ interpreted as "match nothing". If set but empty, interpreted as "match
+ everything".
+ properties:
+ matchExpressions:
+ description: matchExpressions
+ is a list
+ of label selector
+ requirements.
+ The requirements
+ are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key
+ is the
+ label
+ key
+ that
+ the
+ selector
+ applies
+ to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ name:
+ description: |-
+ Select a single ClusterTrustBundle by object name. Mutually-exclusive
+ with signerName and labelSelector.
+ type: string
+ optional:
+ description: |-
+ If true, don't block pod startup if the referenced ClusterTrustBundle(s)
+ aren't available. If using name, then the named ClusterTrustBundle is
+ allowed not to exist. If using signerName, then the combination of
+ signerName and labelSelector is allowed to match zero
+ ClusterTrustBundles.
+ type: boolean
+ path:
+ description: Relative
+ path from the
+ volume root to
+ write the bundle.
+ type: string
+ signerName:
+ description: |-
+ Select all ClusterTrustBundles that match this signer name.
+ Mutually-exclusive with name. The contents of all selected
+ ClusterTrustBundles will be unified and deduplicated.
+ type: string
+ required:
+ - path
+ type: object
+ configMap:
+ description: configMap
+ information about
+ the configMap data
+ to project
+ properties:
+ items:
+ description: |-
+ items if unspecified, each key-value pair in the Data field of the referenced
+ ConfigMap will be projected into the volume as a file whose name is the
+ key and content is the value. If specified, the listed keys will be
+ projected into the specified paths, and unlisted keys will not be
+ present. If a key is specified which is not present in the ConfigMap,
+ the volume setup will error unless it is marked optional. Paths must be
+ relative and may not contain the '..' path or start with '..'.
+ items:
+ description: Maps
+ a string key
+ to a path within
+ a volume.
+ properties:
+ key:
+ description: key
+ is the key
+ to project.
+ type: string
+ mode:
+ description: |-
+ mode is Optional: mode bits used to set permissions on this file.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ If not specified, the volume defaultMode will be used.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
+ format: int32
+ type: integer
+ path:
+ description: |-
+ path is the relative path of the file to map the key to.
+ May not be an absolute path.
+ May not contain the path element '..'.
+ May not start with the string '..'.
+ type: string
+ required:
+ - key
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: optional
+ specify whether
+ the ConfigMap
+ or its keys must
+ be defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ downwardAPI:
+ description: downwardAPI
+ information about
+ the downwardAPI data
+ to project
+ properties:
+ items:
+ description: Items
+ is a list of DownwardAPIVolume
+ file
+ items:
+ description: DownwardAPIVolumeFile
+ represents information
+ to create the
+ file containing
+ the pod field
+ properties:
+ fieldRef:
+ description: 'Required:
+ Selects
+ a field
+ of the pod:
+ only annotations,
+ labels,
+ name, namespace
+ and uid
+ are supported.'
+ properties:
+ apiVersion:
+ description: Version
+ of the
+ schema
+ the
+ FieldPath
+ is written
+ in terms
+ of,
+ defaults
+ to "v1".
+ type: string
+ fieldPath:
+ description: Path
+ of the
+ field
+ to select
+ in the
+ specified
+ API
+ version.
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ mode:
+ description: |-
+ Optional: mode bits used to set permissions on this file, must be an octal value
+ between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ If not specified, the volume defaultMode will be used.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
+ format: int32
+ type: integer
+ path:
+ description: 'Required:
+ Path is the
+ relative
+ path name
+ of the file
+ to be created.
+ Must not
+ be absolute
+ or contain
+ the ''..''
+ path. Must
+ be utf-8
+ encoded.
+ The first
+ item of
+ the relative
+ path must
+ not start
+ with ''..'''
+ type: string
+ resourceFieldRef:
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, requests.cpu and requests.memory) are currently supported.
+ properties:
+ containerName:
+ description: 'Container
+ name:
+ required
+ for
+ volumes,
+ optional
+ for
+ env
+ vars'
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ description: Specifies
+ the
+ output
+ format
+ of the
+ exposed
+ resources,
+ defaults
+ to "1"
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ description: 'Required:
+ resource
+ to select'
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ required:
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ secret:
+ description: secret
+ information about
+ the secret data to
+ project
+ properties:
+ items:
+ description: |-
+ items if unspecified, each key-value pair in the Data field of the referenced
+ Secret will be projected into the volume as a file whose name is the
+ key and content is the value. If specified, the listed keys will be
+ projected into the specified paths, and unlisted keys will not be
+ present. If a key is specified which is not present in the Secret,
+ the volume setup will error unless it is marked optional. Paths must be
+ relative and may not contain the '..' path or start with '..'.
+ items:
+ description: Maps
+ a string key
+ to a path within
+ a volume.
+ properties:
+ key:
+ description: key
+ is the key
+ to project.
+ type: string
+ mode:
+ description: |-
+ mode is Optional: mode bits used to set permissions on this file.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ If not specified, the volume defaultMode will be used.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
+ format: int32
+ type: integer
+ path:
+ description: |-
+ path is the relative path of the file to map the key to.
+ May not be an absolute path.
+ May not contain the path element '..'.
+ May not start with the string '..'.
+ type: string
+ required:
+ - key
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: optional
+ field specify
+ whether the Secret
+ or its key must
+ be defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ serviceAccountToken:
+ description: serviceAccountToken
+ is information about
+ the serviceAccountToken
+ data to project
+ properties:
+ audience:
+ description: |-
+ audience is the intended audience of the token. A recipient of a token
+ must identify itself with an identifier specified in the audience of the
+ token, and otherwise should reject the token. The audience defaults to the
+ identifier of the apiserver.
+ type: string
+ expirationSeconds:
+ description: |-
+ expirationSeconds is the requested duration of validity of the service
+ account token. As the token approaches expiration, the kubelet volume
+ plugin will proactively rotate the service account token. The kubelet will
+ start trying to rotate the token if the token is older than 80 percent of
+ its time to live or if the token is older than 24 hours.Defaults to 1 hour
+ and must be at least 10 minutes.
+ format: int64
+ type: integer
+ path:
+ description: |-
+ path is the path relative to the mount point of the file to project the
+ token into.
+ type: string
+ required:
+ - path
+ type: object
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ quobyte:
+ description: quobyte represents
+ a Quobyte mount on the host
+ that shares a pod's lifetime
+ properties:
+ group:
+ description: |-
+ group to map volume access to
+ Default is no group
+ type: string
+ readOnly:
+ description: |-
+ readOnly here will force the Quobyte volume to be mounted with read-only permissions.
+ Defaults to false.
+ type: boolean
+ registry:
+ description: |-
+ registry represents a single or multiple Quobyte Registry services
+ specified as a string as host:port pair (multiple entries are separated with commas)
+ which acts as the central registry for volumes
+ type: string
+ tenant:
+ description: |-
+ tenant owning the given Quobyte volume in the Backend
+ Used with dynamically provisioned Quobyte volumes, value is set by the plugin
+ type: string
+ user:
+ description: |-
+ user to map volume access to
+ Defaults to serivceaccount user
+ type: string
+ volume:
+ description: volume is a string
+ that references an already
+ created Quobyte volume by
+ name.
+ type: string
+ required:
+ - registry
+ - volume
+ type: object
+ rbd:
+ description: |-
+ rbd represents a Rados Block Device mount on the host that shares a pod's lifetime.
+ More info: https://examples.k8s.io/volumes/rbd/README.md
+ properties:
+ fsType:
+ description: |-
+ fsType is the filesystem type of the volume that you want to mount.
+ Tip: Ensure that the filesystem type is supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#rbd
+ type: string
+ image:
+ description: |-
+ image is the rados image name.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
+ type: string
+ keyring:
+ default: /etc/ceph/keyring
+ description: |-
+ keyring is the path to key ring for RBDUser.
+ Default is /etc/ceph/keyring.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
+ type: string
+ monitors:
+ description: |-
+ monitors is a collection of Ceph monitors.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ pool:
+ default: rbd
+ description: |-
+ pool is the rados pool name.
+ Default is rbd.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
+ type: string
+ readOnly:
+ description: |-
+ readOnly here will force the ReadOnly setting in VolumeMounts.
+ Defaults to false.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
+ type: boolean
+ secretRef:
+ description: |-
+ secretRef is name of the authentication secret for RBDUser. If provided
+ overrides keyring.
+ Default is nil.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ user:
+ default: admin
+ description: |-
+ user is the rados user name.
+ Default is admin.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
+ type: string
+ required:
+ - image
+ - monitors
+ type: object
+ scaleIO:
+ description: scaleIO represents
+ a ScaleIO persistent volume
+ attached and mounted on Kubernetes
+ nodes.
+ properties:
+ fsType:
+ default: xfs
+ description: |-
+ fsType is the filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Ex. "ext4", "xfs", "ntfs".
+ Default is "xfs".
+ type: string
+ gateway:
+ description: gateway is the
+ host address of the ScaleIO
+ API Gateway.
+ type: string
+ protectionDomain:
+ description: protectionDomain
+ is the name of the ScaleIO
+ Protection Domain for the
+ configured storage.
+ type: string
+ readOnly:
+ description: |-
+ readOnly Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ type: boolean
+ secretRef:
+ description: |-
+ secretRef references to the secret for ScaleIO user and other
+ sensitive information. If this is not provided, Login operation will fail.
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ sslEnabled:
+ description: sslEnabled Flag
+ enable/disable SSL communication
+ with Gateway, default false
+ type: boolean
+ storageMode:
+ default: ThinProvisioned
+ description: |-
+ storageMode indicates whether the storage for a volume should be ThickProvisioned or ThinProvisioned.
+ Default is ThinProvisioned.
+ type: string
+ storagePool:
+ description: storagePool is
+ the ScaleIO Storage Pool
+ associated with the protection
+ domain.
+ type: string
+ system:
+ description: system is the
+ name of the storage system
+ as configured in ScaleIO.
+ type: string
+ volumeName:
+ description: |-
+ volumeName is the name of a volume already created in the ScaleIO system
+ that is associated with this volume source.
+ type: string
+ required:
+ - gateway
+ - secretRef
+ - system
+ type: object
+ secret:
+ description: |-
+ secret represents a secret that should populate this volume.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#secret
+ properties:
+ defaultMode:
+ description: |-
+ defaultMode is Optional: mode bits used to set permissions on created files by default.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values
+ for mode bits. Defaults to 0644.
+ Directories within the path are not affected by this setting.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
+ format: int32
+ type: integer
+ items:
+ description: |-
+ items If unspecified, each key-value pair in the Data field of the referenced
+ Secret will be projected into the volume as a file whose name is the
+ key and content is the value. If specified, the listed keys will be
+ projected into the specified paths, and unlisted keys will not be
+ present. If a key is specified which is not present in the Secret,
+ the volume setup will error unless it is marked optional. Paths must be
+ relative and may not contain the '..' path or start with '..'.
+ items:
+ description: Maps a string
+ key to a path within a
+ volume.
+ properties:
+ key:
+ description: key is
+ the key to project.
+ type: string
+ mode:
+ description: |-
+ mode is Optional: mode bits used to set permissions on this file.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ If not specified, the volume defaultMode will be used.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
+ format: int32
+ type: integer
+ path:
+ description: |-
+ path is the relative path of the file to map the key to.
+ May not be an absolute path.
+ May not contain the path element '..'.
+ May not start with the string '..'.
+ type: string
+ required:
+ - key
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ optional:
+ description: optional field
+ specify whether the Secret
+ or its keys must be defined
+ type: boolean
+ secretName:
+ description: |-
+ secretName is the name of the secret in the pod's namespace to use.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#secret
+ type: string
+ type: object
+ storageos:
+ description: storageOS represents
+ a StorageOS volume attached
+ and mounted on Kubernetes nodes.
+ properties:
+ fsType:
+ description: |-
+ fsType is the filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ type: string
+ readOnly:
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ type: boolean
+ secretRef:
+ description: |-
+ secretRef specifies the secret to use for obtaining the StorageOS API
+ credentials. If not specified, default values will be attempted.
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ volumeName:
+ description: |-
+ volumeName is the human-readable name of the StorageOS volume. Volume
+ names are only unique within a namespace.
+ type: string
+ volumeNamespace:
+ description: |-
+ volumeNamespace specifies the scope of the volume within StorageOS. If no
+ namespace is specified then the Pod's namespace will be used. This allows the
+ Kubernetes name scoping to be mirrored within StorageOS for tighter integration.
+ Set VolumeName to any name to override the default behaviour.
+ Set to "default" if you are not using namespaces within StorageOS.
+ Namespaces that do not pre-exist within StorageOS will be created.
+ type: string
+ type: object
+ vsphereVolume:
+ description: vsphereVolume represents
+ a vSphere volume attached and
+ mounted on kubelets host machine
+ properties:
+ fsType:
+ description: |-
+ fsType is filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ type: string
+ storagePolicyID:
+ description: storagePolicyID
+ is the storage Policy Based
+ Management (SPBM) profile
+ ID associated with the StoragePolicyName.
+ type: string
+ storagePolicyName:
+ description: storagePolicyName
+ is the storage Policy Based
+ Management (SPBM) profile
+ name.
+ type: string
+ volumePath:
+ description: volumePath is
+ the path that identifies
+ vSphere volume vmdk
+ type: string
+ required:
+ - volumePath
+ type: object
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ required:
+ - containers
+ type: object
+ type: object
+ ttlSecondsAfterFinished:
+ description: |-
+ ttlSecondsAfterFinished limits the lifetime of a Job that has finished
+ execution (either Complete or Failed). If this field is set,
+ ttlSecondsAfterFinished after the Job finishes, it is eligible to be
+ automatically deleted. When the Job is being deleted, its lifecycle
+ guarantees (e.g. finalizers) will be honored. If this field is unset,
+ the Job won't be automatically deleted. If this field is set to zero,
+ the Job becomes eligible to be deleted immediately after it finishes.
+ format: int32
+ type: integer
+ required:
+ - template
+ type: object
+ type: object
+ required:
+ - name
+ - template
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ startupPolicy:
+ description: StartupPolicy, if set, configures in what order
+ jobs must be started
+ properties:
+ startupPolicyOrder:
+ description: |-
+ StartupPolicyOrder determines the startup order of the ReplicatedJobs.
+ AnyOrder means to start replicated jobs in any order.
+ InOrder means to start them as they are listed in the JobSet. A ReplicatedJob is started only
+ when all the jobs of the previous one are ready.
+ enum:
+ - AnyOrder
+ - InOrder
+ type: string
+ required:
+ - startupPolicyOrder
+ type: object
+ x-kubernetes-validations:
+ - message: Value is immutable
+ rule: self == oldSelf
+ successPolicy:
+ description: |-
+ SuccessPolicy configures when to declare the JobSet as
+ succeeded.
+ The JobSet is always declared succeeded if all jobs in the set
+ finished with status complete.
+ properties:
+ operator:
+ description: Operator determines either All or Any of
+ the selected jobs should succeed to consider the JobSet
+ successful
+ enum:
+ - All
+ - Any
+ type: string
+ targetReplicatedJobs:
+ description: |-
+ TargetReplicatedJobs are the names of the replicated jobs the operator will apply to.
+ A null or empty list will apply to all replicatedJobs.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - operator
+ type: object
+ x-kubernetes-validations:
+ - message: Value is immutable
+ rule: self == oldSelf
+ suspend:
+ description: Suspend suspends all running child Jobs when
+ set to true.
+ type: boolean
+ ttlSecondsAfterFinished:
+ description: |-
+ TTLSecondsAfterFinished limits the lifetime of a JobSet that has finished
+ execution (either Complete or Failed). If this field is set,
+ TTLSecondsAfterFinished after the JobSet finishes, it is eligible to be
+ automatically deleted. When the JobSet is being deleted, its lifecycle
+ guarantees (e.g. finalizers) will be honored. If this field is unset,
+ the JobSet won't be automatically deleted. If this field is set to zero,
+ the JobSet becomes eligible to be deleted immediately after it finishes.
+ format: int32
+ minimum: 0
+ type: integer
+ type: object
+ type: object
+ required:
+ - template
+ type: object
+ type: object
+ served: true
+ storage: true
diff --git a/charts/kubeflow/apps/training-operator/upstream/v2/base/crds/kubeflow.org_trainingruntimes.yaml b/charts/kubeflow/apps/training-operator/upstream/v2/base/crds/kubeflow.org_trainingruntimes.yaml
new file mode 100644
index 0000000..0ae1653
--- /dev/null
+++ b/charts/kubeflow/apps/training-operator/upstream/v2/base/crds/kubeflow.org_trainingruntimes.yaml
@@ -0,0 +1,9760 @@
+---
+apiVersion: apiextensions.k8s.io/v1
+kind: CustomResourceDefinition
+metadata:
+ annotations:
+ controller-gen.kubebuilder.io/version: v0.16.5
+ name: trainingruntimes.kubeflow.org
+spec:
+ group: kubeflow.org
+ names:
+ kind: TrainingRuntime
+ listKind: TrainingRuntimeList
+ plural: trainingruntimes
+ singular: trainingruntime
+ scope: Namespaced
+ versions:
+ - name: v2alpha1
+ schema:
+ openAPIV3Schema:
+ description: |-
+ TrainingRuntime represents a training runtime which can be referenced as part of
+ `runtimeRef` API in TrainJob. This resource is a namespaced-scoped and can be referenced
+ by TrainJob that created in the *same* namespace as the TrainingRuntime.
+ properties:
+ apiVersion:
+ description: |-
+ APIVersion defines the versioned schema of this representation of an object.
+ Servers should convert recognized schemas to the latest internal value, and
+ may reject unrecognized values.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
+ type: string
+ kind:
+ description: |-
+ Kind is a string value representing the REST resource this object represents.
+ Servers may infer this from the endpoint the client submits requests to.
+ Cannot be updated.
+ In CamelCase.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
+ type: string
+ metadata:
+ type: object
+ spec:
+ description: Specification of the desired TrainingRuntime.
+ properties:
+ mlPolicy:
+ description: Configuration for the model training with ML-specific
+ parameters.
+ properties:
+ mpi:
+ description: Configuration for the MPI Runtime.
+ properties:
+ mpiImplementation:
+ description: |-
+ Implementation name for the MPI to create the appropriate hostfile.
+ Defaults to OpenMPI.
+ type: string
+ numProcPerNode:
+ description: |-
+ Number of processes per node.
+ This value is equal to the number of slots for each node in the hostfile.
+ format: int32
+ type: integer
+ runLauncherAsNode:
+ description: |-
+ Whether to run training process on the launcher Job.
+ Defaults to false.
+ type: boolean
+ sshAuthMountPath:
+ description: Directory where SSH keys are mounted.
+ type: string
+ type: object
+ numNodes:
+ description: |-
+ Number of training nodes.
+ Defaults to 1.
+ format: int32
+ type: integer
+ torch:
+ description: Configuration for the PyTorch runtime.
+ properties:
+ elasticPolicy:
+ description: Elastic policy for the PyTorch training.
+ properties:
+ maxNodes:
+ description: Upper limit for the number of nodes to which
+ training job can scale up.
+ format: int32
+ type: integer
+ maxRestarts:
+ description: |-
+ How many times the training job can be restarted.
+ This value is inserted into the `--max-restarts` argument of the `torchrun` CLI and
+ the `.spec.failurePolicy.maxRestarts` parameter of the training Job.
+ format: int32
+ type: integer
+ metrics:
+ description: |-
+ Specification which are used to calculate the desired number of nodes. See the individual
+ metric source types for more information about how each type of metric must respond.
+ The HPA will be created to perform auto-scaling.
+ items:
+ description: |-
+ MetricSpec specifies how to scale based on a single metric
+ (only `type` and one other matching field should be set at once).
+ properties:
+ containerResource:
+ description: |-
+ containerResource refers to a resource metric (such as those specified in
+ requests and limits) known to Kubernetes describing a single container in
+ each pod of the current scale target (e.g. CPU or memory). Such metrics are
+ built in to Kubernetes, and have special scaling options on top of those
+ available to normal per-pod metrics using the "pods" source.
+ This is an alpha feature and can be enabled by the HPAContainerMetrics feature flag.
+ properties:
+ container:
+ description: container is the name of the container
+ in the pods of the scaling target
+ type: string
+ name:
+ description: name is the name of the resource
+ in question.
+ type: string
+ target:
+ description: target specifies the target value
+ for the given metric
+ properties:
+ averageUtilization:
+ description: |-
+ averageUtilization is the target value of the average of the
+ resource metric across all relevant pods, represented as a percentage of
+ the requested value of the resource for the pods.
+ Currently only valid for Resource metric source type
+ format: int32
+ type: integer
+ averageValue:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ averageValue is the target value of the average of the
+ metric across all relevant pods (as a quantity)
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type:
+ description: type represents whether the
+ metric type is Utilization, Value, or
+ AverageValue
+ type: string
+ value:
+ anyOf:
+ - type: integer
+ - type: string
+ description: value is the target value of
+ the metric (as a quantity).
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ required:
+ - type
+ type: object
+ required:
+ - container
+ - name
+ - target
+ type: object
+ external:
+ description: |-
+ external refers to a global metric that is not associated
+ with any Kubernetes object. It allows autoscaling based on information
+ coming from components running outside of cluster
+ (for example length of queue in cloud messaging service, or
+ QPS from loadbalancer running outside of cluster).
+ properties:
+ metric:
+ description: metric identifies the target metric
+ by name and selector
+ properties:
+ name:
+ description: name is the name of the given
+ metric
+ type: string
+ selector:
+ description: |-
+ selector is the string-encoded form of a standard kubernetes label selector for the given metric
+ When set, it is passed as an additional parameter to the metrics server for more specific metrics scoping.
+ When unset, just the metricName will be used to gather metrics.
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list
+ of label selector requirements. The
+ requirements are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key is the label
+ key that the selector applies
+ to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ required:
+ - name
+ type: object
+ target:
+ description: target specifies the target value
+ for the given metric
+ properties:
+ averageUtilization:
+ description: |-
+ averageUtilization is the target value of the average of the
+ resource metric across all relevant pods, represented as a percentage of
+ the requested value of the resource for the pods.
+ Currently only valid for Resource metric source type
+ format: int32
+ type: integer
+ averageValue:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ averageValue is the target value of the average of the
+ metric across all relevant pods (as a quantity)
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type:
+ description: type represents whether the
+ metric type is Utilization, Value, or
+ AverageValue
+ type: string
+ value:
+ anyOf:
+ - type: integer
+ - type: string
+ description: value is the target value of
+ the metric (as a quantity).
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ required:
+ - type
+ type: object
+ required:
+ - metric
+ - target
+ type: object
+ object:
+ description: |-
+ object refers to a metric describing a single kubernetes object
+ (for example, hits-per-second on an Ingress object).
+ properties:
+ describedObject:
+ description: describedObject specifies the descriptions
+ of a object,such as kind,name apiVersion
+ properties:
+ apiVersion:
+ description: apiVersion is the API version
+ of the referent
+ type: string
+ kind:
+ description: 'kind is the kind of the referent;
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
+ type: string
+ name:
+ description: 'name is the name of the referent;
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
+ type: string
+ required:
+ - kind
+ - name
+ type: object
+ metric:
+ description: metric identifies the target metric
+ by name and selector
+ properties:
+ name:
+ description: name is the name of the given
+ metric
+ type: string
+ selector:
+ description: |-
+ selector is the string-encoded form of a standard kubernetes label selector for the given metric
+ When set, it is passed as an additional parameter to the metrics server for more specific metrics scoping.
+ When unset, just the metricName will be used to gather metrics.
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list
+ of label selector requirements. The
+ requirements are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key is the label
+ key that the selector applies
+ to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ required:
+ - name
+ type: object
+ target:
+ description: target specifies the target value
+ for the given metric
+ properties:
+ averageUtilization:
+ description: |-
+ averageUtilization is the target value of the average of the
+ resource metric across all relevant pods, represented as a percentage of
+ the requested value of the resource for the pods.
+ Currently only valid for Resource metric source type
+ format: int32
+ type: integer
+ averageValue:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ averageValue is the target value of the average of the
+ metric across all relevant pods (as a quantity)
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type:
+ description: type represents whether the
+ metric type is Utilization, Value, or
+ AverageValue
+ type: string
+ value:
+ anyOf:
+ - type: integer
+ - type: string
+ description: value is the target value of
+ the metric (as a quantity).
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ required:
+ - type
+ type: object
+ required:
+ - describedObject
+ - metric
+ - target
+ type: object
+ pods:
+ description: |-
+ pods refers to a metric describing each pod in the current scale target
+ (for example, transactions-processed-per-second). The values will be
+ averaged together before being compared to the target value.
+ properties:
+ metric:
+ description: metric identifies the target metric
+ by name and selector
+ properties:
+ name:
+ description: name is the name of the given
+ metric
+ type: string
+ selector:
+ description: |-
+ selector is the string-encoded form of a standard kubernetes label selector for the given metric
+ When set, it is passed as an additional parameter to the metrics server for more specific metrics scoping.
+ When unset, just the metricName will be used to gather metrics.
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list
+ of label selector requirements. The
+ requirements are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key is the label
+ key that the selector applies
+ to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ required:
+ - name
+ type: object
+ target:
+ description: target specifies the target value
+ for the given metric
+ properties:
+ averageUtilization:
+ description: |-
+ averageUtilization is the target value of the average of the
+ resource metric across all relevant pods, represented as a percentage of
+ the requested value of the resource for the pods.
+ Currently only valid for Resource metric source type
+ format: int32
+ type: integer
+ averageValue:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ averageValue is the target value of the average of the
+ metric across all relevant pods (as a quantity)
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type:
+ description: type represents whether the
+ metric type is Utilization, Value, or
+ AverageValue
+ type: string
+ value:
+ anyOf:
+ - type: integer
+ - type: string
+ description: value is the target value of
+ the metric (as a quantity).
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ required:
+ - type
+ type: object
+ required:
+ - metric
+ - target
+ type: object
+ resource:
+ description: |-
+ resource refers to a resource metric (such as those specified in
+ requests and limits) known to Kubernetes describing each pod in the
+ current scale target (e.g. CPU or memory). Such metrics are built in to
+ Kubernetes, and have special scaling options on top of those available
+ to normal per-pod metrics using the "pods" source.
+ properties:
+ name:
+ description: name is the name of the resource
+ in question.
+ type: string
+ target:
+ description: target specifies the target value
+ for the given metric
+ properties:
+ averageUtilization:
+ description: |-
+ averageUtilization is the target value of the average of the
+ resource metric across all relevant pods, represented as a percentage of
+ the requested value of the resource for the pods.
+ Currently only valid for Resource metric source type
+ format: int32
+ type: integer
+ averageValue:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ averageValue is the target value of the average of the
+ metric across all relevant pods (as a quantity)
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type:
+ description: type represents whether the
+ metric type is Utilization, Value, or
+ AverageValue
+ type: string
+ value:
+ anyOf:
+ - type: integer
+ - type: string
+ description: value is the target value of
+ the metric (as a quantity).
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ required:
+ - type
+ type: object
+ required:
+ - name
+ - target
+ type: object
+ type:
+ description: |-
+ type is the type of metric source. It should be one of "ContainerResource", "External",
+ "Object", "Pods" or "Resource", each mapping to a matching field in the object.
+ Note: "ContainerResource" type is available on when the feature-gate
+ HPAContainerMetrics is enabled
+ type: string
+ required:
+ - type
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ minNodes:
+ description: Lower limit for the number of nodes to which
+ training job can scale down.
+ format: int32
+ type: integer
+ type: object
+ numProcPerNode:
+ description: |-
+ Number of processes per node.
+ This value is inserted into the `--nproc-per-node` argument of the `torchrun` CLI.
+ Supported values: `auto`, `cpu`, `gpu`, or int value.
+ Defaults to `auto`.
+ type: string
+ type: object
+ type: object
+ podGroupPolicy:
+ description: Configuration for the PodGroup to enable gang-scheduling
+ via supported plugins.
+ properties:
+ coscheduling:
+ description: Coscheduling plugin from the Kubernetes scheduler-plugins
+ for gang-scheduling.
+ properties:
+ scheduleTimeoutSeconds:
+ description: |-
+ Time threshold to schedule PodGroup for gang-scheduling.
+ If the scheduling timeout is equal to 0, the default value is used.
+ Defaults to 60 seconds.
+ format: int32
+ type: integer
+ type: object
+ type: object
+ template:
+ description: JobSet template which will be used by TrainJob.
+ properties:
+ metadata:
+ description: |-
+ Metadata for custom JobSet's labels and annotations.
+ JobSet name and namespace is equal to the TrainJob's name and namespace.
+ properties:
+ annotations:
+ additionalProperties:
+ type: string
+ type: object
+ finalizers:
+ items:
+ type: string
+ type: array
+ labels:
+ additionalProperties:
+ type: string
+ type: object
+ name:
+ type: string
+ namespace:
+ type: string
+ type: object
+ spec:
+ description: Specification of the desired JobSet which will be
+ created from TrainJob.
+ properties:
+ failurePolicy:
+ description: |-
+ FailurePolicy, if set, configures when to declare the JobSet as
+ failed.
+ The JobSet is always declared failed if any job in the set
+ finished with status failed.
+ properties:
+ maxRestarts:
+ description: |-
+ MaxRestarts defines the limit on the number of JobSet restarts.
+ A restart is achieved by recreating all active child jobs.
+ format: int32
+ type: integer
+ type: object
+ x-kubernetes-validations:
+ - message: Value is immutable
+ rule: self == oldSelf
+ managedBy:
+ description: ManagedBy is used to indicate the controller
+ or entity that manages a JobSet
+ type: string
+ network:
+ description: Network defines the networking options for the
+ jobset.
+ properties:
+ enableDNSHostnames:
+ description: |-
+ EnableDNSHostnames allows pods to be reached via their hostnames.
+ Pods will be reachable using the fully qualified pod hostname:
+ ---.
+ type: boolean
+ subdomain:
+ description: |-
+ Subdomain is an explicit choice for a network subdomain name
+ When set, any replicated job in the set is added to this network.
+ Defaults to if not set.
+ type: string
+ type: object
+ x-kubernetes-validations:
+ - message: Value is immutable
+ rule: self == oldSelf
+ replicatedJobs:
+ description: ReplicatedJobs is the group of jobs that will
+ form the set.
+ items:
+ properties:
+ name:
+ description: |-
+ Name is the name of the entry and will be used as a suffix
+ for the Job name.
+ type: string
+ replicas:
+ default: 1
+ description: |-
+ Replicas is the number of jobs that will be created from this ReplicatedJob's template.
+ Jobs names will be in the format: --
+ format: int32
+ type: integer
+ template:
+ description: Template defines the template of the Job
+ that will be created.
+ properties:
+ metadata:
+ description: |-
+ Standard object's metadata of the jobs created from this template.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
+ properties:
+ annotations:
+ additionalProperties:
+ type: string
+ type: object
+ finalizers:
+ items:
+ type: string
+ type: array
+ labels:
+ additionalProperties:
+ type: string
+ type: object
+ name:
+ type: string
+ namespace:
+ type: string
+ type: object
+ spec:
+ description: |-
+ Specification of the desired behavior of the job.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
+ properties:
+ activeDeadlineSeconds:
+ description: |-
+ Specifies the duration in seconds relative to the startTime that the job
+ may be continuously active before the system tries to terminate it; value
+ must be positive integer. If a Job is suspended (at creation or through an
+ update), this timer will effectively be stopped and reset when the Job is
+ resumed again.
+ format: int64
+ type: integer
+ backoffLimit:
+ description: |-
+ Specifies the number of retries before marking this job failed.
+ Defaults to 6
+ format: int32
+ type: integer
+ backoffLimitPerIndex:
+ description: |-
+ Specifies the limit for the number of retries within an
+ index before marking this index as failed. When enabled the number of
+ failures per index is kept in the pod's
+ batch.kubernetes.io/job-index-failure-count annotation. It can only
+ be set when Job's completionMode=Indexed, and the Pod's restart
+ policy is Never. The field is immutable.
+ This field is beta-level. It can be used when the `JobBackoffLimitPerIndex`
+ feature gate is enabled (enabled by default).
+ format: int32
+ type: integer
+ completionMode:
+ description: |-
+ completionMode specifies how Pod completions are tracked. It can be
+ `NonIndexed` (default) or `Indexed`.
+
+ `NonIndexed` means that the Job is considered complete when there have
+ been .spec.completions successfully completed Pods. Each Pod completion is
+ homologous to each other.
+
+ `Indexed` means that the Pods of a
+ Job get an associated completion index from 0 to (.spec.completions - 1),
+ available in the annotation batch.kubernetes.io/job-completion-index.
+ The Job is considered complete when there is one successfully completed Pod
+ for each index.
+ When value is `Indexed`, .spec.completions must be specified and
+ `.spec.parallelism` must be less than or equal to 10^5.
+ In addition, The Pod name takes the form
+ `$(job-name)-$(index)-$(random-string)`,
+ the Pod hostname takes the form `$(job-name)-$(index)`.
+
+ More completion modes can be added in the future.
+ If the Job controller observes a mode that it doesn't recognize, which
+ is possible during upgrades due to version skew, the controller
+ skips updates for the Job.
+ type: string
+ completions:
+ description: |-
+ Specifies the desired number of successfully finished pods the
+ job should be run with. Setting to null means that the success of any
+ pod signals the success of all pods, and allows parallelism to have any positive
+ value. Setting to 1 means that parallelism is limited to 1 and the success of that
+ pod signals the success of the job.
+ More info: https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/
+ format: int32
+ type: integer
+ managedBy:
+ description: |-
+ ManagedBy field indicates the controller that manages a Job. The k8s Job
+ controller reconciles jobs which don't have this field at all or the field
+ value is the reserved string `kubernetes.io/job-controller`, but skips
+ reconciling Jobs with a custom value for this field.
+ The value must be a valid domain-prefixed path (e.g. acme.io/foo) -
+ all characters before the first "/" must be a valid subdomain as defined
+ by RFC 1123. All characters trailing the first "/" must be valid HTTP Path
+ characters as defined by RFC 3986. The value cannot exceed 63 characters.
+ This field is immutable.
+
+ This field is alpha-level. The job controller accepts setting the field
+ when the feature gate JobManagedBy is enabled (disabled by default).
+ type: string
+ manualSelector:
+ description: |-
+ manualSelector controls generation of pod labels and pod selectors.
+ Leave `manualSelector` unset unless you are certain what you are doing.
+ When false or unset, the system pick labels unique to this job
+ and appends those labels to the pod template. When true,
+ the user is responsible for picking unique labels and specifying
+ the selector. Failure to pick a unique label may cause this
+ and other jobs to not function correctly. However, You may see
+ `manualSelector=true` in jobs that were created with the old `extensions/v1beta1`
+ API.
+ More info: https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/#specifying-your-own-pod-selector
+ type: boolean
+ maxFailedIndexes:
+ description: |-
+ Specifies the maximal number of failed indexes before marking the Job as
+ failed, when backoffLimitPerIndex is set. Once the number of failed
+ indexes exceeds this number the entire Job is marked as Failed and its
+ execution is terminated. When left as null the job continues execution of
+ all of its indexes and is marked with the `Complete` Job condition.
+ It can only be specified when backoffLimitPerIndex is set.
+ It can be null or up to completions. It is required and must be
+ less than or equal to 10^4 when is completions greater than 10^5.
+ This field is beta-level. It can be used when the `JobBackoffLimitPerIndex`
+ feature gate is enabled (enabled by default).
+ format: int32
+ type: integer
+ parallelism:
+ description: |-
+ Specifies the maximum desired number of pods the job should
+ run at any given time. The actual number of pods running in steady state will
+ be less than this number when ((.spec.completions - .status.successful) < .spec.parallelism),
+ i.e. when the work left to do is less than max parallelism.
+ More info: https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/
+ format: int32
+ type: integer
+ podFailurePolicy:
+ description: |-
+ Specifies the policy of handling failed pods. In particular, it allows to
+ specify the set of actions and conditions which need to be
+ satisfied to take the associated action.
+ If empty, the default behaviour applies - the counter of failed pods,
+ represented by the jobs's .status.failed field, is incremented and it is
+ checked against the backoffLimit. This field cannot be used in combination
+ with restartPolicy=OnFailure.
+ properties:
+ rules:
+ description: |-
+ A list of pod failure policy rules. The rules are evaluated in order.
+ Once a rule matches a Pod failure, the remaining of the rules are ignored.
+ When no rule matches the Pod failure, the default handling applies - the
+ counter of pod failures is incremented and it is checked against
+ the backoffLimit. At most 20 elements are allowed.
+ items:
+ description: |-
+ PodFailurePolicyRule describes how a pod failure is handled when the requirements are met.
+ One of onExitCodes and onPodConditions, but not both, can be used in each rule.
+ properties:
+ action:
+ description: |-
+ Specifies the action taken on a pod failure when the requirements are satisfied.
+ Possible values are:
+
+ - FailJob: indicates that the pod's job is marked as Failed and all
+ running pods are terminated.
+ - FailIndex: indicates that the pod's index is marked as Failed and will
+ not be restarted.
+ This value is beta-level. It can be used when the
+ `JobBackoffLimitPerIndex` feature gate is enabled (enabled by default).
+ - Ignore: indicates that the counter towards the .backoffLimit is not
+ incremented and a replacement pod is created.
+ - Count: indicates that the pod is handled in the default way - the
+ counter towards the .backoffLimit is incremented.
+ Additional values are considered to be added in the future. Clients should
+ react to an unknown action by skipping the rule.
+ type: string
+ onExitCodes:
+ description: Represents the requirement
+ on the container exit codes.
+ properties:
+ containerName:
+ description: |-
+ Restricts the check for exit codes to the container with the
+ specified name. When null, the rule applies to all containers.
+ When specified, it should match one the container or initContainer
+ names in the pod template.
+ type: string
+ operator:
+ description: |-
+ Represents the relationship between the container exit code(s) and the
+ specified values. Containers completed with success (exit code 0) are
+ excluded from the requirement check. Possible values are:
+
+ - In: the requirement is satisfied if at least one container exit code
+ (might be multiple if there are multiple containers not restricted
+ by the 'containerName' field) is in the set of specified values.
+ - NotIn: the requirement is satisfied if at least one container exit code
+ (might be multiple if there are multiple containers not restricted
+ by the 'containerName' field) is not in the set of specified values.
+ Additional values are considered to be added in the future. Clients should
+ react to an unknown operator by assuming the requirement is not satisfied.
+ type: string
+ values:
+ description: |-
+ Specifies the set of values. Each returned container exit code (might be
+ multiple in case of multiple containers) is checked against this set of
+ values with respect to the operator. The list of values must be ordered
+ and must not contain duplicates. Value '0' cannot be used for the In operator.
+ At least one element is required. At most 255 elements are allowed.
+ items:
+ format: int32
+ type: integer
+ type: array
+ x-kubernetes-list-type: set
+ required:
+ - operator
+ - values
+ type: object
+ onPodConditions:
+ description: |-
+ Represents the requirement on the pod conditions. The requirement is represented
+ as a list of pod condition patterns. The requirement is satisfied if at
+ least one pattern matches an actual pod condition. At most 20 elements are allowed.
+ items:
+ description: |-
+ PodFailurePolicyOnPodConditionsPattern describes a pattern for matching
+ an actual pod condition type.
+ properties:
+ status:
+ description: |-
+ Specifies the required Pod condition status. To match a pod condition
+ it is required that the specified status equals the pod condition status.
+ Defaults to True.
+ type: string
+ type:
+ description: |-
+ Specifies the required Pod condition type. To match a pod condition
+ it is required that specified type equals the pod condition type.
+ type: string
+ required:
+ - status
+ - type
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - action
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - rules
+ type: object
+ podReplacementPolicy:
+ description: |-
+ podReplacementPolicy specifies when to create replacement Pods.
+ Possible values are:
+ - TerminatingOrFailed means that we recreate pods
+ when they are terminating (has a metadata.deletionTimestamp) or failed.
+ - Failed means to wait until a previously created Pod is fully terminated (has phase
+ Failed or Succeeded) before creating a replacement Pod.
+
+ When using podFailurePolicy, Failed is the the only allowed value.
+ TerminatingOrFailed and Failed are allowed values when podFailurePolicy is not in use.
+ This is an beta field. To use this, enable the JobPodReplacementPolicy feature toggle.
+ This is on by default.
+ type: string
+ selector:
+ description: |-
+ A label query over pods that should match the pod count.
+ Normally, the system sets this field for you.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list
+ of label selector requirements. The requirements
+ are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key is the label key
+ that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ successPolicy:
+ description: |-
+ successPolicy specifies the policy when the Job can be declared as succeeded.
+ If empty, the default behavior applies - the Job is declared as succeeded
+ only when the number of succeeded pods equals to the completions.
+ When the field is specified, it must be immutable and works only for the Indexed Jobs.
+ Once the Job meets the SuccessPolicy, the lingering pods are terminated.
+
+ This field is beta-level. To use this field, you must enable the
+ `JobSuccessPolicy` feature gate (enabled by default).
+ properties:
+ rules:
+ description: |-
+ rules represents the list of alternative rules for the declaring the Jobs
+ as successful before `.status.succeeded >= .spec.completions`. Once any of the rules are met,
+ the "SucceededCriteriaMet" condition is added, and the lingering pods are removed.
+ The terminal state for such a Job has the "Complete" condition.
+ Additionally, these rules are evaluated in order; Once the Job meets one of the rules,
+ other rules are ignored. At most 20 elements are allowed.
+ items:
+ description: |-
+ SuccessPolicyRule describes rule for declaring a Job as succeeded.
+ Each rule must have at least one of the "succeededIndexes" or "succeededCount" specified.
+ properties:
+ succeededCount:
+ description: |-
+ succeededCount specifies the minimal required size of the actual set of the succeeded indexes
+ for the Job. When succeededCount is used along with succeededIndexes, the check is
+ constrained only to the set of indexes specified by succeededIndexes.
+ For example, given that succeededIndexes is "1-4", succeededCount is "3",
+ and completed indexes are "1", "3", and "5", the Job isn't declared as succeeded
+ because only "1" and "3" indexes are considered in that rules.
+ When this field is null, this doesn't default to any value and
+ is never evaluated at any time.
+ When specified it needs to be a positive integer.
+ format: int32
+ type: integer
+ succeededIndexes:
+ description: |-
+ succeededIndexes specifies the set of indexes
+ which need to be contained in the actual set of the succeeded indexes for the Job.
+ The list of indexes must be within 0 to ".spec.completions-1" and
+ must not contain duplicates. At least one element is required.
+ The indexes are represented as intervals separated by commas.
+ The intervals can be a decimal integer or a pair of decimal integers separated by a hyphen.
+ The number are listed in represented by the first and last element of the series,
+ separated by a hyphen.
+ For example, if the completed indexes are 1, 3, 4, 5 and 7, they are
+ represented as "1,3-5,7".
+ When this field is null, this field doesn't default to any value
+ and is never evaluated at any time.
+ type: string
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - rules
+ type: object
+ suspend:
+ description: |-
+ suspend specifies whether the Job controller should create Pods or not. If
+ a Job is created with suspend set to true, no Pods are created by the Job
+ controller. If a Job is suspended after creation (i.e. the flag goes from
+ false to true), the Job controller will delete all active Pods associated
+ with this Job. Users must design their workload to gracefully handle this.
+ Suspending a Job will reset the StartTime field of the Job, effectively
+ resetting the ActiveDeadlineSeconds timer too. Defaults to false.
+ type: boolean
+ template:
+ description: |-
+ Describes the pod that will be created when executing a job.
+ The only allowed template.spec.restartPolicy values are "Never" or "OnFailure".
+ More info: https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/
+ properties:
+ metadata:
+ description: |-
+ Standard object's metadata.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
+ properties:
+ annotations:
+ additionalProperties:
+ type: string
+ type: object
+ finalizers:
+ items:
+ type: string
+ type: array
+ labels:
+ additionalProperties:
+ type: string
+ type: object
+ name:
+ type: string
+ namespace:
+ type: string
+ type: object
+ spec:
+ description: |-
+ Specification of the desired behavior of the pod.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
+ properties:
+ activeDeadlineSeconds:
+ description: |-
+ Optional duration in seconds the pod may be active on the node relative to
+ StartTime before the system will actively try to mark it failed and kill associated containers.
+ Value must be a positive integer.
+ format: int64
+ type: integer
+ affinity:
+ description: If specified, the pod's
+ scheduling constraints
+ properties:
+ nodeAffinity:
+ description: Describes node affinity
+ scheduling rules for the pod.
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node matches the corresponding matchExpressions; the
+ node(s) with the highest sum are the most preferred.
+ items:
+ description: |-
+ An empty preferred scheduling term matches all objects with implicit weight 0
+ (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op).
+ properties:
+ preference:
+ description: A node selector
+ term, associated with
+ the corresponding weight.
+ properties:
+ matchExpressions:
+ description: A list
+ of node selector
+ requirements by
+ node's labels.
+ items:
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
+ properties:
+ key:
+ description: The
+ label key
+ that the selector
+ applies to.
+ type: string
+ operator:
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
+ type: string
+ values:
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchFields:
+ description: A list
+ of node selector
+ requirements by
+ node's fields.
+ items:
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
+ properties:
+ key:
+ description: The
+ label key
+ that the selector
+ applies to.
+ type: string
+ operator:
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
+ type: string
+ values:
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ x-kubernetes-map-type: atomic
+ weight:
+ description: Weight associated
+ with matching the corresponding
+ nodeSelectorTerm, in
+ the range 1-100.
+ format: int32
+ type: integer
+ required:
+ - preference
+ - weight
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ If the affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to an update), the system
+ may or may not try to eventually evict the pod from its node.
+ properties:
+ nodeSelectorTerms:
+ description: Required. A
+ list of node selector
+ terms. The terms are ORed.
+ items:
+ description: |-
+ A null or empty node selector term matches no objects. The requirements of
+ them are ANDed.
+ The TopologySelectorTerm type implements a subset of the NodeSelectorTerm.
+ properties:
+ matchExpressions:
+ description: A list
+ of node selector
+ requirements by
+ node's labels.
+ items:
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
+ properties:
+ key:
+ description: The
+ label key
+ that the selector
+ applies to.
+ type: string
+ operator:
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
+ type: string
+ values:
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchFields:
+ description: A list
+ of node selector
+ requirements by
+ node's fields.
+ items:
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
+ properties:
+ key:
+ description: The
+ label key
+ that the selector
+ applies to.
+ type: string
+ operator:
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
+ type: string
+ values:
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ x-kubernetes-map-type: atomic
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - nodeSelectorTerms
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ podAffinity:
+ description: Describes pod affinity
+ scheduling rules (e.g. co-locate
+ this pod in the same node, zone,
+ etc. as some other pod(s)).
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the
+ node(s) with the highest sum are the most preferred.
+ items:
+ description: The weights of
+ all of the matched WeightedPodAffinityTerm
+ fields are added per-node
+ to find the most preferred
+ node(s)
+ properties:
+ podAffinityTerm:
+ description: Required.
+ A pod affinity term,
+ associated with the
+ corresponding weight.
+ properties:
+ labelSelector:
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
+ properties:
+ matchExpressions:
+ description: matchExpressions
+ is a list of
+ label selector
+ requirements.
+ The requirements
+ are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key
+ is the
+ label
+ key that
+ the selector
+ applies
+ to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both matchLabelKeys and labelSelector.
+ Also, matchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
+ Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
+ properties:
+ matchExpressions:
+ description: matchExpressions
+ is a list of
+ label selector
+ requirements.
+ The requirements
+ are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key
+ is the
+ label
+ key that
+ the selector
+ applies
+ to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ namespaces:
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
+ type: string
+ required:
+ - topologyKey
+ type: object
+ weight:
+ description: |-
+ weight associated with matching the corresponding podAffinityTerm,
+ in the range 1-100.
+ format: int32
+ type: integer
+ required:
+ - podAffinityTerm
+ - weight
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ If the affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to a pod label update), the
+ system may or may not try to eventually evict the pod from its node.
+ When there are multiple elements, the lists of nodes corresponding to each
+ podAffinityTerm are intersected, i.e. all terms must be satisfied.
+ items:
+ description: |-
+ Defines a set of pods (namely those matching the labelSelector
+ relative to the given namespace(s)) that this pod should be
+ co-located (affinity) or not co-located (anti-affinity) with,
+ where co-located is defined as running on a node whose value of
+ the label with key matches that of any node on which
+ a pod of the set of pods is running
+ properties:
+ labelSelector:
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
+ properties:
+ matchExpressions:
+ description: matchExpressions
+ is a list of label
+ selector requirements.
+ The requirements
+ are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key
+ is the label
+ key that the
+ selector applies
+ to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both matchLabelKeys and labelSelector.
+ Also, matchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
+ Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
+ properties:
+ matchExpressions:
+ description: matchExpressions
+ is a list of label
+ selector requirements.
+ The requirements
+ are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key
+ is the label
+ key that the
+ selector applies
+ to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ namespaces:
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
+ type: string
+ required:
+ - topologyKey
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ podAntiAffinity:
+ description: Describes pod anti-affinity
+ scheduling rules (e.g. avoid putting
+ this pod in the same node, zone,
+ etc. as some other pod(s)).
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the anti-affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling anti-affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the
+ node(s) with the highest sum are the most preferred.
+ items:
+ description: The weights of
+ all of the matched WeightedPodAffinityTerm
+ fields are added per-node
+ to find the most preferred
+ node(s)
+ properties:
+ podAffinityTerm:
+ description: Required.
+ A pod affinity term,
+ associated with the
+ corresponding weight.
+ properties:
+ labelSelector:
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
+ properties:
+ matchExpressions:
+ description: matchExpressions
+ is a list of
+ label selector
+ requirements.
+ The requirements
+ are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key
+ is the
+ label
+ key that
+ the selector
+ applies
+ to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both matchLabelKeys and labelSelector.
+ Also, matchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
+ Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
+ properties:
+ matchExpressions:
+ description: matchExpressions
+ is a list of
+ label selector
+ requirements.
+ The requirements
+ are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key
+ is the
+ label
+ key that
+ the selector
+ applies
+ to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ namespaces:
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
+ type: string
+ required:
+ - topologyKey
+ type: object
+ weight:
+ description: |-
+ weight associated with matching the corresponding podAffinityTerm,
+ in the range 1-100.
+ format: int32
+ type: integer
+ required:
+ - podAffinityTerm
+ - weight
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ If the anti-affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the anti-affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to a pod label update), the
+ system may or may not try to eventually evict the pod from its node.
+ When there are multiple elements, the lists of nodes corresponding to each
+ podAffinityTerm are intersected, i.e. all terms must be satisfied.
+ items:
+ description: |-
+ Defines a set of pods (namely those matching the labelSelector
+ relative to the given namespace(s)) that this pod should be
+ co-located (affinity) or not co-located (anti-affinity) with,
+ where co-located is defined as running on a node whose value of
+ the label with key matches that of any node on which
+ a pod of the set of pods is running
+ properties:
+ labelSelector:
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
+ properties:
+ matchExpressions:
+ description: matchExpressions
+ is a list of label
+ selector requirements.
+ The requirements
+ are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key
+ is the label
+ key that the
+ selector applies
+ to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both matchLabelKeys and labelSelector.
+ Also, matchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
+ Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
+ properties:
+ matchExpressions:
+ description: matchExpressions
+ is a list of label
+ selector requirements.
+ The requirements
+ are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key
+ is the label
+ key that the
+ selector applies
+ to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ namespaces:
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
+ type: string
+ required:
+ - topologyKey
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ type: object
+ automountServiceAccountToken:
+ description: AutomountServiceAccountToken
+ indicates whether a service account
+ token should be automatically mounted.
+ type: boolean
+ containers:
+ description: |-
+ List of containers belonging to the pod.
+ Containers cannot currently be added or removed.
+ There must be at least one container in a Pod.
+ Cannot be updated.
+ items:
+ description: A single application
+ container that you want to run within
+ a pod.
+ properties:
+ args:
+ description: |-
+ Arguments to the entrypoint.
+ The container image's CMD is used if this is not provided.
+ Variable references $(VAR_NAME) are expanded using the container's environment. If a variable
+ cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will
+ produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless
+ of whether the variable exists or not. Cannot be updated.
+ More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ command:
+ description: |-
+ Entrypoint array. Not executed within a shell.
+ The container image's ENTRYPOINT is used if this is not provided.
+ Variable references $(VAR_NAME) are expanded using the container's environment. If a variable
+ cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will
+ produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless
+ of whether the variable exists or not. Cannot be updated.
+ More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ env:
+ description: |-
+ List of environment variables to set in the container.
+ Cannot be updated.
+ items:
+ description: EnvVar represents
+ an environment variable present
+ in a Container.
+ properties:
+ name:
+ description: Name of the
+ environment variable.
+ Must be a C_IDENTIFIER.
+ type: string
+ value:
+ description: |-
+ Variable references $(VAR_NAME) are expanded
+ using the previously defined environment variables in the container and
+ any service environment variables. If a variable cannot be resolved,
+ the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e.
+ "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)".
+ Escaped references will never be expanded, regardless of whether the variable
+ exists or not.
+ Defaults to "".
+ type: string
+ valueFrom:
+ description: Source for
+ the environment variable's
+ value. Cannot be used
+ if value is not empty.
+ properties:
+ configMapKeyRef:
+ description: Selects
+ a key of a ConfigMap.
+ properties:
+ key:
+ description: The
+ key to select.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify
+ whether the ConfigMap
+ or its key must
+ be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ fieldRef:
+ description: |-
+ Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`,
+ spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.
+ properties:
+ apiVersion:
+ description: Version
+ of the schema
+ the FieldPath
+ is written in
+ terms of, defaults
+ to "v1".
+ type: string
+ fieldPath:
+ description: Path
+ of the field to
+ select in the
+ specified API
+ version.
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ resourceFieldRef:
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported.
+ properties:
+ containerName:
+ description: 'Container
+ name: required
+ for volumes, optional
+ for env vars'
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ description: Specifies
+ the output format
+ of the exposed
+ resources, defaults
+ to "1"
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ description: 'Required:
+ resource to select'
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ secretKeyRef:
+ description: Selects
+ a key of a secret
+ in the pod's namespace
+ properties:
+ key:
+ description: The
+ key of the secret
+ to select from. Must
+ be a valid secret
+ key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify
+ whether the Secret
+ or its key must
+ be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ envFrom:
+ description: |-
+ List of sources to populate environment variables in the container.
+ The keys defined within a source must be a C_IDENTIFIER. All invalid keys
+ will be reported as an event when the container is starting. When a key exists in multiple
+ sources, the value associated with the last source will take precedence.
+ Values defined by an Env with a duplicate key will take precedence.
+ Cannot be updated.
+ items:
+ description: EnvFromSource represents
+ the source of a set of ConfigMaps
+ properties:
+ configMapRef:
+ description: The ConfigMap
+ to select from
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify
+ whether the ConfigMap
+ must be defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ prefix:
+ description: An optional
+ identifier to prepend
+ to each key in the ConfigMap.
+ Must be a C_IDENTIFIER.
+ type: string
+ secretRef:
+ description: The Secret
+ to select from
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify
+ whether the Secret
+ must be defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ image:
+ description: |-
+ Container image name.
+ More info: https://kubernetes.io/docs/concepts/containers/images
+ This field is optional to allow higher level config management to default or override
+ container images in workload controllers like Deployments and StatefulSets.
+ type: string
+ imagePullPolicy:
+ description: |-
+ Image pull policy.
+ One of Always, Never, IfNotPresent.
+ Defaults to Always if :latest tag is specified, or IfNotPresent otherwise.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/containers/images#updating-images
+ type: string
+ lifecycle:
+ description: |-
+ Actions that the management system should take in response to container lifecycle events.
+ Cannot be updated.
+ properties:
+ postStart:
+ description: |-
+ PostStart is called immediately after a container is created. If the handler fails,
+ the container is terminated and restarted according to its restart policy.
+ Other management of the container blocks until the hook completes.
+ More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
+ properties:
+ exec:
+ description: Exec specifies
+ the action to take.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ description: HTTPGet specifies
+ the http request to
+ perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom
+ headers to set in
+ the request. HTTP
+ allows repeated
+ headers.
+ items:
+ description: HTTPHeader
+ describes a custom
+ header to be used
+ in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The
+ header field
+ value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path
+ to access on the
+ HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ description: Sleep represents
+ the duration that the
+ container should sleep
+ before being terminated.
+ properties:
+ seconds:
+ description: Seconds
+ is the number of
+ seconds to sleep.
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ description: |-
+ Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept
+ for the backward compatibility. There are no validation of this field and
+ lifecycle hooks will fail in runtime when tcp handler is specified.
+ properties:
+ host:
+ description: 'Optional:
+ Host name to connect
+ to, defaults to
+ the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ preStop:
+ description: |-
+ PreStop is called immediately before a container is terminated due to an
+ API request or management event such as liveness/startup probe failure,
+ preemption, resource contention, etc. The handler is not called if the
+ container crashes or exits. The Pod's termination grace period countdown begins before the
+ PreStop hook is executed. Regardless of the outcome of the handler, the
+ container will eventually terminate within the Pod's termination grace
+ period (unless delayed by finalizers). Other management of the container blocks until the hook completes
+ or until the termination grace period is reached.
+ More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
+ properties:
+ exec:
+ description: Exec specifies
+ the action to take.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ description: HTTPGet specifies
+ the http request to
+ perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom
+ headers to set in
+ the request. HTTP
+ allows repeated
+ headers.
+ items:
+ description: HTTPHeader
+ describes a custom
+ header to be used
+ in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The
+ header field
+ value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path
+ to access on the
+ HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ description: Sleep represents
+ the duration that the
+ container should sleep
+ before being terminated.
+ properties:
+ seconds:
+ description: Seconds
+ is the number of
+ seconds to sleep.
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ description: |-
+ Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept
+ for the backward compatibility. There are no validation of this field and
+ lifecycle hooks will fail in runtime when tcp handler is specified.
+ properties:
+ host:
+ description: 'Optional:
+ Host name to connect
+ to, defaults to
+ the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ type: object
+ livenessProbe:
+ description: |-
+ Periodic probe of container liveness.
+ Container will be restarted if the probe fails.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ properties:
+ exec:
+ description: Exec specifies
+ the action to take.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
+ format: int32
+ type: integer
+ grpc:
+ description: GRPC specifies
+ an action involving a GRPC
+ port.
+ properties:
+ port:
+ description: Port number
+ of the gRPC service.
+ Number must be in the
+ range 1 to 65535.
+ format: int32
+ type: integer
+ service:
+ default: ""
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
+ (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
+
+ If this is not specified, the default behavior is defined by gRPC.
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ description: HTTPGet specifies
+ the http request to perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers
+ to set in the request.
+ HTTP allows repeated
+ headers.
+ items:
+ description: HTTPHeader
+ describes a custom
+ header to be used
+ in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The
+ header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access
+ on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ periodSeconds:
+ description: |-
+ How often (in seconds) to perform the probe.
+ Default to 10 seconds. Minimum value is 1.
+ format: int32
+ type: integer
+ successThreshold:
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
+ format: int32
+ type: integer
+ tcpSocket:
+ description: TCPSocket specifies
+ an action involving a TCP
+ port.
+ properties:
+ host:
+ description: 'Optional:
+ Host name to connect
+ to, defaults to the
+ pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
+ format: int64
+ type: integer
+ timeoutSeconds:
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ type: object
+ name:
+ description: |-
+ Name of the container specified as a DNS_LABEL.
+ Each container in a pod must have a unique name (DNS_LABEL).
+ Cannot be updated.
+ type: string
+ ports:
+ description: |-
+ List of ports to expose from the container. Not specifying a port here
+ DOES NOT prevent that port from being exposed. Any port which is
+ listening on the default "0.0.0.0" address inside a container will be
+ accessible from the network.
+ Modifying this array with strategic merge patch may corrupt the data.
+ For more information See https://github.com/kubernetes/kubernetes/issues/108255.
+ Cannot be updated.
+ items:
+ description: ContainerPort represents
+ a network port in a single
+ container.
+ properties:
+ containerPort:
+ description: |-
+ Number of port to expose on the pod's IP address.
+ This must be a valid port number, 0 < x < 65536.
+ format: int32
+ type: integer
+ hostIP:
+ description: What host IP
+ to bind the external port
+ to.
+ type: string
+ hostPort:
+ description: |-
+ Number of port to expose on the host.
+ If specified, this must be a valid port number, 0 < x < 65536.
+ If HostNetwork is specified, this must match ContainerPort.
+ Most containers do not need this.
+ format: int32
+ type: integer
+ name:
+ description: |-
+ If specified, this must be an IANA_SVC_NAME and unique within the pod. Each
+ named port in a pod must have a unique name. Name for the port that can be
+ referred to by services.
+ type: string
+ protocol:
+ default: TCP
+ description: |-
+ Protocol for port. Must be UDP, TCP, or SCTP.
+ Defaults to "TCP".
+ type: string
+ required:
+ - containerPort
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - containerPort
+ - protocol
+ x-kubernetes-list-type: map
+ readinessProbe:
+ description: |-
+ Periodic probe of container service readiness.
+ Container will be removed from service endpoints if the probe fails.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ properties:
+ exec:
+ description: Exec specifies
+ the action to take.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
+ format: int32
+ type: integer
+ grpc:
+ description: GRPC specifies
+ an action involving a GRPC
+ port.
+ properties:
+ port:
+ description: Port number
+ of the gRPC service.
+ Number must be in the
+ range 1 to 65535.
+ format: int32
+ type: integer
+ service:
+ default: ""
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
+ (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
+
+ If this is not specified, the default behavior is defined by gRPC.
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ description: HTTPGet specifies
+ the http request to perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers
+ to set in the request.
+ HTTP allows repeated
+ headers.
+ items:
+ description: HTTPHeader
+ describes a custom
+ header to be used
+ in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The
+ header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access
+ on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ periodSeconds:
+ description: |-
+ How often (in seconds) to perform the probe.
+ Default to 10 seconds. Minimum value is 1.
+ format: int32
+ type: integer
+ successThreshold:
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
+ format: int32
+ type: integer
+ tcpSocket:
+ description: TCPSocket specifies
+ an action involving a TCP
+ port.
+ properties:
+ host:
+ description: 'Optional:
+ Host name to connect
+ to, defaults to the
+ pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
+ format: int64
+ type: integer
+ timeoutSeconds:
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ type: object
+ resizePolicy:
+ description: Resources resize
+ policy for the container.
+ items:
+ description: ContainerResizePolicy
+ represents resource resize
+ policy for the container.
+ properties:
+ resourceName:
+ description: |-
+ Name of the resource to which this resource resize policy applies.
+ Supported values: cpu, memory.
+ type: string
+ restartPolicy:
+ description: |-
+ Restart policy to apply when specified resource is resized.
+ If not specified, it defaults to NotRequired.
+ type: string
+ required:
+ - resourceName
+ - restartPolicy
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ resources:
+ description: |-
+ Compute Resources required by this container.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ properties:
+ claims:
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+ This field is immutable. It can only be set for containers.
+ items:
+ description: ResourceClaim
+ references one entry in
+ PodSpec.ResourceClaims.
+ properties:
+ name:
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
+ type: string
+ request:
+ description: |-
+ Request is the name chosen for a request in the referenced claim.
+ If empty, everything from the claim is made available, otherwise
+ only the result of this request.
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ limits:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ type: object
+ requests:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ type: object
+ type: object
+ restartPolicy:
+ description: |-
+ RestartPolicy defines the restart behavior of individual containers in a pod.
+ This field may only be set for init containers, and the only allowed value is "Always".
+ For non-init containers or when this field is not specified,
+ the restart behavior is defined by the Pod's restart policy and the container type.
+ Setting the RestartPolicy as "Always" for the init container will have the following effect:
+ this init container will be continually restarted on
+ exit until all regular containers have terminated. Once all regular
+ containers have completed, all init containers with restartPolicy "Always"
+ will be shut down. This lifecycle differs from normal init containers and
+ is often referred to as a "sidecar" container. Although this init
+ container still starts in the init container sequence, it does not wait
+ for the container to complete before proceeding to the next init
+ container. Instead, the next init container starts immediately after this
+ init container is started, or after any startupProbe has successfully
+ completed.
+ type: string
+ securityContext:
+ description: |-
+ SecurityContext defines the security options the container should be run with.
+ If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext.
+ More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
+ properties:
+ allowPrivilegeEscalation:
+ description: |-
+ AllowPrivilegeEscalation controls whether a process can gain more
+ privileges than its parent process. This bool directly controls if
+ the no_new_privs flag will be set on the container process.
+ AllowPrivilegeEscalation is true always when the container is:
+ 1) run as Privileged
+ 2) has CAP_SYS_ADMIN
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ appArmorProfile:
+ description: |-
+ appArmorProfile is the AppArmor options to use by this container. If set, this profile
+ overrides the pod's appArmorProfile.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile loaded on the node that should be used.
+ The profile must be preconfigured on the node to work.
+ Must match the loaded name of the profile.
+ Must be set if and only if type is "Localhost".
+ type: string
+ type:
+ description: |-
+ type indicates which kind of AppArmor profile will be applied.
+ Valid options are:
+ Localhost - a profile pre-loaded on the node.
+ RuntimeDefault - the container runtime's default profile.
+ Unconfined - no AppArmor enforcement.
+ type: string
+ required:
+ - type
+ type: object
+ capabilities:
+ description: |-
+ The capabilities to add/drop when running containers.
+ Defaults to the default set of capabilities granted by the container runtime.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ add:
+ description: Added capabilities
+ items:
+ description: Capability
+ represent POSIX capabilities
+ type
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ drop:
+ description: Removed capabilities
+ items:
+ description: Capability
+ represent POSIX capabilities
+ type
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ privileged:
+ description: |-
+ Run container in privileged mode.
+ Processes in privileged containers are essentially equivalent to root on the host.
+ Defaults to false.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ procMount:
+ description: |-
+ procMount denotes the type of proc mount to use for the containers.
+ The default value is Default which uses the container runtime defaults for
+ readonly paths and masked paths.
+ This requires the ProcMountType feature flag to be enabled.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: string
+ readOnlyRootFilesystem:
+ description: |-
+ Whether this container has a read-only root filesystem.
+ Default is false.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ runAsGroup:
+ description: |-
+ The GID to run the entrypoint of the container process.
+ Uses runtime default if unset.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ runAsNonRoot:
+ description: |-
+ Indicates that the container must run as a non-root user.
+ If true, the Kubelet will validate the image at runtime to ensure that it
+ does not run as UID 0 (root) and fail to start the container if it does.
+ If unset or false, no such validation will be performed.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: boolean
+ runAsUser:
+ description: |-
+ The UID to run the entrypoint of the container process.
+ Defaults to user specified in image metadata if unspecified.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ seLinuxOptions:
+ description: |-
+ The SELinux context to be applied to the container.
+ If unspecified, the container runtime will allocate a random SELinux context for each
+ container. May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ level:
+ description: Level is
+ SELinux level label
+ that applies to the
+ container.
+ type: string
+ role:
+ description: Role is a
+ SELinux role label that
+ applies to the container.
+ type: string
+ type:
+ description: Type is a
+ SELinux type label that
+ applies to the container.
+ type: string
+ user:
+ description: User is a
+ SELinux user label that
+ applies to the container.
+ type: string
+ type: object
+ seccompProfile:
+ description: |-
+ The seccomp options to use by this container. If seccomp options are
+ provided at both the pod & container level, the container options
+ override the pod options.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile defined in a file on the node should be used.
+ The profile must be preconfigured on the node to work.
+ Must be a descending path, relative to the kubelet's configured seccomp profile location.
+ Must be set if type is "Localhost". Must NOT be set for any other type.
+ type: string
+ type:
+ description: |-
+ type indicates which kind of seccomp profile will be applied.
+ Valid options are:
+
+ Localhost - a profile defined in a file on the node should be used.
+ RuntimeDefault - the container runtime default profile should be used.
+ Unconfined - no profile should be applied.
+ type: string
+ required:
+ - type
+ type: object
+ windowsOptions:
+ description: |-
+ The Windows specific settings applied to all containers.
+ If unspecified, the options from the PodSecurityContext will be used.
+ If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is linux.
+ properties:
+ gmsaCredentialSpec:
+ description: |-
+ GMSACredentialSpec is where the GMSA admission webhook
+ (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the
+ GMSA credential spec named by the GMSACredentialSpecName field.
+ type: string
+ gmsaCredentialSpecName:
+ description: GMSACredentialSpecName
+ is the name of the GMSA
+ credential spec to use.
+ type: string
+ hostProcess:
+ description: |-
+ HostProcess determines if a container should be run as a 'Host Process' container.
+ All of a Pod's containers must have the same effective HostProcess value
+ (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers).
+ In addition, if HostProcess is true then HostNetwork must also be set to true.
+ type: boolean
+ runAsUserName:
+ description: |-
+ The UserName in Windows to run the entrypoint of the container process.
+ Defaults to the user specified in image metadata if unspecified.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: string
+ type: object
+ type: object
+ startupProbe:
+ description: |-
+ 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: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ properties:
+ exec:
+ description: Exec specifies
+ the action to take.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
+ format: int32
+ type: integer
+ grpc:
+ description: GRPC specifies
+ an action involving a GRPC
+ port.
+ properties:
+ port:
+ description: Port number
+ of the gRPC service.
+ Number must be in the
+ range 1 to 65535.
+ format: int32
+ type: integer
+ service:
+ default: ""
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
+ (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
+
+ If this is not specified, the default behavior is defined by gRPC.
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ description: HTTPGet specifies
+ the http request to perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers
+ to set in the request.
+ HTTP allows repeated
+ headers.
+ items:
+ description: HTTPHeader
+ describes a custom
+ header to be used
+ in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The
+ header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access
+ on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ periodSeconds:
+ description: |-
+ How often (in seconds) to perform the probe.
+ Default to 10 seconds. Minimum value is 1.
+ format: int32
+ type: integer
+ successThreshold:
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
+ format: int32
+ type: integer
+ tcpSocket:
+ description: TCPSocket specifies
+ an action involving a TCP
+ port.
+ properties:
+ host:
+ description: 'Optional:
+ Host name to connect
+ to, defaults to the
+ pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
+ format: int64
+ type: integer
+ timeoutSeconds:
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ type: object
+ stdin:
+ description: |-
+ Whether this container should allocate a buffer for stdin in the container runtime. If this
+ is not set, reads from stdin in the container will always result in EOF.
+ Default is false.
+ type: boolean
+ stdinOnce:
+ description: |-
+ Whether the container runtime should close the stdin channel after it has been opened by
+ a single attach. When stdin is true the stdin stream will remain open across multiple attach
+ sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the
+ first client attaches to stdin, and then remains open and accepts data until the client disconnects,
+ at which time stdin is closed and remains closed until the container is restarted. If this
+ flag is false, a container processes that reads from stdin will never receive an EOF.
+ Default is false
+ type: boolean
+ terminationMessagePath:
+ description: |-
+ Optional: Path at which the file to which the container's termination message
+ will be written is mounted into the container's filesystem.
+ Message written is intended to be brief final status, such as an assertion failure message.
+ Will be truncated by the node if greater than 4096 bytes. The total message length across
+ all containers will be limited to 12kb.
+ Defaults to /dev/termination-log.
+ Cannot be updated.
+ type: string
+ terminationMessagePolicy:
+ description: |-
+ Indicate how the termination message should be populated. File will use the contents of
+ terminationMessagePath to populate the container status message on both success and failure.
+ FallbackToLogsOnError will use the last chunk of container log output if the termination
+ message file is empty and the container exited with an error.
+ The log output is limited to 2048 bytes or 80 lines, whichever is smaller.
+ Defaults to File.
+ Cannot be updated.
+ type: string
+ tty:
+ description: |-
+ Whether this container should allocate a TTY for itself, also requires 'stdin' to be true.
+ Default is false.
+ type: boolean
+ volumeDevices:
+ description: volumeDevices is
+ the list of block devices to
+ be used by the container.
+ items:
+ description: volumeDevice describes
+ a mapping of a raw block device
+ within a container.
+ properties:
+ devicePath:
+ description: devicePath
+ is the path inside of
+ the container that the
+ device will be mapped
+ to.
+ type: string
+ name:
+ description: name must match
+ the name of a persistentVolumeClaim
+ in the pod
+ type: string
+ required:
+ - devicePath
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
+ volumeMounts:
+ description: |-
+ Pod volumes to mount into the container's filesystem.
+ Cannot be updated.
+ items:
+ description: VolumeMount describes
+ a mounting of a Volume within
+ a container.
+ properties:
+ mountPath:
+ description: |-
+ Path within the container at which the volume should be mounted. Must
+ not contain ':'.
+ type: string
+ mountPropagation:
+ description: |-
+ mountPropagation determines how mounts are propagated from the host
+ to container and the other way around.
+ When not set, MountPropagationNone is used.
+ This field is beta in 1.10.
+ When RecursiveReadOnly is set to IfPossible or to Enabled, MountPropagation must be None or unspecified
+ (which defaults to None).
+ type: string
+ name:
+ description: This must match
+ the Name of a Volume.
+ type: string
+ readOnly:
+ description: |-
+ Mounted read-only if true, read-write otherwise (false or unspecified).
+ Defaults to false.
+ type: boolean
+ recursiveReadOnly:
+ description: |-
+ RecursiveReadOnly specifies whether read-only mounts should be handled
+ recursively.
+
+ If ReadOnly is false, this field has no meaning and must be unspecified.
+
+ If ReadOnly is true, and this field is set to Disabled, the mount is not made
+ recursively read-only. If this field is set to IfPossible, the mount is made
+ recursively read-only, if it is supported by the container runtime. If this
+ field is set to Enabled, the mount is made recursively read-only if it is
+ supported by the container runtime, otherwise the pod will not be started and
+ an error will be generated to indicate the reason.
+
+ If this field is set to IfPossible or Enabled, MountPropagation must be set to
+ None (or be unspecified, which defaults to None).
+
+ If this field is not specified, it is treated as an equivalent of Disabled.
+ type: string
+ subPath:
+ description: |-
+ Path within the volume from which the container's volume should be mounted.
+ Defaults to "" (volume's root).
+ type: string
+ subPathExpr:
+ description: |-
+ Expanded path within the volume from which the container's volume should be mounted.
+ Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.
+ Defaults to "" (volume's root).
+ SubPathExpr and SubPath are mutually exclusive.
+ type: string
+ required:
+ - mountPath
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
+ workingDir:
+ description: |-
+ Container's working directory.
+ If not specified, the container runtime's default will be used, which
+ might be configured in the container image.
+ Cannot be updated.
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ dnsConfig:
+ description: |-
+ Specifies the DNS parameters of a pod.
+ Parameters specified here will be merged to the generated DNS
+ configuration based on DNSPolicy.
+ properties:
+ nameservers:
+ description: |-
+ A list of DNS name server IP addresses.
+ This will be appended to the base nameservers generated from DNSPolicy.
+ Duplicated nameservers will be removed.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ options:
+ description: |-
+ A list of DNS resolver options.
+ This will be merged with the base options generated from DNSPolicy.
+ Duplicated entries will be removed. Resolution options given in Options
+ will override those that appear in the base DNSPolicy.
+ items:
+ description: PodDNSConfigOption
+ defines DNS resolver options
+ of a pod.
+ properties:
+ name:
+ description: Required.
+ type: string
+ value:
+ type: string
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ searches:
+ description: |-
+ A list of DNS search domains for host-name lookup.
+ This will be appended to the base search paths generated from DNSPolicy.
+ Duplicated search paths will be removed.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ dnsPolicy:
+ description: |-
+ Set DNS policy for the pod.
+ Defaults to "ClusterFirst".
+ Valid values are 'ClusterFirstWithHostNet', 'ClusterFirst', 'Default' or 'None'.
+ DNS parameters given in DNSConfig will be merged with the policy selected with DNSPolicy.
+ To have DNS options set along with hostNetwork, you have to specify DNS policy
+ explicitly to 'ClusterFirstWithHostNet'.
+ type: string
+ enableServiceLinks:
+ description: |-
+ EnableServiceLinks indicates whether information about services should be injected into pod's
+ environment variables, matching the syntax of Docker links.
+ Optional: Defaults to true.
+ type: boolean
+ ephemeralContainers:
+ description: |-
+ List of ephemeral containers run in this pod. Ephemeral containers may be run in an existing
+ pod to perform user-initiated actions such as debugging. This list cannot be specified when
+ creating a pod, and it cannot be modified by updating the pod spec. In order to add an
+ ephemeral container to an existing pod, use the pod's ephemeralcontainers subresource.
+ items:
+ description: |-
+ An EphemeralContainer is a temporary container that you may add to an existing Pod for
+ user-initiated activities such as debugging. Ephemeral containers have no resource or
+ scheduling guarantees, and they will not be restarted when they exit or when a Pod is
+ removed or restarted. The kubelet may evict a Pod if an ephemeral container causes the
+ Pod to exceed its resource allocation.
+
+ To add an ephemeral container, use the ephemeralcontainers subresource of an existing
+ Pod. Ephemeral containers may not be removed or restarted.
+ properties:
+ args:
+ description: |-
+ Arguments to the entrypoint.
+ The image's CMD is used if this is not provided.
+ Variable references $(VAR_NAME) are expanded using the container's environment. If a variable
+ cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will
+ produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless
+ of whether the variable exists or not. Cannot be updated.
+ More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ command:
+ description: |-
+ Entrypoint array. Not executed within a shell.
+ The image's ENTRYPOINT is used if this is not provided.
+ Variable references $(VAR_NAME) are expanded using the container's environment. If a variable
+ cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will
+ produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless
+ of whether the variable exists or not. Cannot be updated.
+ More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ env:
+ description: |-
+ List of environment variables to set in the container.
+ Cannot be updated.
+ items:
+ description: EnvVar represents
+ an environment variable present
+ in a Container.
+ properties:
+ name:
+ description: Name of the
+ environment variable.
+ Must be a C_IDENTIFIER.
+ type: string
+ value:
+ description: |-
+ Variable references $(VAR_NAME) are expanded
+ using the previously defined environment variables in the container and
+ any service environment variables. If a variable cannot be resolved,
+ the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e.
+ "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)".
+ Escaped references will never be expanded, regardless of whether the variable
+ exists or not.
+ Defaults to "".
+ type: string
+ valueFrom:
+ description: Source for
+ the environment variable's
+ value. Cannot be used
+ if value is not empty.
+ properties:
+ configMapKeyRef:
+ description: Selects
+ a key of a ConfigMap.
+ properties:
+ key:
+ description: The
+ key to select.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify
+ whether the ConfigMap
+ or its key must
+ be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ fieldRef:
+ description: |-
+ Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`,
+ spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.
+ properties:
+ apiVersion:
+ description: Version
+ of the schema
+ the FieldPath
+ is written in
+ terms of, defaults
+ to "v1".
+ type: string
+ fieldPath:
+ description: Path
+ of the field to
+ select in the
+ specified API
+ version.
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ resourceFieldRef:
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported.
+ properties:
+ containerName:
+ description: 'Container
+ name: required
+ for volumes, optional
+ for env vars'
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ description: Specifies
+ the output format
+ of the exposed
+ resources, defaults
+ to "1"
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ description: 'Required:
+ resource to select'
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ secretKeyRef:
+ description: Selects
+ a key of a secret
+ in the pod's namespace
+ properties:
+ key:
+ description: The
+ key of the secret
+ to select from. Must
+ be a valid secret
+ key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify
+ whether the Secret
+ or its key must
+ be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ envFrom:
+ description: |-
+ List of sources to populate environment variables in the container.
+ The keys defined within a source must be a C_IDENTIFIER. All invalid keys
+ will be reported as an event when the container is starting. When a key exists in multiple
+ sources, the value associated with the last source will take precedence.
+ Values defined by an Env with a duplicate key will take precedence.
+ Cannot be updated.
+ items:
+ description: EnvFromSource represents
+ the source of a set of ConfigMaps
+ properties:
+ configMapRef:
+ description: The ConfigMap
+ to select from
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify
+ whether the ConfigMap
+ must be defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ prefix:
+ description: An optional
+ identifier to prepend
+ to each key in the ConfigMap.
+ Must be a C_IDENTIFIER.
+ type: string
+ secretRef:
+ description: The Secret
+ to select from
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify
+ whether the Secret
+ must be defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ image:
+ description: |-
+ Container image name.
+ More info: https://kubernetes.io/docs/concepts/containers/images
+ type: string
+ imagePullPolicy:
+ description: |-
+ Image pull policy.
+ One of Always, Never, IfNotPresent.
+ Defaults to Always if :latest tag is specified, or IfNotPresent otherwise.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/containers/images#updating-images
+ type: string
+ lifecycle:
+ description: Lifecycle is not
+ allowed for ephemeral containers.
+ properties:
+ postStart:
+ description: |-
+ PostStart is called immediately after a container is created. If the handler fails,
+ the container is terminated and restarted according to its restart policy.
+ Other management of the container blocks until the hook completes.
+ More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
+ properties:
+ exec:
+ description: Exec specifies
+ the action to take.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ description: HTTPGet specifies
+ the http request to
+ perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom
+ headers to set in
+ the request. HTTP
+ allows repeated
+ headers.
+ items:
+ description: HTTPHeader
+ describes a custom
+ header to be used
+ in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The
+ header field
+ value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path
+ to access on the
+ HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ description: Sleep represents
+ the duration that the
+ container should sleep
+ before being terminated.
+ properties:
+ seconds:
+ description: Seconds
+ is the number of
+ seconds to sleep.
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ description: |-
+ Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept
+ for the backward compatibility. There are no validation of this field and
+ lifecycle hooks will fail in runtime when tcp handler is specified.
+ properties:
+ host:
+ description: 'Optional:
+ Host name to connect
+ to, defaults to
+ the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ preStop:
+ description: |-
+ PreStop is called immediately before a container is terminated due to an
+ API request or management event such as liveness/startup probe failure,
+ preemption, resource contention, etc. The handler is not called if the
+ container crashes or exits. The Pod's termination grace period countdown begins before the
+ PreStop hook is executed. Regardless of the outcome of the handler, the
+ container will eventually terminate within the Pod's termination grace
+ period (unless delayed by finalizers). Other management of the container blocks until the hook completes
+ or until the termination grace period is reached.
+ More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
+ properties:
+ exec:
+ description: Exec specifies
+ the action to take.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ description: HTTPGet specifies
+ the http request to
+ perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom
+ headers to set in
+ the request. HTTP
+ allows repeated
+ headers.
+ items:
+ description: HTTPHeader
+ describes a custom
+ header to be used
+ in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The
+ header field
+ value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path
+ to access on the
+ HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ description: Sleep represents
+ the duration that the
+ container should sleep
+ before being terminated.
+ properties:
+ seconds:
+ description: Seconds
+ is the number of
+ seconds to sleep.
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ description: |-
+ Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept
+ for the backward compatibility. There are no validation of this field and
+ lifecycle hooks will fail in runtime when tcp handler is specified.
+ properties:
+ host:
+ description: 'Optional:
+ Host name to connect
+ to, defaults to
+ the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ type: object
+ livenessProbe:
+ description: Probes are not allowed
+ for ephemeral containers.
+ properties:
+ exec:
+ description: Exec specifies
+ the action to take.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
+ format: int32
+ type: integer
+ grpc:
+ description: GRPC specifies
+ an action involving a GRPC
+ port.
+ properties:
+ port:
+ description: Port number
+ of the gRPC service.
+ Number must be in the
+ range 1 to 65535.
+ format: int32
+ type: integer
+ service:
+ default: ""
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
+ (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
+
+ If this is not specified, the default behavior is defined by gRPC.
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ description: HTTPGet specifies
+ the http request to perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers
+ to set in the request.
+ HTTP allows repeated
+ headers.
+ items:
+ description: HTTPHeader
+ describes a custom
+ header to be used
+ in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The
+ header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access
+ on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ periodSeconds:
+ description: |-
+ How often (in seconds) to perform the probe.
+ Default to 10 seconds. Minimum value is 1.
+ format: int32
+ type: integer
+ successThreshold:
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
+ format: int32
+ type: integer
+ tcpSocket:
+ description: TCPSocket specifies
+ an action involving a TCP
+ port.
+ properties:
+ host:
+ description: 'Optional:
+ Host name to connect
+ to, defaults to the
+ pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
+ format: int64
+ type: integer
+ timeoutSeconds:
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ type: object
+ name:
+ description: |-
+ Name of the ephemeral container specified as a DNS_LABEL.
+ This name must be unique among all containers, init containers and ephemeral containers.
+ type: string
+ ports:
+ description: Ports are not allowed
+ for ephemeral containers.
+ items:
+ description: ContainerPort represents
+ a network port in a single
+ container.
+ properties:
+ containerPort:
+ description: |-
+ Number of port to expose on the pod's IP address.
+ This must be a valid port number, 0 < x < 65536.
+ format: int32
+ type: integer
+ hostIP:
+ description: What host IP
+ to bind the external port
+ to.
+ type: string
+ hostPort:
+ description: |-
+ Number of port to expose on the host.
+ If specified, this must be a valid port number, 0 < x < 65536.
+ If HostNetwork is specified, this must match ContainerPort.
+ Most containers do not need this.
+ format: int32
+ type: integer
+ name:
+ description: |-
+ If specified, this must be an IANA_SVC_NAME and unique within the pod. Each
+ named port in a pod must have a unique name. Name for the port that can be
+ referred to by services.
+ type: string
+ protocol:
+ default: TCP
+ description: |-
+ Protocol for port. Must be UDP, TCP, or SCTP.
+ Defaults to "TCP".
+ type: string
+ required:
+ - containerPort
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - containerPort
+ - protocol
+ x-kubernetes-list-type: map
+ readinessProbe:
+ description: Probes are not allowed
+ for ephemeral containers.
+ properties:
+ exec:
+ description: Exec specifies
+ the action to take.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
+ format: int32
+ type: integer
+ grpc:
+ description: GRPC specifies
+ an action involving a GRPC
+ port.
+ properties:
+ port:
+ description: Port number
+ of the gRPC service.
+ Number must be in the
+ range 1 to 65535.
+ format: int32
+ type: integer
+ service:
+ default: ""
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
+ (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
+
+ If this is not specified, the default behavior is defined by gRPC.
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ description: HTTPGet specifies
+ the http request to perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers
+ to set in the request.
+ HTTP allows repeated
+ headers.
+ items:
+ description: HTTPHeader
+ describes a custom
+ header to be used
+ in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The
+ header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access
+ on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ periodSeconds:
+ description: |-
+ How often (in seconds) to perform the probe.
+ Default to 10 seconds. Minimum value is 1.
+ format: int32
+ type: integer
+ successThreshold:
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
+ format: int32
+ type: integer
+ tcpSocket:
+ description: TCPSocket specifies
+ an action involving a TCP
+ port.
+ properties:
+ host:
+ description: 'Optional:
+ Host name to connect
+ to, defaults to the
+ pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
+ format: int64
+ type: integer
+ timeoutSeconds:
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ type: object
+ resizePolicy:
+ description: Resources resize
+ policy for the container.
+ items:
+ description: ContainerResizePolicy
+ represents resource resize
+ policy for the container.
+ properties:
+ resourceName:
+ description: |-
+ Name of the resource to which this resource resize policy applies.
+ Supported values: cpu, memory.
+ type: string
+ restartPolicy:
+ description: |-
+ Restart policy to apply when specified resource is resized.
+ If not specified, it defaults to NotRequired.
+ type: string
+ required:
+ - resourceName
+ - restartPolicy
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ resources:
+ description: |-
+ Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources
+ already allocated to the pod.
+ properties:
+ claims:
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+ This field is immutable. It can only be set for containers.
+ items:
+ description: ResourceClaim
+ references one entry in
+ PodSpec.ResourceClaims.
+ properties:
+ name:
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
+ type: string
+ request:
+ description: |-
+ Request is the name chosen for a request in the referenced claim.
+ If empty, everything from the claim is made available, otherwise
+ only the result of this request.
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ limits:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ type: object
+ requests:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ type: object
+ type: object
+ restartPolicy:
+ description: |-
+ Restart policy for the container to manage the restart behavior of each
+ container within a pod.
+ This may only be set for init containers. You cannot set this field on
+ ephemeral containers.
+ type: string
+ securityContext:
+ description: |-
+ Optional: SecurityContext defines the security options the ephemeral container should be run with.
+ If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext.
+ properties:
+ allowPrivilegeEscalation:
+ description: |-
+ AllowPrivilegeEscalation controls whether a process can gain more
+ privileges than its parent process. This bool directly controls if
+ the no_new_privs flag will be set on the container process.
+ AllowPrivilegeEscalation is true always when the container is:
+ 1) run as Privileged
+ 2) has CAP_SYS_ADMIN
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ appArmorProfile:
+ description: |-
+ appArmorProfile is the AppArmor options to use by this container. If set, this profile
+ overrides the pod's appArmorProfile.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile loaded on the node that should be used.
+ The profile must be preconfigured on the node to work.
+ Must match the loaded name of the profile.
+ Must be set if and only if type is "Localhost".
+ type: string
+ type:
+ description: |-
+ type indicates which kind of AppArmor profile will be applied.
+ Valid options are:
+ Localhost - a profile pre-loaded on the node.
+ RuntimeDefault - the container runtime's default profile.
+ Unconfined - no AppArmor enforcement.
+ type: string
+ required:
+ - type
+ type: object
+ capabilities:
+ description: |-
+ The capabilities to add/drop when running containers.
+ Defaults to the default set of capabilities granted by the container runtime.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ add:
+ description: Added capabilities
+ items:
+ description: Capability
+ represent POSIX capabilities
+ type
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ drop:
+ description: Removed capabilities
+ items:
+ description: Capability
+ represent POSIX capabilities
+ type
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ privileged:
+ description: |-
+ Run container in privileged mode.
+ Processes in privileged containers are essentially equivalent to root on the host.
+ Defaults to false.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ procMount:
+ description: |-
+ procMount denotes the type of proc mount to use for the containers.
+ The default value is Default which uses the container runtime defaults for
+ readonly paths and masked paths.
+ This requires the ProcMountType feature flag to be enabled.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: string
+ readOnlyRootFilesystem:
+ description: |-
+ Whether this container has a read-only root filesystem.
+ Default is false.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ runAsGroup:
+ description: |-
+ The GID to run the entrypoint of the container process.
+ Uses runtime default if unset.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ runAsNonRoot:
+ description: |-
+ Indicates that the container must run as a non-root user.
+ If true, the Kubelet will validate the image at runtime to ensure that it
+ does not run as UID 0 (root) and fail to start the container if it does.
+ If unset or false, no such validation will be performed.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: boolean
+ runAsUser:
+ description: |-
+ The UID to run the entrypoint of the container process.
+ Defaults to user specified in image metadata if unspecified.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ seLinuxOptions:
+ description: |-
+ The SELinux context to be applied to the container.
+ If unspecified, the container runtime will allocate a random SELinux context for each
+ container. May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ level:
+ description: Level is
+ SELinux level label
+ that applies to the
+ container.
+ type: string
+ role:
+ description: Role is a
+ SELinux role label that
+ applies to the container.
+ type: string
+ type:
+ description: Type is a
+ SELinux type label that
+ applies to the container.
+ type: string
+ user:
+ description: User is a
+ SELinux user label that
+ applies to the container.
+ type: string
+ type: object
+ seccompProfile:
+ description: |-
+ The seccomp options to use by this container. If seccomp options are
+ provided at both the pod & container level, the container options
+ override the pod options.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile defined in a file on the node should be used.
+ The profile must be preconfigured on the node to work.
+ Must be a descending path, relative to the kubelet's configured seccomp profile location.
+ Must be set if type is "Localhost". Must NOT be set for any other type.
+ type: string
+ type:
+ description: |-
+ type indicates which kind of seccomp profile will be applied.
+ Valid options are:
+
+ Localhost - a profile defined in a file on the node should be used.
+ RuntimeDefault - the container runtime default profile should be used.
+ Unconfined - no profile should be applied.
+ type: string
+ required:
+ - type
+ type: object
+ windowsOptions:
+ description: |-
+ The Windows specific settings applied to all containers.
+ If unspecified, the options from the PodSecurityContext will be used.
+ If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is linux.
+ properties:
+ gmsaCredentialSpec:
+ description: |-
+ GMSACredentialSpec is where the GMSA admission webhook
+ (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the
+ GMSA credential spec named by the GMSACredentialSpecName field.
+ type: string
+ gmsaCredentialSpecName:
+ description: GMSACredentialSpecName
+ is the name of the GMSA
+ credential spec to use.
+ type: string
+ hostProcess:
+ description: |-
+ HostProcess determines if a container should be run as a 'Host Process' container.
+ All of a Pod's containers must have the same effective HostProcess value
+ (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers).
+ In addition, if HostProcess is true then HostNetwork must also be set to true.
+ type: boolean
+ runAsUserName:
+ description: |-
+ The UserName in Windows to run the entrypoint of the container process.
+ Defaults to the user specified in image metadata if unspecified.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: string
+ type: object
+ type: object
+ startupProbe:
+ description: Probes are not allowed
+ for ephemeral containers.
+ properties:
+ exec:
+ description: Exec specifies
+ the action to take.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
+ format: int32
+ type: integer
+ grpc:
+ description: GRPC specifies
+ an action involving a GRPC
+ port.
+ properties:
+ port:
+ description: Port number
+ of the gRPC service.
+ Number must be in the
+ range 1 to 65535.
+ format: int32
+ type: integer
+ service:
+ default: ""
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
+ (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
+
+ If this is not specified, the default behavior is defined by gRPC.
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ description: HTTPGet specifies
+ the http request to perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers
+ to set in the request.
+ HTTP allows repeated
+ headers.
+ items:
+ description: HTTPHeader
+ describes a custom
+ header to be used
+ in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The
+ header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access
+ on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ periodSeconds:
+ description: |-
+ How often (in seconds) to perform the probe.
+ Default to 10 seconds. Minimum value is 1.
+ format: int32
+ type: integer
+ successThreshold:
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
+ format: int32
+ type: integer
+ tcpSocket:
+ description: TCPSocket specifies
+ an action involving a TCP
+ port.
+ properties:
+ host:
+ description: 'Optional:
+ Host name to connect
+ to, defaults to the
+ pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
+ format: int64
+ type: integer
+ timeoutSeconds:
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ type: object
+ stdin:
+ description: |-
+ Whether this container should allocate a buffer for stdin in the container runtime. If this
+ is not set, reads from stdin in the container will always result in EOF.
+ Default is false.
+ type: boolean
+ stdinOnce:
+ description: |-
+ Whether the container runtime should close the stdin channel after it has been opened by
+ a single attach. When stdin is true the stdin stream will remain open across multiple attach
+ sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the
+ first client attaches to stdin, and then remains open and accepts data until the client disconnects,
+ at which time stdin is closed and remains closed until the container is restarted. If this
+ flag is false, a container processes that reads from stdin will never receive an EOF.
+ Default is false
+ type: boolean
+ targetContainerName:
+ description: |-
+ If set, the name of the container from PodSpec that this ephemeral container targets.
+ The ephemeral container will be run in the namespaces (IPC, PID, etc) of this container.
+ If not set then the ephemeral container uses the namespaces configured in the Pod spec.
+
+ The container runtime must implement support for this feature. If the runtime does not
+ support namespace targeting then the result of setting this field is undefined.
+ type: string
+ terminationMessagePath:
+ description: |-
+ Optional: Path at which the file to which the container's termination message
+ will be written is mounted into the container's filesystem.
+ Message written is intended to be brief final status, such as an assertion failure message.
+ Will be truncated by the node if greater than 4096 bytes. The total message length across
+ all containers will be limited to 12kb.
+ Defaults to /dev/termination-log.
+ Cannot be updated.
+ type: string
+ terminationMessagePolicy:
+ description: |-
+ Indicate how the termination message should be populated. File will use the contents of
+ terminationMessagePath to populate the container status message on both success and failure.
+ FallbackToLogsOnError will use the last chunk of container log output if the termination
+ message file is empty and the container exited with an error.
+ The log output is limited to 2048 bytes or 80 lines, whichever is smaller.
+ Defaults to File.
+ Cannot be updated.
+ type: string
+ tty:
+ description: |-
+ Whether this container should allocate a TTY for itself, also requires 'stdin' to be true.
+ Default is false.
+ type: boolean
+ volumeDevices:
+ description: volumeDevices is
+ the list of block devices to
+ be used by the container.
+ items:
+ description: volumeDevice describes
+ a mapping of a raw block device
+ within a container.
+ properties:
+ devicePath:
+ description: devicePath
+ is the path inside of
+ the container that the
+ device will be mapped
+ to.
+ type: string
+ name:
+ description: name must match
+ the name of a persistentVolumeClaim
+ in the pod
+ type: string
+ required:
+ - devicePath
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
+ volumeMounts:
+ description: |-
+ Pod volumes to mount into the container's filesystem. Subpath mounts are not allowed for ephemeral containers.
+ Cannot be updated.
+ items:
+ description: VolumeMount describes
+ a mounting of a Volume within
+ a container.
+ properties:
+ mountPath:
+ description: |-
+ Path within the container at which the volume should be mounted. Must
+ not contain ':'.
+ type: string
+ mountPropagation:
+ description: |-
+ mountPropagation determines how mounts are propagated from the host
+ to container and the other way around.
+ When not set, MountPropagationNone is used.
+ This field is beta in 1.10.
+ When RecursiveReadOnly is set to IfPossible or to Enabled, MountPropagation must be None or unspecified
+ (which defaults to None).
+ type: string
+ name:
+ description: This must match
+ the Name of a Volume.
+ type: string
+ readOnly:
+ description: |-
+ Mounted read-only if true, read-write otherwise (false or unspecified).
+ Defaults to false.
+ type: boolean
+ recursiveReadOnly:
+ description: |-
+ RecursiveReadOnly specifies whether read-only mounts should be handled
+ recursively.
+
+ If ReadOnly is false, this field has no meaning and must be unspecified.
+
+ If ReadOnly is true, and this field is set to Disabled, the mount is not made
+ recursively read-only. If this field is set to IfPossible, the mount is made
+ recursively read-only, if it is supported by the container runtime. If this
+ field is set to Enabled, the mount is made recursively read-only if it is
+ supported by the container runtime, otherwise the pod will not be started and
+ an error will be generated to indicate the reason.
+
+ If this field is set to IfPossible or Enabled, MountPropagation must be set to
+ None (or be unspecified, which defaults to None).
+
+ If this field is not specified, it is treated as an equivalent of Disabled.
+ type: string
+ subPath:
+ description: |-
+ Path within the volume from which the container's volume should be mounted.
+ Defaults to "" (volume's root).
+ type: string
+ subPathExpr:
+ description: |-
+ Expanded path within the volume from which the container's volume should be mounted.
+ Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.
+ Defaults to "" (volume's root).
+ SubPathExpr and SubPath are mutually exclusive.
+ type: string
+ required:
+ - mountPath
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
+ workingDir:
+ description: |-
+ Container's working directory.
+ If not specified, the container runtime's default will be used, which
+ might be configured in the container image.
+ Cannot be updated.
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ hostAliases:
+ description: |-
+ HostAliases is an optional list of hosts and IPs that will be injected into the pod's hosts
+ file if specified.
+ items:
+ description: |-
+ HostAlias holds the mapping between IP and hostnames that will be injected as an entry in the
+ pod's hosts file.
+ properties:
+ hostnames:
+ description: Hostnames for the
+ above IP address.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ ip:
+ description: IP address of the
+ host file entry.
+ type: string
+ required:
+ - ip
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - ip
+ x-kubernetes-list-type: map
+ hostIPC:
+ description: |-
+ Use the host's ipc namespace.
+ Optional: Default to false.
+ type: boolean
+ hostNetwork:
+ description: |-
+ Host networking requested for this pod. Use the host's network namespace.
+ If this option is set, the ports that will be used must be specified.
+ Default to false.
+ type: boolean
+ hostPID:
+ description: |-
+ Use the host's pid namespace.
+ Optional: Default to false.
+ type: boolean
+ hostUsers:
+ description: |-
+ Use the host's user namespace.
+ Optional: Default to true.
+ If set to true or not present, the pod will be run in the host user namespace, useful
+ for when the pod needs a feature only available to the host user namespace, such as
+ loading a kernel module with CAP_SYS_MODULE.
+ When set to false, a new userns is created for the pod. Setting false is useful for
+ mitigating container breakout vulnerabilities even allowing users to run their
+ containers as root without actually having root privileges on the host.
+ This field is alpha-level and is only honored by servers that enable the UserNamespacesSupport feature.
+ type: boolean
+ hostname:
+ description: |-
+ Specifies the hostname of the Pod
+ If not specified, the pod's hostname will be set to a system-defined value.
+ type: string
+ imagePullSecrets:
+ description: |-
+ ImagePullSecrets is an optional list of references to secrets in the same namespace to use for pulling any of the images used by this PodSpec.
+ If specified, these secrets will be passed to individual puller implementations for them to use.
+ More info: https://kubernetes.io/docs/concepts/containers/images#specifying-imagepullsecrets-on-a-pod
+ items:
+ description: |-
+ LocalObjectReference contains enough information to let you locate the
+ referenced object inside the same namespace.
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ initContainers:
+ description: |-
+ List of initialization containers belonging to the pod.
+ Init containers are executed in order prior to containers being started. If any
+ init container fails, the pod is considered to have failed and is handled according
+ to its restartPolicy. The name for an init container or normal container must be
+ unique among all containers.
+ Init containers may not have Lifecycle actions, Readiness probes, Liveness probes, or Startup probes.
+ The resourceRequirements of an init container are taken into account during scheduling
+ by finding the highest request/limit for each resource type, and then using the max of
+ of that value or the sum of the normal containers. Limits are applied to init containers
+ in a similar fashion.
+ Init containers cannot currently be added or removed.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/init-containers/
+ items:
+ description: A single application
+ container that you want to run within
+ a pod.
+ properties:
+ args:
+ description: |-
+ Arguments to the entrypoint.
+ The container image's CMD is used if this is not provided.
+ Variable references $(VAR_NAME) are expanded using the container's environment. If a variable
+ cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will
+ produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless
+ of whether the variable exists or not. Cannot be updated.
+ More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ command:
+ description: |-
+ Entrypoint array. Not executed within a shell.
+ The container image's ENTRYPOINT is used if this is not provided.
+ Variable references $(VAR_NAME) are expanded using the container's environment. If a variable
+ cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will
+ produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless
+ of whether the variable exists or not. Cannot be updated.
+ More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ env:
+ description: |-
+ List of environment variables to set in the container.
+ Cannot be updated.
+ items:
+ description: EnvVar represents
+ an environment variable present
+ in a Container.
+ properties:
+ name:
+ description: Name of the
+ environment variable.
+ Must be a C_IDENTIFIER.
+ type: string
+ value:
+ description: |-
+ Variable references $(VAR_NAME) are expanded
+ using the previously defined environment variables in the container and
+ any service environment variables. If a variable cannot be resolved,
+ the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e.
+ "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)".
+ Escaped references will never be expanded, regardless of whether the variable
+ exists or not.
+ Defaults to "".
+ type: string
+ valueFrom:
+ description: Source for
+ the environment variable's
+ value. Cannot be used
+ if value is not empty.
+ properties:
+ configMapKeyRef:
+ description: Selects
+ a key of a ConfigMap.
+ properties:
+ key:
+ description: The
+ key to select.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify
+ whether the ConfigMap
+ or its key must
+ be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ fieldRef:
+ description: |-
+ Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`,
+ spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.
+ properties:
+ apiVersion:
+ description: Version
+ of the schema
+ the FieldPath
+ is written in
+ terms of, defaults
+ to "v1".
+ type: string
+ fieldPath:
+ description: Path
+ of the field to
+ select in the
+ specified API
+ version.
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ resourceFieldRef:
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported.
+ properties:
+ containerName:
+ description: 'Container
+ name: required
+ for volumes, optional
+ for env vars'
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ description: Specifies
+ the output format
+ of the exposed
+ resources, defaults
+ to "1"
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ description: 'Required:
+ resource to select'
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ secretKeyRef:
+ description: Selects
+ a key of a secret
+ in the pod's namespace
+ properties:
+ key:
+ description: The
+ key of the secret
+ to select from. Must
+ be a valid secret
+ key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify
+ whether the Secret
+ or its key must
+ be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ envFrom:
+ description: |-
+ List of sources to populate environment variables in the container.
+ The keys defined within a source must be a C_IDENTIFIER. All invalid keys
+ will be reported as an event when the container is starting. When a key exists in multiple
+ sources, the value associated with the last source will take precedence.
+ Values defined by an Env with a duplicate key will take precedence.
+ Cannot be updated.
+ items:
+ description: EnvFromSource represents
+ the source of a set of ConfigMaps
+ properties:
+ configMapRef:
+ description: The ConfigMap
+ to select from
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify
+ whether the ConfigMap
+ must be defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ prefix:
+ description: An optional
+ identifier to prepend
+ to each key in the ConfigMap.
+ Must be a C_IDENTIFIER.
+ type: string
+ secretRef:
+ description: The Secret
+ to select from
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify
+ whether the Secret
+ must be defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ image:
+ description: |-
+ Container image name.
+ More info: https://kubernetes.io/docs/concepts/containers/images
+ This field is optional to allow higher level config management to default or override
+ container images in workload controllers like Deployments and StatefulSets.
+ type: string
+ imagePullPolicy:
+ description: |-
+ Image pull policy.
+ One of Always, Never, IfNotPresent.
+ Defaults to Always if :latest tag is specified, or IfNotPresent otherwise.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/containers/images#updating-images
+ type: string
+ lifecycle:
+ description: |-
+ Actions that the management system should take in response to container lifecycle events.
+ Cannot be updated.
+ properties:
+ postStart:
+ description: |-
+ PostStart is called immediately after a container is created. If the handler fails,
+ the container is terminated and restarted according to its restart policy.
+ Other management of the container blocks until the hook completes.
+ More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
+ properties:
+ exec:
+ description: Exec specifies
+ the action to take.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ description: HTTPGet specifies
+ the http request to
+ perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom
+ headers to set in
+ the request. HTTP
+ allows repeated
+ headers.
+ items:
+ description: HTTPHeader
+ describes a custom
+ header to be used
+ in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The
+ header field
+ value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path
+ to access on the
+ HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ description: Sleep represents
+ the duration that the
+ container should sleep
+ before being terminated.
+ properties:
+ seconds:
+ description: Seconds
+ is the number of
+ seconds to sleep.
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ description: |-
+ Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept
+ for the backward compatibility. There are no validation of this field and
+ lifecycle hooks will fail in runtime when tcp handler is specified.
+ properties:
+ host:
+ description: 'Optional:
+ Host name to connect
+ to, defaults to
+ the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ preStop:
+ description: |-
+ PreStop is called immediately before a container is terminated due to an
+ API request or management event such as liveness/startup probe failure,
+ preemption, resource contention, etc. The handler is not called if the
+ container crashes or exits. The Pod's termination grace period countdown begins before the
+ PreStop hook is executed. Regardless of the outcome of the handler, the
+ container will eventually terminate within the Pod's termination grace
+ period (unless delayed by finalizers). Other management of the container blocks until the hook completes
+ or until the termination grace period is reached.
+ More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
+ properties:
+ exec:
+ description: Exec specifies
+ the action to take.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ httpGet:
+ description: HTTPGet specifies
+ the http request to
+ perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom
+ headers to set in
+ the request. HTTP
+ allows repeated
+ headers.
+ items:
+ description: HTTPHeader
+ describes a custom
+ header to be used
+ in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The
+ header field
+ value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path
+ to access on the
+ HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ sleep:
+ description: Sleep represents
+ the duration that the
+ container should sleep
+ before being terminated.
+ properties:
+ seconds:
+ description: Seconds
+ is the number of
+ seconds to sleep.
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
+ tcpSocket:
+ description: |-
+ Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept
+ for the backward compatibility. There are no validation of this field and
+ lifecycle hooks will fail in runtime when tcp handler is specified.
+ properties:
+ host:
+ description: 'Optional:
+ Host name to connect
+ to, defaults to
+ the pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ type: object
+ type: object
+ livenessProbe:
+ description: |-
+ Periodic probe of container liveness.
+ Container will be restarted if the probe fails.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ properties:
+ exec:
+ description: Exec specifies
+ the action to take.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
+ format: int32
+ type: integer
+ grpc:
+ description: GRPC specifies
+ an action involving a GRPC
+ port.
+ properties:
+ port:
+ description: Port number
+ of the gRPC service.
+ Number must be in the
+ range 1 to 65535.
+ format: int32
+ type: integer
+ service:
+ default: ""
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
+ (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
+
+ If this is not specified, the default behavior is defined by gRPC.
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ description: HTTPGet specifies
+ the http request to perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers
+ to set in the request.
+ HTTP allows repeated
+ headers.
+ items:
+ description: HTTPHeader
+ describes a custom
+ header to be used
+ in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The
+ header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access
+ on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ periodSeconds:
+ description: |-
+ How often (in seconds) to perform the probe.
+ Default to 10 seconds. Minimum value is 1.
+ format: int32
+ type: integer
+ successThreshold:
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
+ format: int32
+ type: integer
+ tcpSocket:
+ description: TCPSocket specifies
+ an action involving a TCP
+ port.
+ properties:
+ host:
+ description: 'Optional:
+ Host name to connect
+ to, defaults to the
+ pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
+ format: int64
+ type: integer
+ timeoutSeconds:
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ type: object
+ name:
+ description: |-
+ Name of the container specified as a DNS_LABEL.
+ Each container in a pod must have a unique name (DNS_LABEL).
+ Cannot be updated.
+ type: string
+ ports:
+ description: |-
+ List of ports to expose from the container. Not specifying a port here
+ DOES NOT prevent that port from being exposed. Any port which is
+ listening on the default "0.0.0.0" address inside a container will be
+ accessible from the network.
+ Modifying this array with strategic merge patch may corrupt the data.
+ For more information See https://github.com/kubernetes/kubernetes/issues/108255.
+ Cannot be updated.
+ items:
+ description: ContainerPort represents
+ a network port in a single
+ container.
+ properties:
+ containerPort:
+ description: |-
+ Number of port to expose on the pod's IP address.
+ This must be a valid port number, 0 < x < 65536.
+ format: int32
+ type: integer
+ hostIP:
+ description: What host IP
+ to bind the external port
+ to.
+ type: string
+ hostPort:
+ description: |-
+ Number of port to expose on the host.
+ If specified, this must be a valid port number, 0 < x < 65536.
+ If HostNetwork is specified, this must match ContainerPort.
+ Most containers do not need this.
+ format: int32
+ type: integer
+ name:
+ description: |-
+ If specified, this must be an IANA_SVC_NAME and unique within the pod. Each
+ named port in a pod must have a unique name. Name for the port that can be
+ referred to by services.
+ type: string
+ protocol:
+ default: TCP
+ description: |-
+ Protocol for port. Must be UDP, TCP, or SCTP.
+ Defaults to "TCP".
+ type: string
+ required:
+ - containerPort
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - containerPort
+ - protocol
+ x-kubernetes-list-type: map
+ readinessProbe:
+ description: |-
+ Periodic probe of container service readiness.
+ Container will be removed from service endpoints if the probe fails.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ properties:
+ exec:
+ description: Exec specifies
+ the action to take.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
+ format: int32
+ type: integer
+ grpc:
+ description: GRPC specifies
+ an action involving a GRPC
+ port.
+ properties:
+ port:
+ description: Port number
+ of the gRPC service.
+ Number must be in the
+ range 1 to 65535.
+ format: int32
+ type: integer
+ service:
+ default: ""
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
+ (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
+
+ If this is not specified, the default behavior is defined by gRPC.
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ description: HTTPGet specifies
+ the http request to perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers
+ to set in the request.
+ HTTP allows repeated
+ headers.
+ items:
+ description: HTTPHeader
+ describes a custom
+ header to be used
+ in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The
+ header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access
+ on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ periodSeconds:
+ description: |-
+ How often (in seconds) to perform the probe.
+ Default to 10 seconds. Minimum value is 1.
+ format: int32
+ type: integer
+ successThreshold:
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
+ format: int32
+ type: integer
+ tcpSocket:
+ description: TCPSocket specifies
+ an action involving a TCP
+ port.
+ properties:
+ host:
+ description: 'Optional:
+ Host name to connect
+ to, defaults to the
+ pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
+ format: int64
+ type: integer
+ timeoutSeconds:
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ type: object
+ resizePolicy:
+ description: Resources resize
+ policy for the container.
+ items:
+ description: ContainerResizePolicy
+ represents resource resize
+ policy for the container.
+ properties:
+ resourceName:
+ description: |-
+ Name of the resource to which this resource resize policy applies.
+ Supported values: cpu, memory.
+ type: string
+ restartPolicy:
+ description: |-
+ Restart policy to apply when specified resource is resized.
+ If not specified, it defaults to NotRequired.
+ type: string
+ required:
+ - resourceName
+ - restartPolicy
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ resources:
+ description: |-
+ Compute Resources required by this container.
+ Cannot be updated.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ properties:
+ claims:
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+ This field is immutable. It can only be set for containers.
+ items:
+ description: ResourceClaim
+ references one entry in
+ PodSpec.ResourceClaims.
+ properties:
+ name:
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
+ type: string
+ request:
+ description: |-
+ Request is the name chosen for a request in the referenced claim.
+ If empty, everything from the claim is made available, otherwise
+ only the result of this request.
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ limits:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ type: object
+ requests:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ type: object
+ type: object
+ restartPolicy:
+ description: |-
+ RestartPolicy defines the restart behavior of individual containers in a pod.
+ This field may only be set for init containers, and the only allowed value is "Always".
+ For non-init containers or when this field is not specified,
+ the restart behavior is defined by the Pod's restart policy and the container type.
+ Setting the RestartPolicy as "Always" for the init container will have the following effect:
+ this init container will be continually restarted on
+ exit until all regular containers have terminated. Once all regular
+ containers have completed, all init containers with restartPolicy "Always"
+ will be shut down. This lifecycle differs from normal init containers and
+ is often referred to as a "sidecar" container. Although this init
+ container still starts in the init container sequence, it does not wait
+ for the container to complete before proceeding to the next init
+ container. Instead, the next init container starts immediately after this
+ init container is started, or after any startupProbe has successfully
+ completed.
+ type: string
+ securityContext:
+ description: |-
+ SecurityContext defines the security options the container should be run with.
+ If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext.
+ More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
+ properties:
+ allowPrivilegeEscalation:
+ description: |-
+ AllowPrivilegeEscalation controls whether a process can gain more
+ privileges than its parent process. This bool directly controls if
+ the no_new_privs flag will be set on the container process.
+ AllowPrivilegeEscalation is true always when the container is:
+ 1) run as Privileged
+ 2) has CAP_SYS_ADMIN
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ appArmorProfile:
+ description: |-
+ appArmorProfile is the AppArmor options to use by this container. If set, this profile
+ overrides the pod's appArmorProfile.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile loaded on the node that should be used.
+ The profile must be preconfigured on the node to work.
+ Must match the loaded name of the profile.
+ Must be set if and only if type is "Localhost".
+ type: string
+ type:
+ description: |-
+ type indicates which kind of AppArmor profile will be applied.
+ Valid options are:
+ Localhost - a profile pre-loaded on the node.
+ RuntimeDefault - the container runtime's default profile.
+ Unconfined - no AppArmor enforcement.
+ type: string
+ required:
+ - type
+ type: object
+ capabilities:
+ description: |-
+ The capabilities to add/drop when running containers.
+ Defaults to the default set of capabilities granted by the container runtime.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ add:
+ description: Added capabilities
+ items:
+ description: Capability
+ represent POSIX capabilities
+ type
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ drop:
+ description: Removed capabilities
+ items:
+ description: Capability
+ represent POSIX capabilities
+ type
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ privileged:
+ description: |-
+ Run container in privileged mode.
+ Processes in privileged containers are essentially equivalent to root on the host.
+ Defaults to false.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ procMount:
+ description: |-
+ procMount denotes the type of proc mount to use for the containers.
+ The default value is Default which uses the container runtime defaults for
+ readonly paths and masked paths.
+ This requires the ProcMountType feature flag to be enabled.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: string
+ readOnlyRootFilesystem:
+ description: |-
+ Whether this container has a read-only root filesystem.
+ Default is false.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: boolean
+ runAsGroup:
+ description: |-
+ The GID to run the entrypoint of the container process.
+ Uses runtime default if unset.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ runAsNonRoot:
+ description: |-
+ Indicates that the container must run as a non-root user.
+ If true, the Kubelet will validate the image at runtime to ensure that it
+ does not run as UID 0 (root) and fail to start the container if it does.
+ If unset or false, no such validation will be performed.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: boolean
+ runAsUser:
+ description: |-
+ The UID to run the entrypoint of the container process.
+ Defaults to user specified in image metadata if unspecified.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ seLinuxOptions:
+ description: |-
+ The SELinux context to be applied to the container.
+ If unspecified, the container runtime will allocate a random SELinux context for each
+ container. May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ level:
+ description: Level is
+ SELinux level label
+ that applies to the
+ container.
+ type: string
+ role:
+ description: Role is a
+ SELinux role label that
+ applies to the container.
+ type: string
+ type:
+ description: Type is a
+ SELinux type label that
+ applies to the container.
+ type: string
+ user:
+ description: User is a
+ SELinux user label that
+ applies to the container.
+ type: string
+ type: object
+ seccompProfile:
+ description: |-
+ The seccomp options to use by this container. If seccomp options are
+ provided at both the pod & container level, the container options
+ override the pod options.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile defined in a file on the node should be used.
+ The profile must be preconfigured on the node to work.
+ Must be a descending path, relative to the kubelet's configured seccomp profile location.
+ Must be set if type is "Localhost". Must NOT be set for any other type.
+ type: string
+ type:
+ description: |-
+ type indicates which kind of seccomp profile will be applied.
+ Valid options are:
+
+ Localhost - a profile defined in a file on the node should be used.
+ RuntimeDefault - the container runtime default profile should be used.
+ Unconfined - no profile should be applied.
+ type: string
+ required:
+ - type
+ type: object
+ windowsOptions:
+ description: |-
+ The Windows specific settings applied to all containers.
+ If unspecified, the options from the PodSecurityContext will be used.
+ If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is linux.
+ properties:
+ gmsaCredentialSpec:
+ description: |-
+ GMSACredentialSpec is where the GMSA admission webhook
+ (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the
+ GMSA credential spec named by the GMSACredentialSpecName field.
+ type: string
+ gmsaCredentialSpecName:
+ description: GMSACredentialSpecName
+ is the name of the GMSA
+ credential spec to use.
+ type: string
+ hostProcess:
+ description: |-
+ HostProcess determines if a container should be run as a 'Host Process' container.
+ All of a Pod's containers must have the same effective HostProcess value
+ (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers).
+ In addition, if HostProcess is true then HostNetwork must also be set to true.
+ type: boolean
+ runAsUserName:
+ description: |-
+ The UserName in Windows to run the entrypoint of the container process.
+ Defaults to the user specified in image metadata if unspecified.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: string
+ type: object
+ type: object
+ startupProbe:
+ description: |-
+ 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: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ properties:
+ exec:
+ description: Exec specifies
+ the action to take.
+ properties:
+ command:
+ description: |-
+ Command is the command line to execute inside the container, the working directory for the
+ command is root ('/') in the container's filesystem. The command is simply exec'd, it is
+ not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use
+ a shell, you need to explicitly call out to that shell.
+ Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ failureThreshold:
+ description: |-
+ Minimum consecutive failures for the probe to be considered failed after having succeeded.
+ Defaults to 3. Minimum value is 1.
+ format: int32
+ type: integer
+ grpc:
+ description: GRPC specifies
+ an action involving a GRPC
+ port.
+ properties:
+ port:
+ description: Port number
+ of the gRPC service.
+ Number must be in the
+ range 1 to 65535.
+ format: int32
+ type: integer
+ service:
+ default: ""
+ description: |-
+ Service is the name of the service to place in the gRPC HealthCheckRequest
+ (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
+
+ If this is not specified, the default behavior is defined by gRPC.
+ type: string
+ required:
+ - port
+ type: object
+ httpGet:
+ description: HTTPGet specifies
+ the http request to perform.
+ properties:
+ host:
+ description: |-
+ Host name to connect to, defaults to the pod IP. You probably want to set
+ "Host" in httpHeaders instead.
+ type: string
+ httpHeaders:
+ description: Custom headers
+ to set in the request.
+ HTTP allows repeated
+ headers.
+ items:
+ description: HTTPHeader
+ describes a custom
+ header to be used
+ in HTTP probes
+ properties:
+ name:
+ description: |-
+ The header field name.
+ This will be canonicalized upon output, so case-variant names will be understood as the same header.
+ type: string
+ value:
+ description: The
+ header field value
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: Path to access
+ on the HTTP server.
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Name or number of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ scheme:
+ description: |-
+ Scheme to use for connecting to the host.
+ Defaults to HTTP.
+ type: string
+ required:
+ - port
+ type: object
+ initialDelaySeconds:
+ description: |-
+ Number of seconds after the container has started before liveness probes are initiated.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ periodSeconds:
+ description: |-
+ How often (in seconds) to perform the probe.
+ Default to 10 seconds. Minimum value is 1.
+ format: int32
+ type: integer
+ successThreshold:
+ description: |-
+ Minimum consecutive successes for the probe to be considered successful after having failed.
+ Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
+ format: int32
+ type: integer
+ tcpSocket:
+ description: TCPSocket specifies
+ an action involving a TCP
+ port.
+ properties:
+ host:
+ description: 'Optional:
+ Host name to connect
+ to, defaults to the
+ pod IP.'
+ type: string
+ port:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ Number or name of the port to access on the container.
+ Number must be in the range 1 to 65535.
+ Name must be an IANA_SVC_NAME.
+ x-kubernetes-int-or-string: true
+ required:
+ - port
+ type: object
+ terminationGracePeriodSeconds:
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this
+ value overrides the value provided by the pod spec.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.
+ Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
+ format: int64
+ type: integer
+ timeoutSeconds:
+ description: |-
+ Number of seconds after which the probe times out.
+ Defaults to 1 second. Minimum value is 1.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
+ format: int32
+ type: integer
+ type: object
+ stdin:
+ description: |-
+ Whether this container should allocate a buffer for stdin in the container runtime. If this
+ is not set, reads from stdin in the container will always result in EOF.
+ Default is false.
+ type: boolean
+ stdinOnce:
+ description: |-
+ Whether the container runtime should close the stdin channel after it has been opened by
+ a single attach. When stdin is true the stdin stream will remain open across multiple attach
+ sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the
+ first client attaches to stdin, and then remains open and accepts data until the client disconnects,
+ at which time stdin is closed and remains closed until the container is restarted. If this
+ flag is false, a container processes that reads from stdin will never receive an EOF.
+ Default is false
+ type: boolean
+ terminationMessagePath:
+ description: |-
+ Optional: Path at which the file to which the container's termination message
+ will be written is mounted into the container's filesystem.
+ Message written is intended to be brief final status, such as an assertion failure message.
+ Will be truncated by the node if greater than 4096 bytes. The total message length across
+ all containers will be limited to 12kb.
+ Defaults to /dev/termination-log.
+ Cannot be updated.
+ type: string
+ terminationMessagePolicy:
+ description: |-
+ Indicate how the termination message should be populated. File will use the contents of
+ terminationMessagePath to populate the container status message on both success and failure.
+ FallbackToLogsOnError will use the last chunk of container log output if the termination
+ message file is empty and the container exited with an error.
+ The log output is limited to 2048 bytes or 80 lines, whichever is smaller.
+ Defaults to File.
+ Cannot be updated.
+ type: string
+ tty:
+ description: |-
+ Whether this container should allocate a TTY for itself, also requires 'stdin' to be true.
+ Default is false.
+ type: boolean
+ volumeDevices:
+ description: volumeDevices is
+ the list of block devices to
+ be used by the container.
+ items:
+ description: volumeDevice describes
+ a mapping of a raw block device
+ within a container.
+ properties:
+ devicePath:
+ description: devicePath
+ is the path inside of
+ the container that the
+ device will be mapped
+ to.
+ type: string
+ name:
+ description: name must match
+ the name of a persistentVolumeClaim
+ in the pod
+ type: string
+ required:
+ - devicePath
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - devicePath
+ x-kubernetes-list-type: map
+ volumeMounts:
+ description: |-
+ Pod volumes to mount into the container's filesystem.
+ Cannot be updated.
+ items:
+ description: VolumeMount describes
+ a mounting of a Volume within
+ a container.
+ properties:
+ mountPath:
+ description: |-
+ Path within the container at which the volume should be mounted. Must
+ not contain ':'.
+ type: string
+ mountPropagation:
+ description: |-
+ mountPropagation determines how mounts are propagated from the host
+ to container and the other way around.
+ When not set, MountPropagationNone is used.
+ This field is beta in 1.10.
+ When RecursiveReadOnly is set to IfPossible or to Enabled, MountPropagation must be None or unspecified
+ (which defaults to None).
+ type: string
+ name:
+ description: This must match
+ the Name of a Volume.
+ type: string
+ readOnly:
+ description: |-
+ Mounted read-only if true, read-write otherwise (false or unspecified).
+ Defaults to false.
+ type: boolean
+ recursiveReadOnly:
+ description: |-
+ RecursiveReadOnly specifies whether read-only mounts should be handled
+ recursively.
+
+ If ReadOnly is false, this field has no meaning and must be unspecified.
+
+ If ReadOnly is true, and this field is set to Disabled, the mount is not made
+ recursively read-only. If this field is set to IfPossible, the mount is made
+ recursively read-only, if it is supported by the container runtime. If this
+ field is set to Enabled, the mount is made recursively read-only if it is
+ supported by the container runtime, otherwise the pod will not be started and
+ an error will be generated to indicate the reason.
+
+ If this field is set to IfPossible or Enabled, MountPropagation must be set to
+ None (or be unspecified, which defaults to None).
+
+ If this field is not specified, it is treated as an equivalent of Disabled.
+ type: string
+ subPath:
+ description: |-
+ Path within the volume from which the container's volume should be mounted.
+ Defaults to "" (volume's root).
+ type: string
+ subPathExpr:
+ description: |-
+ Expanded path within the volume from which the container's volume should be mounted.
+ Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.
+ Defaults to "" (volume's root).
+ SubPathExpr and SubPath are mutually exclusive.
+ type: string
+ required:
+ - mountPath
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - mountPath
+ x-kubernetes-list-type: map
+ workingDir:
+ description: |-
+ Container's working directory.
+ If not specified, the container runtime's default will be used, which
+ might be configured in the container image.
+ Cannot be updated.
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ nodeName:
+ description: |-
+ NodeName indicates in which node this pod is scheduled.
+ If empty, this pod is a candidate for scheduling by the scheduler defined in schedulerName.
+ Once this field is set, the kubelet for this node becomes responsible for the lifecycle of this pod.
+ This field should not be used to express a desire for the pod to be scheduled on a specific node.
+ https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#nodename
+ type: string
+ nodeSelector:
+ additionalProperties:
+ type: string
+ description: |-
+ 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: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
+ type: object
+ x-kubernetes-map-type: atomic
+ os:
+ description: |-
+ Specifies the OS of the containers in the pod.
+ Some pod and container fields are restricted if this is set.
+
+ If the OS field is set to linux, the following fields must be unset:
+ -securityContext.windowsOptions
+
+ If the OS field is set to windows, following fields must be unset:
+ - spec.hostPID
+ - spec.hostIPC
+ - spec.hostUsers
+ - spec.securityContext.appArmorProfile
+ - spec.securityContext.seLinuxOptions
+ - spec.securityContext.seccompProfile
+ - spec.securityContext.fsGroup
+ - spec.securityContext.fsGroupChangePolicy
+ - spec.securityContext.sysctls
+ - spec.shareProcessNamespace
+ - spec.securityContext.runAsUser
+ - spec.securityContext.runAsGroup
+ - spec.securityContext.supplementalGroups
+ - spec.securityContext.supplementalGroupsPolicy
+ - spec.containers[*].securityContext.appArmorProfile
+ - spec.containers[*].securityContext.seLinuxOptions
+ - spec.containers[*].securityContext.seccompProfile
+ - spec.containers[*].securityContext.capabilities
+ - spec.containers[*].securityContext.readOnlyRootFilesystem
+ - spec.containers[*].securityContext.privileged
+ - spec.containers[*].securityContext.allowPrivilegeEscalation
+ - spec.containers[*].securityContext.procMount
+ - spec.containers[*].securityContext.runAsUser
+ - spec.containers[*].securityContext.runAsGroup
+ properties:
+ name:
+ description: |-
+ Name is the name of the operating system. The currently supported values are linux and windows.
+ Additional value may be defined in future and can be one of:
+ https://github.com/opencontainers/runtime-spec/blob/master/config.md#platform-specific-configuration
+ Clients should expect to handle additional values and treat unrecognized values in this field as os: null
+ type: string
+ required:
+ - name
+ type: object
+ overhead:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ description: |-
+ Overhead represents the resource overhead associated with running a pod for a given RuntimeClass.
+ This field will be autopopulated at admission time by the RuntimeClass admission controller. If
+ the RuntimeClass admission controller is enabled, overhead must not be set in Pod create requests.
+ The RuntimeClass admission controller will reject Pod create requests which have the overhead already
+ set. If RuntimeClass is configured and selected in the PodSpec, Overhead will be set to the value
+ defined in the corresponding RuntimeClass, otherwise it will remain unset and treated as zero.
+ More info: https://git.k8s.io/enhancements/keps/sig-node/688-pod-overhead/README.md
+ type: object
+ preemptionPolicy:
+ description: |-
+ PreemptionPolicy is the Policy for preempting pods with lower priority.
+ One of Never, PreemptLowerPriority.
+ Defaults to PreemptLowerPriority if unset.
+ type: string
+ priority:
+ description: |-
+ The priority value. Various system components use this field to find the
+ priority of the pod. When Priority Admission Controller is enabled, it
+ prevents users from setting this field. The admission controller populates
+ this field from PriorityClassName.
+ The higher the value, the higher the priority.
+ format: int32
+ type: integer
+ priorityClassName:
+ description: |-
+ If specified, indicates the pod's priority. "system-node-critical" and
+ "system-cluster-critical" are two special keywords which indicate the
+ highest priorities with the former being the highest priority. Any other
+ name must be defined by creating a PriorityClass object with that name.
+ If not specified, the pod priority will be default or zero if there is no
+ default.
+ type: string
+ readinessGates:
+ description: |-
+ If specified, all readiness gates will be evaluated for pod readiness.
+ A pod is ready when all its containers are ready AND
+ all conditions specified in the readiness gates have status equal to "True"
+ More info: https://git.k8s.io/enhancements/keps/sig-network/580-pod-readiness-gates
+ items:
+ description: PodReadinessGate contains
+ the reference to a pod condition
+ properties:
+ conditionType:
+ description: ConditionType refers
+ to a condition in the pod's
+ condition list with matching
+ type.
+ type: string
+ required:
+ - conditionType
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ resourceClaims:
+ description: |-
+ ResourceClaims defines which ResourceClaims must be allocated
+ and reserved before the Pod is allowed to start. The resources
+ will be made available to those containers which consume them
+ by name.
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+ This field is immutable.
+ items:
+ description: |-
+ PodResourceClaim references exactly one ResourceClaim, either directly
+ or by naming a ResourceClaimTemplate which is then turned into a ResourceClaim
+ for the pod.
+
+ It adds a name to it that uniquely identifies the ResourceClaim inside the Pod.
+ Containers that need access to the ResourceClaim reference it with this name.
+ properties:
+ name:
+ description: |-
+ Name uniquely identifies this resource claim inside the pod.
+ This must be a DNS_LABEL.
+ type: string
+ resourceClaimName:
+ description: |-
+ ResourceClaimName is the name of a ResourceClaim object in the same
+ namespace as this pod.
+
+ Exactly one of ResourceClaimName and ResourceClaimTemplateName must
+ be set.
+ type: string
+ resourceClaimTemplateName:
+ description: |-
+ ResourceClaimTemplateName is the name of a ResourceClaimTemplate
+ object in the same namespace as this pod.
+
+ The template will be used to create a new ResourceClaim, which will
+ be bound to this pod. When this pod is deleted, the ResourceClaim
+ will also be deleted. The pod name and resource name, along with a
+ generated component, will be used to form a unique name for the
+ ResourceClaim, which will be recorded in pod.status.resourceClaimStatuses.
+
+ This field is immutable and no changes will be made to the
+ corresponding ResourceClaim by the control plane after creating the
+ ResourceClaim.
+
+ Exactly one of ResourceClaimName and ResourceClaimTemplateName must
+ be set.
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ restartPolicy:
+ description: |-
+ Restart policy for all containers within the pod.
+ One of Always, OnFailure, Never. In some contexts, only a subset of those values may be permitted.
+ Default to Always.
+ More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#restart-policy
+ type: string
+ runtimeClassName:
+ description: |-
+ RuntimeClassName refers to a RuntimeClass object in the node.k8s.io group, which should be used
+ to run this pod. If no RuntimeClass resource matches the named class, the pod will not be run.
+ If unset or empty, the "legacy" RuntimeClass will be used, which is an implicit class with an
+ empty definition that uses the default runtime handler.
+ More info: https://git.k8s.io/enhancements/keps/sig-node/585-runtime-class
+ type: string
+ schedulerName:
+ description: |-
+ If specified, the pod will be dispatched by specified scheduler.
+ If not specified, the pod will be dispatched by default scheduler.
+ type: string
+ schedulingGates:
+ description: |-
+ SchedulingGates is an opaque list of values that if specified will block scheduling the pod.
+ If schedulingGates is not empty, the pod will stay in the SchedulingGated state and the
+ scheduler will not attempt to schedule the pod.
+
+ SchedulingGates can only be set at pod creation time, and be removed only afterwards.
+ items:
+ description: PodSchedulingGate is
+ associated to a Pod to guard its
+ scheduling.
+ properties:
+ name:
+ description: |-
+ Name of the scheduling gate.
+ Each scheduling gate must have a unique name field.
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ securityContext:
+ description: |-
+ SecurityContext holds pod-level security attributes and common container settings.
+ Optional: Defaults to empty. See type description for default values of each field.
+ properties:
+ appArmorProfile:
+ description: |-
+ appArmorProfile is the AppArmor options to use by the containers in this pod.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile loaded on the node that should be used.
+ The profile must be preconfigured on the node to work.
+ Must match the loaded name of the profile.
+ Must be set if and only if type is "Localhost".
+ type: string
+ type:
+ description: |-
+ type indicates which kind of AppArmor profile will be applied.
+ Valid options are:
+ Localhost - a profile pre-loaded on the node.
+ RuntimeDefault - the container runtime's default profile.
+ Unconfined - no AppArmor enforcement.
+ type: string
+ required:
+ - type
+ type: object
+ fsGroup:
+ description: |-
+ A special supplemental group that applies to all containers in a pod.
+ Some volume types allow the Kubelet to change the ownership of that volume
+ to be owned by the pod:
+
+ 1. The owning GID will be the FSGroup
+ 2. The setgid bit is set (new files created in the volume will be owned by FSGroup)
+ 3. The permission bits are OR'd with rw-rw----
+
+ If unset, the Kubelet will not modify the ownership and permissions of any volume.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ fsGroupChangePolicy:
+ description: |-
+ fsGroupChangePolicy defines behavior of changing ownership and permission of the volume
+ before being exposed inside Pod. This field will only apply to
+ volume types which support fsGroup based ownership(and permissions).
+ It will have no effect on ephemeral volume types such as: secret, configmaps
+ and emptydir.
+ Valid values are "OnRootMismatch" and "Always". If not specified, "Always" is used.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: string
+ runAsGroup:
+ description: |-
+ The GID to run the entrypoint of the container process.
+ Uses runtime default if unset.
+ May also be set in SecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence
+ for that container.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ runAsNonRoot:
+ description: |-
+ Indicates that the container must run as a non-root user.
+ If true, the Kubelet will validate the image at runtime to ensure that it
+ does not run as UID 0 (root) and fail to start the container if it does.
+ If unset or false, no such validation will be performed.
+ May also be set in SecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: boolean
+ runAsUser:
+ description: |-
+ The UID to run the entrypoint of the container process.
+ Defaults to user specified in image metadata if unspecified.
+ May also be set in SecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence
+ for that container.
+ Note that this field cannot be set when spec.os.name is windows.
+ format: int64
+ type: integer
+ seLinuxOptions:
+ description: |-
+ The SELinux context to be applied to all containers.
+ If unspecified, the container runtime will allocate a random SELinux context for each
+ container. May also be set in SecurityContext. If set in
+ both SecurityContext and PodSecurityContext, the value specified in SecurityContext
+ takes precedence for that container.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ level:
+ description: Level is SELinux
+ level label that applies to
+ the container.
+ type: string
+ role:
+ description: Role is a SELinux
+ role label that applies to
+ the container.
+ type: string
+ type:
+ description: Type is a SELinux
+ type label that applies to
+ the container.
+ type: string
+ user:
+ description: User is a SELinux
+ user label that applies to
+ the container.
+ type: string
+ type: object
+ seccompProfile:
+ description: |-
+ The seccomp options to use by the containers in this pod.
+ Note that this field cannot be set when spec.os.name is windows.
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile defined in a file on the node should be used.
+ The profile must be preconfigured on the node to work.
+ Must be a descending path, relative to the kubelet's configured seccomp profile location.
+ Must be set if type is "Localhost". Must NOT be set for any other type.
+ type: string
+ type:
+ description: |-
+ type indicates which kind of seccomp profile will be applied.
+ Valid options are:
+
+ Localhost - a profile defined in a file on the node should be used.
+ RuntimeDefault - the container runtime default profile should be used.
+ Unconfined - no profile should be applied.
+ type: string
+ required:
+ - type
+ type: object
+ supplementalGroups:
+ description: |-
+ A list of groups applied to the first process run in each container, in
+ addition to the container's primary GID and fsGroup (if specified). If
+ the SupplementalGroupsPolicy feature is enabled, the
+ supplementalGroupsPolicy field determines whether these are in addition
+ to or instead of any group memberships defined in the container image.
+ If unspecified, no additional groups are added, though group memberships
+ defined in the container image may still be used, depending on the
+ supplementalGroupsPolicy field.
+ Note that this field cannot be set when spec.os.name is windows.
+ items:
+ format: int64
+ type: integer
+ type: array
+ x-kubernetes-list-type: atomic
+ supplementalGroupsPolicy:
+ description: |-
+ Defines how supplemental groups of the first container processes are calculated.
+ Valid values are "Merge" and "Strict". If not specified, "Merge" is used.
+ (Alpha) Using the field requires the SupplementalGroupsPolicy feature gate to be enabled
+ and the container runtime must implement support for this feature.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: string
+ sysctls:
+ description: |-
+ Sysctls hold a list of namespaced sysctls used for the pod. Pods with unsupported
+ sysctls (by the container runtime) might fail to launch.
+ Note that this field cannot be set when spec.os.name is windows.
+ items:
+ description: Sysctl defines a
+ kernel parameter to be set
+ properties:
+ name:
+ description: Name of a property
+ to set
+ type: string
+ value:
+ description: Value of a property
+ to set
+ type: string
+ required:
+ - name
+ - value
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ windowsOptions:
+ description: |-
+ The Windows specific settings applied to all containers.
+ If unspecified, the options within a container's SecurityContext will be used.
+ If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.
+ Note that this field cannot be set when spec.os.name is linux.
+ properties:
+ gmsaCredentialSpec:
+ description: |-
+ GMSACredentialSpec is where the GMSA admission webhook
+ (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the
+ GMSA credential spec named by the GMSACredentialSpecName field.
+ type: string
+ gmsaCredentialSpecName:
+ description: GMSACredentialSpecName
+ is the name of the GMSA credential
+ spec to use.
+ type: string
+ hostProcess:
+ description: |-
+ HostProcess determines if a container should be run as a 'Host Process' container.
+ All of a Pod's containers must have the same effective HostProcess value
+ (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers).
+ In addition, if HostProcess is true then HostNetwork must also be set to true.
+ type: boolean
+ runAsUserName:
+ description: |-
+ The UserName in Windows to run the entrypoint of the container process.
+ Defaults to the user specified in image metadata if unspecified.
+ May also be set in PodSecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: string
+ type: object
+ type: object
+ serviceAccount:
+ description: |-
+ DeprecatedServiceAccount is a deprecated alias for ServiceAccountName.
+ Deprecated: Use serviceAccountName instead.
+ type: string
+ serviceAccountName:
+ description: |-
+ ServiceAccountName is the name of the ServiceAccount to use to run this pod.
+ More info: https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/
+ type: string
+ setHostnameAsFQDN:
+ description: |-
+ If true the pod's hostname will be configured as the pod's FQDN, rather than the leaf name (the default).
+ In Linux containers, this means setting the FQDN in the hostname field of the kernel (the nodename field of struct utsname).
+ In Windows containers, this means setting the registry value of hostname for the registry key HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Services\\Tcpip\\Parameters to FQDN.
+ If a pod does not have FQDN, this has no effect.
+ Default to false.
+ type: boolean
+ shareProcessNamespace:
+ description: |-
+ Share a single process namespace between all of the containers in a pod.
+ When this is set containers will be able to view and signal processes from other containers
+ in the same pod, and the first process in each container will not be assigned PID 1.
+ HostPID and ShareProcessNamespace cannot both be set.
+ Optional: Default to false.
+ type: boolean
+ subdomain:
+ description: |-
+ If specified, the fully qualified Pod hostname will be "...svc.".
+ If not specified, the pod will not have a domainname at all.
+ type: string
+ terminationGracePeriodSeconds:
+ description: |-
+ Optional duration in seconds the pod needs to terminate gracefully. May be decreased in delete request.
+ Value must be non-negative integer. The value zero indicates stop immediately via
+ the kill signal (no opportunity to shut down).
+ If this value is nil, the default grace period will be used instead.
+ The grace period is the duration in seconds after the processes running in the pod are sent
+ a termination signal and the time when the processes are forcibly halted with a kill signal.
+ Set this value longer than the expected cleanup time for your process.
+ Defaults to 30 seconds.
+ format: int64
+ type: integer
+ tolerations:
+ description: If specified, the pod's
+ tolerations.
+ items:
+ description: |-
+ The pod this Toleration is attached to tolerates any taint that matches
+ the triple using the matching operator .
+ properties:
+ effect:
+ description: |-
+ Effect indicates the taint effect to match. Empty means match all taint effects.
+ When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute.
+ type: string
+ key:
+ description: |-
+ Key is the taint key that the toleration applies to. Empty means match all taint keys.
+ If the key is empty, operator must be Exists; this combination means to match all values and all keys.
+ type: string
+ operator:
+ description: |-
+ Operator represents a key's relationship to the value.
+ Valid operators are Exists and Equal. Defaults to Equal.
+ Exists is equivalent to wildcard for value, so that a pod can
+ tolerate all taints of a particular category.
+ type: string
+ tolerationSeconds:
+ description: |-
+ TolerationSeconds represents the period of time the toleration (which must be
+ of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default,
+ it is not set, which means tolerate the taint forever (do not evict). Zero and
+ negative values will be treated as 0 (evict immediately) by the system.
+ format: int64
+ type: integer
+ value:
+ description: |-
+ Value is the taint value the toleration matches to.
+ If the operator is Exists, the value should be empty, otherwise just a regular string.
+ type: string
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ topologySpreadConstraints:
+ description: |-
+ TopologySpreadConstraints describes how a group of pods ought to spread across topology
+ domains. Scheduler will schedule pods in a way which abides by the constraints.
+ All topologySpreadConstraints are ANDed.
+ items:
+ description: TopologySpreadConstraint
+ specifies how to spread matching
+ pods among the given topology.
+ properties:
+ labelSelector:
+ description: |-
+ LabelSelector is used to find matching pods.
+ Pods that match this label selector are counted to determine the number of pods
+ in their corresponding topology domain.
+ properties:
+ matchExpressions:
+ description: matchExpressions
+ is a list of label selector
+ requirements. The requirements
+ are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key is
+ the label key that
+ the selector applies
+ to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select the pods over which
+ spreading will be calculated. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are ANDed with labelSelector
+ to select the group of existing pods over which spreading will be calculated
+ for the incoming pod. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector.
+ MatchLabelKeys cannot be set when LabelSelector isn't set.
+ Keys that don't exist in the incoming pod labels will
+ be ignored. A null or empty list means only match against labelSelector.
+
+ This is a beta field and requires the MatchLabelKeysInPodTopologySpread feature gate to be enabled (enabled by default).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ maxSkew:
+ description: |-
+ MaxSkew describes the degree to which pods may be unevenly distributed.
+ When `whenUnsatisfiable=DoNotSchedule`, it is the maximum permitted difference
+ between the number of matching pods in the target topology and the global minimum.
+ The global minimum is the minimum number of matching pods in an eligible domain
+ or zero if the number of eligible domains is less than MinDomains.
+ For example, in a 3-zone cluster, MaxSkew is set to 1, and pods with the same
+ labelSelector spread as 2/2/1:
+ In this case, the global minimum is 1.
+ | zone1 | zone2 | zone3 |
+ | P P | P P | P |
+ - if MaxSkew is 1, incoming pod can only be scheduled to zone3 to become 2/2/2;
+ scheduling it onto zone1(zone2) would make the ActualSkew(3-1) on zone1(zone2)
+ violate MaxSkew(1).
+ - if MaxSkew is 2, incoming pod can be scheduled onto any zone.
+ When `whenUnsatisfiable=ScheduleAnyway`, it is used to give higher precedence
+ to topologies that satisfy it.
+ It's a required field. Default value is 1 and 0 is not allowed.
+ format: int32
+ type: integer
+ minDomains:
+ description: |-
+ MinDomains indicates a minimum number of eligible domains.
+ When the number of eligible domains with matching topology keys is less than minDomains,
+ Pod Topology Spread treats "global minimum" as 0, and then the calculation of Skew is performed.
+ And when the number of eligible domains with matching topology keys equals or greater than minDomains,
+ this value has no effect on scheduling.
+ As a result, when the number of eligible domains is less than minDomains,
+ scheduler won't schedule more than maxSkew Pods to those domains.
+ If value is nil, the constraint behaves as if MinDomains is equal to 1.
+ Valid values are integers greater than 0.
+ When value is not nil, WhenUnsatisfiable must be DoNotSchedule.
+
+ For example, in a 3-zone cluster, MaxSkew is set to 2, MinDomains is set to 5 and pods with the same
+ labelSelector spread as 2/2/2:
+ | zone1 | zone2 | zone3 |
+ | P P | P P | P P |
+ The number of domains is less than 5(MinDomains), so "global minimum" is treated as 0.
+ In this situation, new pod with the same labelSelector cannot be scheduled,
+ because computed skew will be 3(3 - 0) if new Pod is scheduled to any of the three zones,
+ it will violate MaxSkew.
+ format: int32
+ type: integer
+ nodeAffinityPolicy:
+ description: |-
+ NodeAffinityPolicy indicates how we will treat Pod's nodeAffinity/nodeSelector
+ when calculating pod topology spread skew. Options are:
+ - Honor: only nodes matching nodeAffinity/nodeSelector are included in the calculations.
+ - Ignore: nodeAffinity/nodeSelector are ignored. All nodes are included in the calculations.
+
+ If this value is nil, the behavior is equivalent to the Honor policy.
+ This is a beta-level feature default enabled by the NodeInclusionPolicyInPodTopologySpread feature flag.
+ type: string
+ nodeTaintsPolicy:
+ description: |-
+ NodeTaintsPolicy indicates how we will treat node taints when calculating
+ pod topology spread skew. Options are:
+ - Honor: nodes without taints, along with tainted nodes for which the incoming pod
+ has a toleration, are included.
+ - Ignore: node taints are ignored. All nodes are included.
+
+ If this value is nil, the behavior is equivalent to the Ignore policy.
+ This is a beta-level feature default enabled by the NodeInclusionPolicyInPodTopologySpread feature flag.
+ type: string
+ topologyKey:
+ description: |-
+ TopologyKey is the key of node labels. Nodes that have a label with this key
+ and identical values are considered to be in the same topology.
+ We consider each as a "bucket", and try to put balanced number
+ of pods into each bucket.
+ We define a domain as a particular instance of a topology.
+ Also, we define an eligible domain as a domain whose nodes meet the requirements of
+ nodeAffinityPolicy and nodeTaintsPolicy.
+ e.g. If TopologyKey is "kubernetes.io/hostname", each Node is a domain of that topology.
+ And, if TopologyKey is "topology.kubernetes.io/zone", each zone is a domain of that topology.
+ It's a required field.
+ type: string
+ whenUnsatisfiable:
+ description: |-
+ WhenUnsatisfiable indicates how to deal with a pod if it doesn't satisfy
+ the spread constraint.
+ - DoNotSchedule (default) tells the scheduler not to schedule it.
+ - ScheduleAnyway tells the scheduler to schedule the pod in any location,
+ but giving higher precedence to topologies that would help reduce the
+ skew.
+ A constraint is considered "Unsatisfiable" for an incoming pod
+ if and only if every possible node assignment for that pod would violate
+ "MaxSkew" on some topology.
+ For example, in a 3-zone cluster, MaxSkew is set to 1, and pods with the same
+ labelSelector spread as 3/1/1:
+ | zone1 | zone2 | zone3 |
+ | P P P | P | P |
+ If WhenUnsatisfiable is set to DoNotSchedule, incoming pod can only be scheduled
+ to zone2(zone3) to become 3/2/1(3/1/2) as ActualSkew(2-1) on zone2(zone3) satisfies
+ MaxSkew(1). In other words, the cluster can still be imbalanced, but scheduler
+ won't make it *more* imbalanced.
+ It's a required field.
+ type: string
+ required:
+ - maxSkew
+ - topologyKey
+ - whenUnsatisfiable
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - topologyKey
+ - whenUnsatisfiable
+ x-kubernetes-list-type: map
+ volumes:
+ description: |-
+ List of volumes that can be mounted by containers belonging to the pod.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes
+ items:
+ description: Volume represents a named
+ volume in a pod that may be accessed
+ by any container in the pod.
+ properties:
+ awsElasticBlockStore:
+ description: |-
+ awsElasticBlockStore represents an AWS Disk resource that is attached to a
+ kubelet's host machine and then exposed to the pod.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
+ properties:
+ fsType:
+ description: |-
+ fsType is the filesystem type of the volume that you want to mount.
+ Tip: Ensure that the filesystem type is supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
+ type: string
+ partition:
+ description: |-
+ partition is the partition in the volume that you want to mount.
+ If omitted, the default is to mount by volume name.
+ Examples: For volume /dev/sda1, you specify the partition as "1".
+ Similarly, the volume partition for /dev/sda is "0" (or you can leave the property empty).
+ format: int32
+ type: integer
+ readOnly:
+ description: |-
+ readOnly value true will force the readOnly setting in VolumeMounts.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
+ type: boolean
+ volumeID:
+ description: |-
+ volumeID is unique ID of the persistent disk resource in AWS (Amazon EBS volume).
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
+ type: string
+ required:
+ - volumeID
+ type: object
+ azureDisk:
+ description: azureDisk represents
+ an Azure Data Disk mount on
+ the host and bind mount to the
+ pod.
+ properties:
+ cachingMode:
+ description: 'cachingMode
+ is the Host Caching mode:
+ None, Read Only, Read Write.'
+ type: string
+ diskName:
+ description: diskName is the
+ Name of the data disk in
+ the blob storage
+ type: string
+ diskURI:
+ description: diskURI is the
+ URI of data disk in the
+ blob storage
+ type: string
+ fsType:
+ default: ext4
+ description: |-
+ fsType is Filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ type: string
+ kind:
+ description: 'kind expected
+ values are Shared: multiple
+ blob disks per storage account Dedicated:
+ single blob disk per storage
+ account Managed: azure
+ managed data disk (only
+ in managed availability
+ set). defaults to shared'
+ type: string
+ readOnly:
+ default: false
+ description: |-
+ readOnly Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ type: boolean
+ required:
+ - diskName
+ - diskURI
+ type: object
+ azureFile:
+ description: azureFile represents
+ an Azure File Service mount
+ on the host and bind mount to
+ the pod.
+ properties:
+ readOnly:
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ type: boolean
+ secretName:
+ description: secretName is
+ the name of secret that
+ contains Azure Storage Account
+ Name and Key
+ type: string
+ shareName:
+ description: shareName is
+ the azure share Name
+ type: string
+ required:
+ - secretName
+ - shareName
+ type: object
+ cephfs:
+ description: cephFS represents
+ a Ceph FS mount on the host
+ that shares a pod's lifetime
+ properties:
+ monitors:
+ description: |-
+ monitors is Required: Monitors is a collection of Ceph monitors
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: 'path is Optional:
+ Used as the mounted root,
+ rather than the full Ceph
+ tree, default is /'
+ type: string
+ readOnly:
+ description: |-
+ readOnly is Optional: Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
+ type: boolean
+ secretFile:
+ description: |-
+ secretFile is Optional: SecretFile is the path to key ring for User, default is /etc/ceph/user.secret
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
+ type: string
+ secretRef:
+ description: |-
+ secretRef is Optional: SecretRef is reference to the authentication secret for User, default is empty.
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ user:
+ description: |-
+ user is optional: User is the rados user name, default is admin
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
+ type: string
+ required:
+ - monitors
+ type: object
+ cinder:
+ description: |-
+ cinder represents a cinder volume attached and mounted on kubelets host machine.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
+ properties:
+ fsType:
+ description: |-
+ fsType is the filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
+ type: string
+ readOnly:
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
+ type: boolean
+ secretRef:
+ description: |-
+ secretRef is optional: points to a secret object containing parameters used to connect
+ to OpenStack.
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ volumeID:
+ description: |-
+ volumeID used to identify the volume in cinder.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
+ type: string
+ required:
+ - volumeID
+ type: object
+ configMap:
+ description: configMap represents
+ a configMap that should populate
+ this volume
+ properties:
+ defaultMode:
+ description: |-
+ defaultMode is optional: mode bits used to set permissions on created files by default.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ Defaults to 0644.
+ Directories within the path are not affected by this setting.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
+ format: int32
+ type: integer
+ items:
+ description: |-
+ items if unspecified, each key-value pair in the Data field of the referenced
+ ConfigMap will be projected into the volume as a file whose name is the
+ key and content is the value. If specified, the listed keys will be
+ projected into the specified paths, and unlisted keys will not be
+ present. If a key is specified which is not present in the ConfigMap,
+ the volume setup will error unless it is marked optional. Paths must be
+ relative and may not contain the '..' path or start with '..'.
+ items:
+ description: Maps a string
+ key to a path within a
+ volume.
+ properties:
+ key:
+ description: key is
+ the key to project.
+ type: string
+ mode:
+ description: |-
+ mode is Optional: mode bits used to set permissions on this file.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ If not specified, the volume defaultMode will be used.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
+ format: int32
+ type: integer
+ path:
+ description: |-
+ path is the relative path of the file to map the key to.
+ May not be an absolute path.
+ May not contain the path element '..'.
+ May not start with the string '..'.
+ type: string
+ required:
+ - key
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: optional specify
+ whether the ConfigMap or
+ its keys must be defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ csi:
+ description: csi (Container Storage
+ Interface) represents ephemeral
+ storage that is handled by certain
+ external CSI drivers (Beta feature).
+ properties:
+ driver:
+ description: |-
+ driver is the name of the CSI driver that handles this volume.
+ Consult with your admin for the correct name as registered in the cluster.
+ type: string
+ fsType:
+ description: |-
+ fsType to mount. Ex. "ext4", "xfs", "ntfs".
+ If not provided, the empty value is passed to the associated CSI driver
+ which will determine the default filesystem to apply.
+ type: string
+ nodePublishSecretRef:
+ description: |-
+ nodePublishSecretRef is a reference to the secret object containing
+ sensitive information to pass to the CSI driver to complete the CSI
+ NodePublishVolume and NodeUnpublishVolume calls.
+ This field is optional, and may be empty if no secret is required. If the
+ secret object contains more than one secret, all secret references are passed.
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ readOnly:
+ description: |-
+ readOnly specifies a read-only configuration for the volume.
+ Defaults to false (read/write).
+ type: boolean
+ volumeAttributes:
+ additionalProperties:
+ type: string
+ description: |-
+ volumeAttributes stores driver-specific properties that are passed to the CSI
+ driver. Consult your driver's documentation for supported values.
+ type: object
+ required:
+ - driver
+ type: object
+ downwardAPI:
+ description: downwardAPI represents
+ downward API about the pod that
+ should populate this volume
+ properties:
+ defaultMode:
+ description: |-
+ Optional: mode bits to use on created files by default. Must be a
+ Optional: mode bits used to set permissions on created files by default.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ Defaults to 0644.
+ Directories within the path are not affected by this setting.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
+ format: int32
+ type: integer
+ items:
+ description: Items is a list
+ of downward API volume file
+ items:
+ description: DownwardAPIVolumeFile
+ represents information
+ to create the file containing
+ the pod field
+ properties:
+ fieldRef:
+ description: 'Required:
+ Selects a field of
+ the pod: only annotations,
+ labels, name, namespace
+ and uid are supported.'
+ properties:
+ apiVersion:
+ description: Version
+ of the schema
+ the FieldPath
+ is written in
+ terms of, defaults
+ to "v1".
+ type: string
+ fieldPath:
+ description: Path
+ of the field to
+ select in the
+ specified API
+ version.
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ mode:
+ description: |-
+ Optional: mode bits used to set permissions on this file, must be an octal value
+ between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ If not specified, the volume defaultMode will be used.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
+ format: int32
+ type: integer
+ path:
+ description: 'Required:
+ Path is the relative
+ path name of the file
+ to be created. Must
+ not be absolute or
+ contain the ''..''
+ path. Must be utf-8
+ encoded. The first
+ item of the relative
+ path must not start
+ with ''..'''
+ type: string
+ resourceFieldRef:
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, requests.cpu and requests.memory) are currently supported.
+ properties:
+ containerName:
+ description: 'Container
+ name: required
+ for volumes, optional
+ for env vars'
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ description: Specifies
+ the output format
+ of the exposed
+ resources, defaults
+ to "1"
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ description: 'Required:
+ resource to select'
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ required:
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ emptyDir:
+ description: |-
+ emptyDir represents a temporary directory that shares a pod's lifetime.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
+ properties:
+ medium:
+ description: |-
+ medium represents what type of storage medium should back this directory.
+ The default is "" which means to use the node's default medium.
+ Must be an empty string (default) or Memory.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
+ type: string
+ sizeLimit:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ sizeLimit is the total amount of local storage required for this EmptyDir volume.
+ The size limit is also applicable for memory medium.
+ The maximum usage on memory medium EmptyDir would be the minimum value between
+ the SizeLimit specified here and the sum of memory limits of all containers in a pod.
+ The default is nil which means that the limit is undefined.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ ephemeral:
+ description: |-
+ ephemeral represents a volume that is handled by a cluster storage driver.
+ The volume's lifecycle is tied to the pod that defines it - it will be created before the pod starts,
+ and deleted when the pod is removed.
+
+ Use this if:
+ a) the volume is only needed while the pod runs,
+ b) features of normal volumes like restoring from snapshot or capacity
+ tracking are needed,
+ c) the storage driver is specified through a storage class, and
+ d) the storage driver supports dynamic volume provisioning through
+ a PersistentVolumeClaim (see EphemeralVolumeSource for more
+ information on the connection between this volume type
+ and PersistentVolumeClaim).
+
+ Use PersistentVolumeClaim or one of the vendor-specific
+ APIs for volumes that persist for longer than the lifecycle
+ of an individual pod.
+
+ Use CSI for light-weight local ephemeral volumes if the CSI driver is meant to
+ be used that way - see the documentation of the driver for
+ more information.
+
+ A pod can use both types of ephemeral volumes and
+ persistent volumes at the same time.
+ properties:
+ volumeClaimTemplate:
+ description: |-
+ Will be used to create a stand-alone PVC to provision the volume.
+ The pod in which this EphemeralVolumeSource is embedded will be the
+ owner of the PVC, i.e. the PVC will be deleted together with the
+ pod. The name of the PVC will be `-` where
+ `` is the name from the `PodSpec.Volumes` array
+ entry. Pod validation will reject the pod if the concatenated name
+ is not valid for a PVC (for example, too long).
+
+ An existing PVC with that name that is not owned by the pod
+ will *not* be used for the pod to avoid using an unrelated
+ volume by mistake. Starting the pod is then blocked until
+ the unrelated PVC is removed. If such a pre-created PVC is
+ meant to be used by the pod, the PVC has to updated with an
+ owner reference to the pod once the pod exists. Normally
+ this should not be necessary, but it may be useful when
+ manually reconstructing a broken cluster.
+
+ This field is read-only and no changes will be made by Kubernetes
+ to the PVC after it has been created.
+
+ Required, must not be nil.
+ properties:
+ metadata:
+ description: |-
+ May contain labels and annotations that will be copied into the PVC
+ when creating it. No other fields are allowed and will be rejected during
+ validation.
+ properties:
+ annotations:
+ additionalProperties:
+ type: string
+ type: object
+ finalizers:
+ items:
+ type: string
+ type: array
+ labels:
+ additionalProperties:
+ type: string
+ type: object
+ name:
+ type: string
+ namespace:
+ type: string
+ type: object
+ spec:
+ description: |-
+ The specification for the PersistentVolumeClaim. The entire content is
+ copied unchanged into the PVC that gets created from this
+ template. The same fields as in a PersistentVolumeClaim
+ are also valid here.
+ properties:
+ accessModes:
+ description: |-
+ accessModes contains the desired access modes the volume should have.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ dataSource:
+ description: |-
+ dataSource field can be used to specify either:
+ * An existing VolumeSnapshot object (snapshot.storage.k8s.io/VolumeSnapshot)
+ * An existing PVC (PersistentVolumeClaim)
+ If the provisioner or an external controller can support the specified data source,
+ it will create a new volume based on the contents of the specified data source.
+ When the AnyVolumeDataSource feature gate is enabled, dataSource contents will be copied to dataSourceRef,
+ and dataSourceRef contents will be copied to dataSource when dataSourceRef.namespace is not specified.
+ If the namespace is specified, then dataSourceRef will not be copied to dataSource.
+ properties:
+ apiGroup:
+ description: |-
+ APIGroup is the group for the resource being referenced.
+ If APIGroup is not specified, the specified Kind must be in the core API group.
+ For any other third-party types, APIGroup is required.
+ type: string
+ kind:
+ description: Kind
+ is the type
+ of resource
+ being referenced
+ type: string
+ name:
+ description: Name
+ is the name
+ of resource
+ being referenced
+ type: string
+ required:
+ - kind
+ - name
+ type: object
+ x-kubernetes-map-type: atomic
+ dataSourceRef:
+ description: |-
+ dataSourceRef specifies the object from which to populate the volume with data, if a non-empty
+ volume is desired. This may be any object from a non-empty API group (non
+ core object) or a PersistentVolumeClaim object.
+ When this field is specified, volume binding will only succeed if the type of
+ the specified object matches some installed volume populator or dynamic
+ provisioner.
+ This field will replace the functionality of the dataSource field and as such
+ if both fields are non-empty, they must have the same value. For backwards
+ compatibility, when namespace isn't specified in dataSourceRef,
+ both fields (dataSource and dataSourceRef) will be set to the same
+ value automatically if one of them is empty and the other is non-empty.
+ When namespace is specified in dataSourceRef,
+ dataSource isn't set to the same value and must be empty.
+ There are three important differences between dataSource and dataSourceRef:
+ * While dataSource only allows two specific types of objects, dataSourceRef
+ allows any non-core object, as well as PersistentVolumeClaim objects.
+ * While dataSource ignores disallowed values (dropping them), dataSourceRef
+ preserves all values, and generates an error if a disallowed value is
+ specified.
+ * While dataSource only allows local objects, dataSourceRef allows objects
+ in any namespaces.
+ (Beta) Using this field requires the AnyVolumeDataSource feature gate to be enabled.
+ (Alpha) Using the namespace field of dataSourceRef requires the CrossNamespaceVolumeDataSource feature gate to be enabled.
+ properties:
+ apiGroup:
+ description: |-
+ APIGroup is the group for the resource being referenced.
+ If APIGroup is not specified, the specified Kind must be in the core API group.
+ For any other third-party types, APIGroup is required.
+ type: string
+ kind:
+ description: Kind
+ is the type
+ of resource
+ being referenced
+ type: string
+ name:
+ description: Name
+ is the name
+ of resource
+ being referenced
+ type: string
+ namespace:
+ description: |-
+ Namespace is the namespace of resource being referenced
+ Note that when a namespace is specified, a gateway.networking.k8s.io/ReferenceGrant object is required in the referent namespace to allow that namespace's owner to accept the reference. See the ReferenceGrant documentation for details.
+ (Alpha) This field requires the CrossNamespaceVolumeDataSource feature gate to be enabled.
+ type: string
+ required:
+ - kind
+ - name
+ type: object
+ resources:
+ description: |-
+ resources represents the minimum resources the volume should have.
+ If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements
+ that are lower than previous value but must still be higher than capacity recorded in the
+ status field of the claim.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
+ properties:
+ limits:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ type: object
+ requests:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ type: object
+ type: object
+ selector:
+ description: selector
+ is a label query
+ over volumes to
+ consider for binding.
+ properties:
+ matchExpressions:
+ description: matchExpressions
+ is a list of
+ label selector
+ requirements.
+ The requirements
+ are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key
+ is the
+ label
+ key that
+ the selector
+ applies
+ to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ storageClassName:
+ description: |-
+ storageClassName is the name of the StorageClass required by the claim.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1
+ type: string
+ volumeAttributesClassName:
+ description: |-
+ volumeAttributesClassName may be used to set the VolumeAttributesClass used by this claim.
+ If specified, the CSI driver will create or update the volume with the attributes defined
+ in the corresponding VolumeAttributesClass. This has a different purpose than storageClassName,
+ it can be changed after the claim is created. An empty string value means that no VolumeAttributesClass
+ will be applied to the claim but it's not allowed to reset this field to empty string once it is set.
+ If unspecified and the PersistentVolumeClaim is unbound, the default VolumeAttributesClass
+ will be set by the persistentvolume controller if it exists.
+ If the resource referred to by volumeAttributesClass does not exist, this PersistentVolumeClaim will be
+ set to a Pending state, as reflected by the modifyVolumeStatus field, until such as a resource
+ exists.
+ More info: https://kubernetes.io/docs/concepts/storage/volume-attributes-classes/
+ (Beta) Using this field requires the VolumeAttributesClass feature gate to be enabled (off by default).
+ type: string
+ volumeMode:
+ description: |-
+ volumeMode defines what type of volume is required by the claim.
+ Value of Filesystem is implied when not included in claim spec.
+ type: string
+ volumeName:
+ description: volumeName
+ is the binding reference
+ to the PersistentVolume
+ backing this claim.
+ type: string
+ type: object
+ required:
+ - spec
+ type: object
+ type: object
+ fc:
+ description: fc represents a Fibre
+ Channel resource that is attached
+ to a kubelet's host machine
+ and then exposed to the pod.
+ properties:
+ fsType:
+ description: |-
+ fsType is the filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ type: string
+ lun:
+ description: 'lun is Optional:
+ FC target lun number'
+ format: int32
+ type: integer
+ readOnly:
+ description: |-
+ readOnly is Optional: Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ type: boolean
+ targetWWNs:
+ description: 'targetWWNs is
+ Optional: FC target worldwide
+ names (WWNs)'
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ wwids:
+ description: |-
+ wwids Optional: FC volume world wide identifiers (wwids)
+ Either wwids or combination of targetWWNs and lun must be set, but not both simultaneously.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ flexVolume:
+ description: |-
+ flexVolume represents a generic volume resource that is
+ provisioned/attached using an exec based plugin.
+ properties:
+ driver:
+ description: driver is the
+ name of the driver to use
+ for this volume.
+ type: string
+ fsType:
+ description: |-
+ fsType is the filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Ex. "ext4", "xfs", "ntfs". The default filesystem depends on FlexVolume script.
+ type: string
+ options:
+ additionalProperties:
+ type: string
+ description: 'options is Optional:
+ this field holds extra command
+ options if any.'
+ type: object
+ readOnly:
+ description: |-
+ readOnly is Optional: defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ type: boolean
+ secretRef:
+ description: |-
+ secretRef is Optional: secretRef is reference to the secret object containing
+ sensitive information to pass to the plugin scripts. This may be
+ empty if no secret object is specified. If the secret object
+ contains more than one secret, all secrets are passed to the plugin
+ scripts.
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ required:
+ - driver
+ type: object
+ flocker:
+ description: flocker represents
+ a Flocker volume attached to
+ a kubelet's host machine. This
+ depends on the Flocker control
+ service being running
+ properties:
+ datasetName:
+ description: |-
+ datasetName is Name of the dataset stored as metadata -> name on the dataset for Flocker
+ should be considered as deprecated
+ type: string
+ datasetUUID:
+ description: datasetUUID is
+ the UUID of the dataset.
+ This is unique identifier
+ of a Flocker dataset
+ type: string
+ type: object
+ gcePersistentDisk:
+ description: |-
+ gcePersistentDisk represents a GCE Disk resource that is attached to a
+ kubelet's host machine and then exposed to the pod.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
+ properties:
+ fsType:
+ description: |-
+ fsType is filesystem type of the volume that you want to mount.
+ Tip: Ensure that the filesystem type is supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
+ type: string
+ partition:
+ description: |-
+ partition is the partition in the volume that you want to mount.
+ If omitted, the default is to mount by volume name.
+ Examples: For volume /dev/sda1, you specify the partition as "1".
+ Similarly, the volume partition for /dev/sda is "0" (or you can leave the property empty).
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
+ format: int32
+ type: integer
+ pdName:
+ description: |-
+ pdName is unique name of the PD resource in GCE. Used to identify the disk in GCE.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
+ type: string
+ readOnly:
+ description: |-
+ readOnly here will force the ReadOnly setting in VolumeMounts.
+ Defaults to false.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
+ type: boolean
+ required:
+ - pdName
+ type: object
+ gitRepo:
+ description: |-
+ gitRepo represents a git repository at a particular revision.
+ DEPRECATED: GitRepo is deprecated. To provision a container with a git repo, mount an
+ EmptyDir into an InitContainer that clones the repo using git, then mount the EmptyDir
+ into the Pod's container.
+ properties:
+ directory:
+ description: |-
+ directory is the target directory name.
+ Must not contain or start with '..'. If '.' is supplied, the volume directory will be the
+ git repository. Otherwise, if specified, the volume will contain the git repository in
+ the subdirectory with the given name.
+ type: string
+ repository:
+ description: repository is
+ the URL
+ type: string
+ revision:
+ description: revision is the
+ commit hash for the specified
+ revision.
+ type: string
+ required:
+ - repository
+ type: object
+ glusterfs:
+ description: |-
+ glusterfs represents a Glusterfs mount on the host that shares a pod's lifetime.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md
+ properties:
+ endpoints:
+ description: |-
+ endpoints is the endpoint name that details Glusterfs topology.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
+ type: string
+ path:
+ description: |-
+ path is the Glusterfs volume path.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
+ type: string
+ readOnly:
+ description: |-
+ readOnly here will force the Glusterfs volume to be mounted with read-only permissions.
+ Defaults to false.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
+ type: boolean
+ required:
+ - endpoints
+ - path
+ type: object
+ hostPath:
+ description: |-
+ hostPath represents a pre-existing file or directory on the host
+ machine that is directly exposed to the container. This is generally
+ used for system agents or other privileged things that are allowed
+ to see the host machine. Most containers will NOT need this.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath
+ properties:
+ path:
+ description: |-
+ path of the directory on the host.
+ If the path is a symlink, it will follow the link to the real path.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath
+ type: string
+ type:
+ description: |-
+ type for HostPath Volume
+ Defaults to ""
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath
+ type: string
+ required:
+ - path
+ type: object
+ image:
+ description: |-
+ image represents an OCI object (a container image or artifact) pulled and mounted on the kubelet's host machine.
+ The volume is resolved at pod startup depending on which PullPolicy value is provided:
+
+ - Always: the kubelet always attempts to pull the reference. Container creation will fail If the pull fails.
+ - Never: the kubelet never pulls the reference and only uses a local image or artifact. Container creation will fail if the reference isn't present.
+ - IfNotPresent: the kubelet pulls if the reference isn't already present on disk. Container creation will fail if the reference isn't present and the pull fails.
+
+ The volume gets re-resolved if the pod gets deleted and recreated, which means that new remote content will become available on pod recreation.
+ A failure to resolve or pull the image during pod startup will block containers from starting and may add significant latency. Failures will be retried using normal volume backoff and will be reported on the pod reason and message.
+ The types of objects that may be mounted by this volume are defined by the container runtime implementation on a host machine and at minimum must include all valid types supported by the container image field.
+ The OCI object gets mounted in a single directory (spec.containers[*].volumeMounts.mountPath) by merging the manifest layers in the same way as for container images.
+ The volume will be mounted read-only (ro) and non-executable files (noexec).
+ Sub path mounts for containers are not supported (spec.containers[*].volumeMounts.subpath).
+ The field spec.securityContext.fsGroupChangePolicy has no effect on this volume type.
+ properties:
+ pullPolicy:
+ description: |-
+ Policy for pulling OCI objects. Possible values are:
+ Always: the kubelet always attempts to pull the reference. Container creation will fail If the pull fails.
+ Never: the kubelet never pulls the reference and only uses a local image or artifact. Container creation will fail if the reference isn't present.
+ IfNotPresent: the kubelet pulls if the reference isn't already present on disk. Container creation will fail if the reference isn't present and the pull fails.
+ Defaults to Always if :latest tag is specified, or IfNotPresent otherwise.
+ type: string
+ reference:
+ description: |-
+ Required: Image or artifact reference to be used.
+ Behaves in the same way as pod.spec.containers[*].image.
+ Pull secrets will be assembled in the same way as for the container image by looking up node credentials, SA image pull secrets, and pod spec image pull secrets.
+ More info: https://kubernetes.io/docs/concepts/containers/images
+ This field is optional to allow higher level config management to default or override
+ container images in workload controllers like Deployments and StatefulSets.
+ type: string
+ type: object
+ iscsi:
+ description: |-
+ iscsi represents an ISCSI Disk resource that is attached to a
+ kubelet's host machine and then exposed to the pod.
+ More info: https://examples.k8s.io/volumes/iscsi/README.md
+ properties:
+ chapAuthDiscovery:
+ description: chapAuthDiscovery
+ defines whether support
+ iSCSI Discovery CHAP authentication
+ type: boolean
+ chapAuthSession:
+ description: chapAuthSession
+ defines whether support
+ iSCSI Session CHAP authentication
+ type: boolean
+ fsType:
+ description: |-
+ fsType is the filesystem type of the volume that you want to mount.
+ Tip: Ensure that the filesystem type is supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#iscsi
+ type: string
+ initiatorName:
+ description: |-
+ initiatorName is the custom iSCSI Initiator Name.
+ If initiatorName is specified with iscsiInterface simultaneously, new iSCSI interface
+ : will be created for the connection.
+ type: string
+ iqn:
+ description: iqn is the target
+ iSCSI Qualified Name.
+ type: string
+ iscsiInterface:
+ default: default
+ description: |-
+ iscsiInterface is the interface Name that uses an iSCSI transport.
+ Defaults to 'default' (tcp).
+ type: string
+ lun:
+ description: lun represents
+ iSCSI Target Lun number.
+ format: int32
+ type: integer
+ portals:
+ description: |-
+ portals is the iSCSI Target Portal List. The portal is either an IP or ip_addr:port if the port
+ is other than default (typically TCP ports 860 and 3260).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ readOnly:
+ description: |-
+ readOnly here will force the ReadOnly setting in VolumeMounts.
+ Defaults to false.
+ type: boolean
+ secretRef:
+ description: secretRef is
+ the CHAP Secret for iSCSI
+ target and initiator authentication
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ targetPortal:
+ description: |-
+ targetPortal is iSCSI Target Portal. The Portal is either an IP or ip_addr:port if the port
+ is other than default (typically TCP ports 860 and 3260).
+ type: string
+ required:
+ - iqn
+ - lun
+ - targetPortal
+ type: object
+ name:
+ description: |-
+ name of the volume.
+ Must be a DNS_LABEL and unique within the pod.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ nfs:
+ description: |-
+ nfs represents an NFS mount on the host that shares a pod's lifetime
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
+ properties:
+ path:
+ description: |-
+ path that is exported by the NFS server.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
+ type: string
+ readOnly:
+ description: |-
+ readOnly here will force the NFS export to be mounted with read-only permissions.
+ Defaults to false.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
+ type: boolean
+ server:
+ description: |-
+ server is the hostname or IP address of the NFS server.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
+ type: string
+ required:
+ - path
+ - server
+ type: object
+ persistentVolumeClaim:
+ description: |-
+ persistentVolumeClaimVolumeSource represents a reference to a
+ PersistentVolumeClaim in the same namespace.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
+ properties:
+ claimName:
+ description: |-
+ claimName is the name of a PersistentVolumeClaim in the same namespace as the pod using this volume.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
+ type: string
+ readOnly:
+ description: |-
+ readOnly Will force the ReadOnly setting in VolumeMounts.
+ Default false.
+ type: boolean
+ required:
+ - claimName
+ type: object
+ photonPersistentDisk:
+ description: photonPersistentDisk
+ represents a PhotonController
+ persistent disk attached and
+ mounted on kubelets host machine
+ properties:
+ fsType:
+ description: |-
+ fsType is the filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ type: string
+ pdID:
+ description: pdID is the ID
+ that identifies Photon Controller
+ persistent disk
+ type: string
+ required:
+ - pdID
+ type: object
+ portworxVolume:
+ description: portworxVolume represents
+ a portworx volume attached and
+ mounted on kubelets host machine
+ properties:
+ fsType:
+ description: |-
+ fSType represents the filesystem type to mount
+ Must be a filesystem type supported by the host operating system.
+ Ex. "ext4", "xfs". Implicitly inferred to be "ext4" if unspecified.
+ type: string
+ readOnly:
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ type: boolean
+ volumeID:
+ description: volumeID uniquely
+ identifies a Portworx volume
+ type: string
+ required:
+ - volumeID
+ type: object
+ projected:
+ description: projected items for
+ all in one resources secrets,
+ configmaps, and downward API
+ properties:
+ defaultMode:
+ description: |-
+ defaultMode are the mode bits used to set permissions on created files by default.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ Directories within the path are not affected by this setting.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
+ format: int32
+ type: integer
+ sources:
+ description: |-
+ sources is the list of volume projections. Each entry in this list
+ handles one source.
+ items:
+ description: |-
+ Projection that may be projected along with other supported volume types.
+ Exactly one of these fields must be set.
+ properties:
+ clusterTrustBundle:
+ description: |-
+ ClusterTrustBundle allows a pod to access the `.spec.trustBundle` field
+ of ClusterTrustBundle objects in an auto-updating file.
+
+ Alpha, gated by the ClusterTrustBundleProjection feature gate.
+
+ ClusterTrustBundle objects can either be selected by name, or by the
+ combination of signer name and a label selector.
+
+ Kubelet performs aggressive normalization of the PEM contents written
+ into the pod filesystem. Esoteric PEM features such as inter-block
+ comments and block headers are stripped. Certificates are deduplicated.
+ The ordering of certificates within the file is arbitrary, and Kubelet
+ may change the order over time.
+ properties:
+ labelSelector:
+ description: |-
+ Select all ClusterTrustBundles that match this label selector. Only has
+ effect if signerName is set. Mutually-exclusive with name. If unset,
+ interpreted as "match nothing". If set but empty, interpreted as "match
+ everything".
+ properties:
+ matchExpressions:
+ description: matchExpressions
+ is a list
+ of label selector
+ requirements.
+ The requirements
+ are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key
+ is the
+ label
+ key
+ that
+ the
+ selector
+ applies
+ to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ name:
+ description: |-
+ Select a single ClusterTrustBundle by object name. Mutually-exclusive
+ with signerName and labelSelector.
+ type: string
+ optional:
+ description: |-
+ If true, don't block pod startup if the referenced ClusterTrustBundle(s)
+ aren't available. If using name, then the named ClusterTrustBundle is
+ allowed not to exist. If using signerName, then the combination of
+ signerName and labelSelector is allowed to match zero
+ ClusterTrustBundles.
+ type: boolean
+ path:
+ description: Relative
+ path from the
+ volume root to
+ write the bundle.
+ type: string
+ signerName:
+ description: |-
+ Select all ClusterTrustBundles that match this signer name.
+ Mutually-exclusive with name. The contents of all selected
+ ClusterTrustBundles will be unified and deduplicated.
+ type: string
+ required:
+ - path
+ type: object
+ configMap:
+ description: configMap
+ information about
+ the configMap data
+ to project
+ properties:
+ items:
+ description: |-
+ items if unspecified, each key-value pair in the Data field of the referenced
+ ConfigMap will be projected into the volume as a file whose name is the
+ key and content is the value. If specified, the listed keys will be
+ projected into the specified paths, and unlisted keys will not be
+ present. If a key is specified which is not present in the ConfigMap,
+ the volume setup will error unless it is marked optional. Paths must be
+ relative and may not contain the '..' path or start with '..'.
+ items:
+ description: Maps
+ a string key
+ to a path within
+ a volume.
+ properties:
+ key:
+ description: key
+ is the key
+ to project.
+ type: string
+ mode:
+ description: |-
+ mode is Optional: mode bits used to set permissions on this file.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ If not specified, the volume defaultMode will be used.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
+ format: int32
+ type: integer
+ path:
+ description: |-
+ path is the relative path of the file to map the key to.
+ May not be an absolute path.
+ May not contain the path element '..'.
+ May not start with the string '..'.
+ type: string
+ required:
+ - key
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: optional
+ specify whether
+ the ConfigMap
+ or its keys must
+ be defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ downwardAPI:
+ description: downwardAPI
+ information about
+ the downwardAPI data
+ to project
+ properties:
+ items:
+ description: Items
+ is a list of DownwardAPIVolume
+ file
+ items:
+ description: DownwardAPIVolumeFile
+ represents information
+ to create the
+ file containing
+ the pod field
+ properties:
+ fieldRef:
+ description: 'Required:
+ Selects
+ a field
+ of the pod:
+ only annotations,
+ labels,
+ name, namespace
+ and uid
+ are supported.'
+ properties:
+ apiVersion:
+ description: Version
+ of the
+ schema
+ the
+ FieldPath
+ is written
+ in terms
+ of,
+ defaults
+ to "v1".
+ type: string
+ fieldPath:
+ description: Path
+ of the
+ field
+ to select
+ in the
+ specified
+ API
+ version.
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ mode:
+ description: |-
+ Optional: mode bits used to set permissions on this file, must be an octal value
+ between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ If not specified, the volume defaultMode will be used.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
+ format: int32
+ type: integer
+ path:
+ description: 'Required:
+ Path is the
+ relative
+ path name
+ of the file
+ to be created.
+ Must not
+ be absolute
+ or contain
+ the ''..''
+ path. Must
+ be utf-8
+ encoded.
+ The first
+ item of
+ the relative
+ path must
+ not start
+ with ''..'''
+ type: string
+ resourceFieldRef:
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, requests.cpu and requests.memory) are currently supported.
+ properties:
+ containerName:
+ description: 'Container
+ name:
+ required
+ for
+ volumes,
+ optional
+ for
+ env
+ vars'
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ description: Specifies
+ the
+ output
+ format
+ of the
+ exposed
+ resources,
+ defaults
+ to "1"
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ description: 'Required:
+ resource
+ to select'
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ required:
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ secret:
+ description: secret
+ information about
+ the secret data to
+ project
+ properties:
+ items:
+ description: |-
+ items if unspecified, each key-value pair in the Data field of the referenced
+ Secret will be projected into the volume as a file whose name is the
+ key and content is the value. If specified, the listed keys will be
+ projected into the specified paths, and unlisted keys will not be
+ present. If a key is specified which is not present in the Secret,
+ the volume setup will error unless it is marked optional. Paths must be
+ relative and may not contain the '..' path or start with '..'.
+ items:
+ description: Maps
+ a string key
+ to a path within
+ a volume.
+ properties:
+ key:
+ description: key
+ is the key
+ to project.
+ type: string
+ mode:
+ description: |-
+ mode is Optional: mode bits used to set permissions on this file.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ If not specified, the volume defaultMode will be used.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
+ format: int32
+ type: integer
+ path:
+ description: |-
+ path is the relative path of the file to map the key to.
+ May not be an absolute path.
+ May not contain the path element '..'.
+ May not start with the string '..'.
+ type: string
+ required:
+ - key
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: optional
+ field specify
+ whether the Secret
+ or its key must
+ be defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ serviceAccountToken:
+ description: serviceAccountToken
+ is information about
+ the serviceAccountToken
+ data to project
+ properties:
+ audience:
+ description: |-
+ audience is the intended audience of the token. A recipient of a token
+ must identify itself with an identifier specified in the audience of the
+ token, and otherwise should reject the token. The audience defaults to the
+ identifier of the apiserver.
+ type: string
+ expirationSeconds:
+ description: |-
+ expirationSeconds is the requested duration of validity of the service
+ account token. As the token approaches expiration, the kubelet volume
+ plugin will proactively rotate the service account token. The kubelet will
+ start trying to rotate the token if the token is older than 80 percent of
+ its time to live or if the token is older than 24 hours.Defaults to 1 hour
+ and must be at least 10 minutes.
+ format: int64
+ type: integer
+ path:
+ description: |-
+ path is the path relative to the mount point of the file to project the
+ token into.
+ type: string
+ required:
+ - path
+ type: object
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ quobyte:
+ description: quobyte represents
+ a Quobyte mount on the host
+ that shares a pod's lifetime
+ properties:
+ group:
+ description: |-
+ group to map volume access to
+ Default is no group
+ type: string
+ readOnly:
+ description: |-
+ readOnly here will force the Quobyte volume to be mounted with read-only permissions.
+ Defaults to false.
+ type: boolean
+ registry:
+ description: |-
+ registry represents a single or multiple Quobyte Registry services
+ specified as a string as host:port pair (multiple entries are separated with commas)
+ which acts as the central registry for volumes
+ type: string
+ tenant:
+ description: |-
+ tenant owning the given Quobyte volume in the Backend
+ Used with dynamically provisioned Quobyte volumes, value is set by the plugin
+ type: string
+ user:
+ description: |-
+ user to map volume access to
+ Defaults to serivceaccount user
+ type: string
+ volume:
+ description: volume is a string
+ that references an already
+ created Quobyte volume by
+ name.
+ type: string
+ required:
+ - registry
+ - volume
+ type: object
+ rbd:
+ description: |-
+ rbd represents a Rados Block Device mount on the host that shares a pod's lifetime.
+ More info: https://examples.k8s.io/volumes/rbd/README.md
+ properties:
+ fsType:
+ description: |-
+ fsType is the filesystem type of the volume that you want to mount.
+ Tip: Ensure that the filesystem type is supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#rbd
+ type: string
+ image:
+ description: |-
+ image is the rados image name.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
+ type: string
+ keyring:
+ default: /etc/ceph/keyring
+ description: |-
+ keyring is the path to key ring for RBDUser.
+ Default is /etc/ceph/keyring.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
+ type: string
+ monitors:
+ description: |-
+ monitors is a collection of Ceph monitors.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ pool:
+ default: rbd
+ description: |-
+ pool is the rados pool name.
+ Default is rbd.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
+ type: string
+ readOnly:
+ description: |-
+ readOnly here will force the ReadOnly setting in VolumeMounts.
+ Defaults to false.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
+ type: boolean
+ secretRef:
+ description: |-
+ secretRef is name of the authentication secret for RBDUser. If provided
+ overrides keyring.
+ Default is nil.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ user:
+ default: admin
+ description: |-
+ user is the rados user name.
+ Default is admin.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
+ type: string
+ required:
+ - image
+ - monitors
+ type: object
+ scaleIO:
+ description: scaleIO represents
+ a ScaleIO persistent volume
+ attached and mounted on Kubernetes
+ nodes.
+ properties:
+ fsType:
+ default: xfs
+ description: |-
+ fsType is the filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Ex. "ext4", "xfs", "ntfs".
+ Default is "xfs".
+ type: string
+ gateway:
+ description: gateway is the
+ host address of the ScaleIO
+ API Gateway.
+ type: string
+ protectionDomain:
+ description: protectionDomain
+ is the name of the ScaleIO
+ Protection Domain for the
+ configured storage.
+ type: string
+ readOnly:
+ description: |-
+ readOnly Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ type: boolean
+ secretRef:
+ description: |-
+ secretRef references to the secret for ScaleIO user and other
+ sensitive information. If this is not provided, Login operation will fail.
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ sslEnabled:
+ description: sslEnabled Flag
+ enable/disable SSL communication
+ with Gateway, default false
+ type: boolean
+ storageMode:
+ default: ThinProvisioned
+ description: |-
+ storageMode indicates whether the storage for a volume should be ThickProvisioned or ThinProvisioned.
+ Default is ThinProvisioned.
+ type: string
+ storagePool:
+ description: storagePool is
+ the ScaleIO Storage Pool
+ associated with the protection
+ domain.
+ type: string
+ system:
+ description: system is the
+ name of the storage system
+ as configured in ScaleIO.
+ type: string
+ volumeName:
+ description: |-
+ volumeName is the name of a volume already created in the ScaleIO system
+ that is associated with this volume source.
+ type: string
+ required:
+ - gateway
+ - secretRef
+ - system
+ type: object
+ secret:
+ description: |-
+ secret represents a secret that should populate this volume.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#secret
+ properties:
+ defaultMode:
+ description: |-
+ defaultMode is Optional: mode bits used to set permissions on created files by default.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values
+ for mode bits. Defaults to 0644.
+ Directories within the path are not affected by this setting.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
+ format: int32
+ type: integer
+ items:
+ description: |-
+ items If unspecified, each key-value pair in the Data field of the referenced
+ Secret will be projected into the volume as a file whose name is the
+ key and content is the value. If specified, the listed keys will be
+ projected into the specified paths, and unlisted keys will not be
+ present. If a key is specified which is not present in the Secret,
+ the volume setup will error unless it is marked optional. Paths must be
+ relative and may not contain the '..' path or start with '..'.
+ items:
+ description: Maps a string
+ key to a path within a
+ volume.
+ properties:
+ key:
+ description: key is
+ the key to project.
+ type: string
+ mode:
+ description: |-
+ mode is Optional: mode bits used to set permissions on this file.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ If not specified, the volume defaultMode will be used.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
+ format: int32
+ type: integer
+ path:
+ description: |-
+ path is the relative path of the file to map the key to.
+ May not be an absolute path.
+ May not contain the path element '..'.
+ May not start with the string '..'.
+ type: string
+ required:
+ - key
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ optional:
+ description: optional field
+ specify whether the Secret
+ or its keys must be defined
+ type: boolean
+ secretName:
+ description: |-
+ secretName is the name of the secret in the pod's namespace to use.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#secret
+ type: string
+ type: object
+ storageos:
+ description: storageOS represents
+ a StorageOS volume attached
+ and mounted on Kubernetes nodes.
+ properties:
+ fsType:
+ description: |-
+ fsType is the filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ type: string
+ readOnly:
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ type: boolean
+ secretRef:
+ description: |-
+ secretRef specifies the secret to use for obtaining the StorageOS API
+ credentials. If not specified, default values will be attempted.
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ volumeName:
+ description: |-
+ volumeName is the human-readable name of the StorageOS volume. Volume
+ names are only unique within a namespace.
+ type: string
+ volumeNamespace:
+ description: |-
+ volumeNamespace specifies the scope of the volume within StorageOS. If no
+ namespace is specified then the Pod's namespace will be used. This allows the
+ Kubernetes name scoping to be mirrored within StorageOS for tighter integration.
+ Set VolumeName to any name to override the default behaviour.
+ Set to "default" if you are not using namespaces within StorageOS.
+ Namespaces that do not pre-exist within StorageOS will be created.
+ type: string
+ type: object
+ vsphereVolume:
+ description: vsphereVolume represents
+ a vSphere volume attached and
+ mounted on kubelets host machine
+ properties:
+ fsType:
+ description: |-
+ fsType is filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ type: string
+ storagePolicyID:
+ description: storagePolicyID
+ is the storage Policy Based
+ Management (SPBM) profile
+ ID associated with the StoragePolicyName.
+ type: string
+ storagePolicyName:
+ description: storagePolicyName
+ is the storage Policy Based
+ Management (SPBM) profile
+ name.
+ type: string
+ volumePath:
+ description: volumePath is
+ the path that identifies
+ vSphere volume vmdk
+ type: string
+ required:
+ - volumePath
+ type: object
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ required:
+ - containers
+ type: object
+ type: object
+ ttlSecondsAfterFinished:
+ description: |-
+ ttlSecondsAfterFinished limits the lifetime of a Job that has finished
+ execution (either Complete or Failed). If this field is set,
+ ttlSecondsAfterFinished after the Job finishes, it is eligible to be
+ automatically deleted. When the Job is being deleted, its lifecycle
+ guarantees (e.g. finalizers) will be honored. If this field is unset,
+ the Job won't be automatically deleted. If this field is set to zero,
+ the Job becomes eligible to be deleted immediately after it finishes.
+ format: int32
+ type: integer
+ required:
+ - template
+ type: object
+ type: object
+ required:
+ - name
+ - template
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ startupPolicy:
+ description: StartupPolicy, if set, configures in what order
+ jobs must be started
+ properties:
+ startupPolicyOrder:
+ description: |-
+ StartupPolicyOrder determines the startup order of the ReplicatedJobs.
+ AnyOrder means to start replicated jobs in any order.
+ InOrder means to start them as they are listed in the JobSet. A ReplicatedJob is started only
+ when all the jobs of the previous one are ready.
+ enum:
+ - AnyOrder
+ - InOrder
+ type: string
+ required:
+ - startupPolicyOrder
+ type: object
+ x-kubernetes-validations:
+ - message: Value is immutable
+ rule: self == oldSelf
+ successPolicy:
+ description: |-
+ SuccessPolicy configures when to declare the JobSet as
+ succeeded.
+ The JobSet is always declared succeeded if all jobs in the set
+ finished with status complete.
+ properties:
+ operator:
+ description: Operator determines either All or Any of
+ the selected jobs should succeed to consider the JobSet
+ successful
+ enum:
+ - All
+ - Any
+ type: string
+ targetReplicatedJobs:
+ description: |-
+ TargetReplicatedJobs are the names of the replicated jobs the operator will apply to.
+ A null or empty list will apply to all replicatedJobs.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - operator
+ type: object
+ x-kubernetes-validations:
+ - message: Value is immutable
+ rule: self == oldSelf
+ suspend:
+ description: Suspend suspends all running child Jobs when
+ set to true.
+ type: boolean
+ ttlSecondsAfterFinished:
+ description: |-
+ TTLSecondsAfterFinished limits the lifetime of a JobSet that has finished
+ execution (either Complete or Failed). If this field is set,
+ TTLSecondsAfterFinished after the JobSet finishes, it is eligible to be
+ automatically deleted. When the JobSet is being deleted, its lifecycle
+ guarantees (e.g. finalizers) will be honored. If this field is unset,
+ the JobSet won't be automatically deleted. If this field is set to zero,
+ the JobSet becomes eligible to be deleted immediately after it finishes.
+ format: int32
+ minimum: 0
+ type: integer
+ type: object
+ type: object
+ required:
+ - template
+ type: object
+ type: object
+ served: true
+ storage: true
diff --git a/charts/kubeflow/apps/training-operator/upstream/v2/base/crds/kubeflow.org_trainjobs.yaml b/charts/kubeflow/apps/training-operator/upstream/v2/base/crds/kubeflow.org_trainjobs.yaml
new file mode 100644
index 0000000..037e041
--- /dev/null
+++ b/charts/kubeflow/apps/training-operator/upstream/v2/base/crds/kubeflow.org_trainjobs.yaml
@@ -0,0 +1,3322 @@
+---
+apiVersion: apiextensions.k8s.io/v1
+kind: CustomResourceDefinition
+metadata:
+ annotations:
+ controller-gen.kubebuilder.io/version: v0.16.5
+ name: trainjobs.kubeflow.org
+spec:
+ group: kubeflow.org
+ names:
+ kind: TrainJob
+ listKind: TrainJobList
+ plural: trainjobs
+ singular: trainjob
+ scope: Namespaced
+ versions:
+ - additionalPrinterColumns:
+ - jsonPath: .status.conditions[-1:].type
+ name: State
+ type: string
+ - jsonPath: .metadata.creationTimestamp
+ name: Age
+ type: date
+ name: v2alpha1
+ schema:
+ openAPIV3Schema:
+ description: TrainJob represents configuration of a training job.
+ properties:
+ apiVersion:
+ description: |-
+ APIVersion defines the versioned schema of this representation of an object.
+ Servers should convert recognized schemas to the latest internal value, and
+ may reject unrecognized values.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
+ type: string
+ kind:
+ description: |-
+ Kind is a string value representing the REST resource this object represents.
+ Servers may infer this from the endpoint the client submits requests to.
+ Cannot be updated.
+ In CamelCase.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
+ type: string
+ metadata:
+ type: object
+ spec:
+ description: Specification of the desired TrainJob.
+ properties:
+ annotations:
+ additionalProperties:
+ type: string
+ description: |-
+ Annotations to apply for the derivative JobSet and Jobs.
+ They will be merged with the TrainingRuntime values.
+ type: object
+ datasetConfig:
+ description: Configuration of the training dataset.
+ properties:
+ env:
+ description: |-
+ List of environment variables to set in the dataset initializer container.
+ These values will be merged with the TrainingRuntime's dataset initializer environments.
+ items:
+ description: EnvVar represents an environment variable present
+ in a Container.
+ properties:
+ name:
+ description: Name of the environment variable. Must be a
+ C_IDENTIFIER.
+ type: string
+ value:
+ description: |-
+ Variable references $(VAR_NAME) are expanded
+ using the previously defined environment variables in the container and
+ any service environment variables. If a variable cannot be resolved,
+ the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e.
+ "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)".
+ Escaped references will never be expanded, regardless of whether the variable
+ exists or not.
+ Defaults to "".
+ type: string
+ valueFrom:
+ description: Source for the environment variable's value.
+ Cannot be used if value is not empty.
+ properties:
+ configMapKeyRef:
+ description: Selects a key of a ConfigMap.
+ properties:
+ key:
+ description: The key to select.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the ConfigMap or its
+ key must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ fieldRef:
+ description: |-
+ Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`,
+ spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.
+ properties:
+ apiVersion:
+ description: Version of the schema the FieldPath
+ is written in terms of, defaults to "v1".
+ type: string
+ fieldPath:
+ description: Path of the field to select in the
+ specified API version.
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ resourceFieldRef:
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported.
+ properties:
+ containerName:
+ description: 'Container name: required for volumes,
+ optional for env vars'
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ description: Specifies the output format of the
+ exposed resources, defaults to "1"
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ description: 'Required: resource to select'
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ secretKeyRef:
+ description: Selects a key of a secret in the pod's
+ namespace
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key
+ must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ secretRef:
+ description: |-
+ Reference to the secret with credentials to download dataset.
+ Secret must be created in the TrainJob's namespace.
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ storageUri:
+ description: Storage uri for the dataset provider.
+ type: string
+ type: object
+ labels:
+ additionalProperties:
+ type: string
+ description: |-
+ Labels to apply for the derivative JobSet and Jobs.
+ They will be merged with the TrainingRuntime values.
+ type: object
+ managedBy:
+ default: kubeflow.org/trainjob-controller
+ description: |-
+ ManagedBy is used to indicate the controller or entity that manages a TrainJob.
+ The value must be either an empty, `kubeflow.org/trainjob-controller` or
+ `kueue.x-k8s.io/multikueue`. The built-in TrainJob controller reconciles TrainJob which
+ don't have this field at all or the field value is the reserved string
+ `kubeflow.org/trainjob-controller`, but delegates reconciling TrainJobs
+ with a 'kueue.x-k8s.io/multikueue' to the Kueue. The field is immutable.
+ Defaults to `kubeflow.org/trainjob-controller`
+ type: string
+ x-kubernetes-validations:
+ - message: ManagedBy must be kubeflow.org/trainjob-controller or kueue.x-k8s.io/multikueue
+ if set
+ rule: self in ['kubeflow.org/trainjob-controller', 'kueue.x-k8s.io/multikueue']
+ - message: ManagedBy value is immutable
+ rule: self == oldSelf
+ modelConfig:
+ description: Configuration of the pre-trained and trained model.
+ properties:
+ input:
+ description: |-
+ Configuration of the pre-trained model.
+ When this API is used, the training runtime must have
+ the `model-initializer` container in the `Initializer` Job.
+ properties:
+ env:
+ description: |-
+ List of environment variables to set in the model initializer container.
+ These values will be merged with the TrainingRuntime's model initializer environments.
+ items:
+ description: EnvVar represents an environment variable present
+ in a Container.
+ properties:
+ name:
+ description: Name of the environment variable. Must
+ be a C_IDENTIFIER.
+ type: string
+ value:
+ description: |-
+ Variable references $(VAR_NAME) are expanded
+ using the previously defined environment variables in the container and
+ any service environment variables. If a variable cannot be resolved,
+ the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e.
+ "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)".
+ Escaped references will never be expanded, regardless of whether the variable
+ exists or not.
+ Defaults to "".
+ type: string
+ valueFrom:
+ description: Source for the environment variable's value.
+ Cannot be used if value is not empty.
+ properties:
+ configMapKeyRef:
+ description: Selects a key of a ConfigMap.
+ properties:
+ key:
+ description: The key to select.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the ConfigMap or
+ its key must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ fieldRef:
+ description: |-
+ Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`,
+ spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.
+ properties:
+ apiVersion:
+ description: Version of the schema the FieldPath
+ is written in terms of, defaults to "v1".
+ type: string
+ fieldPath:
+ description: Path of the field to select in
+ the specified API version.
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ resourceFieldRef:
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported.
+ properties:
+ containerName:
+ description: 'Container name: required for volumes,
+ optional for env vars'
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ description: Specifies the output format of
+ the exposed resources, defaults to "1"
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ description: 'Required: resource to select'
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ secretKeyRef:
+ description: Selects a key of a secret in the pod's
+ namespace
+ properties:
+ key:
+ description: The key of the secret to select
+ from. Must be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its
+ key must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ secretRef:
+ description: |-
+ Reference to the secret with credentials to download model.
+ Secret must be created in the TrainJob's namespace.
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ storageUri:
+ description: Storage uri for the model provider.
+ type: string
+ type: object
+ output:
+ description: |-
+ Configuration of the trained model.
+ When this API is used, the training runtime must have
+ the `model-exporter` container in the `Exporter` Job.
+ properties:
+ env:
+ description: |-
+ List of environment variables to set in the model exporter container.
+ These values will be merged with the TrainingRuntime's model exporter environments.
+ items:
+ description: EnvVar represents an environment variable present
+ in a Container.
+ properties:
+ name:
+ description: Name of the environment variable. Must
+ be a C_IDENTIFIER.
+ type: string
+ value:
+ description: |-
+ Variable references $(VAR_NAME) are expanded
+ using the previously defined environment variables in the container and
+ any service environment variables. If a variable cannot be resolved,
+ the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e.
+ "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)".
+ Escaped references will never be expanded, regardless of whether the variable
+ exists or not.
+ Defaults to "".
+ type: string
+ valueFrom:
+ description: Source for the environment variable's value.
+ Cannot be used if value is not empty.
+ properties:
+ configMapKeyRef:
+ description: Selects a key of a ConfigMap.
+ properties:
+ key:
+ description: The key to select.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the ConfigMap or
+ its key must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ fieldRef:
+ description: |-
+ Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`,
+ spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.
+ properties:
+ apiVersion:
+ description: Version of the schema the FieldPath
+ is written in terms of, defaults to "v1".
+ type: string
+ fieldPath:
+ description: Path of the field to select in
+ the specified API version.
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ resourceFieldRef:
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported.
+ properties:
+ containerName:
+ description: 'Container name: required for volumes,
+ optional for env vars'
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ description: Specifies the output format of
+ the exposed resources, defaults to "1"
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ description: 'Required: resource to select'
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ secretKeyRef:
+ description: Selects a key of a secret in the pod's
+ namespace
+ properties:
+ key:
+ description: The key of the secret to select
+ from. Must be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its
+ key must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ secretRef:
+ description: |-
+ Reference to the secret with credentials to export model.
+ Secret must be created in the TrainJob's namespace.
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ storageUri:
+ description: Storage uri for the model exporter.
+ type: string
+ type: object
+ type: object
+ podSpecOverrides:
+ description: Custom overrides for the training runtime.
+ items:
+ description: PodSpecOverride represents the custom overrides that
+ will be applied for the TrainJob's resources.
+ properties:
+ containers:
+ description: Overrides for the containers in the desired job
+ templates.
+ items:
+ description: |-
+ ContainerOverride represents parameters that can be overridden using PodSpecOverrides.
+ Parameters from the Trainer, DatasetConfig, and ModelConfig will take precedence.
+ properties:
+ args:
+ description: Arguments to the entrypoint for the training
+ container.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ command:
+ description: Entrypoint commands for the training container.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ env:
+ description: |-
+ List of environment variables to set in the container.
+ These values will be merged with the TrainingRuntime's environments.
+ items:
+ description: EnvVar represents an environment variable
+ present in a Container.
+ properties:
+ name:
+ description: Name of the environment variable. Must
+ be a C_IDENTIFIER.
+ type: string
+ value:
+ description: |-
+ Variable references $(VAR_NAME) are expanded
+ using the previously defined environment variables in the container and
+ any service environment variables. If a variable cannot be resolved,
+ the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e.
+ "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)".
+ Escaped references will never be expanded, regardless of whether the variable
+ exists or not.
+ Defaults to "".
+ type: string
+ valueFrom:
+ description: Source for the environment variable's
+ value. Cannot be used if value is not empty.
+ properties:
+ configMapKeyRef:
+ description: Selects a key of a ConfigMap.
+ properties:
+ key:
+ description: The key to select.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the ConfigMap
+ or its key must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ fieldRef:
+ description: |-
+ Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`,
+ spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.
+ properties:
+ apiVersion:
+ description: Version of the schema the FieldPath
+ is written in terms of, defaults to "v1".
+ type: string
+ fieldPath:
+ description: Path of the field to select
+ in the specified API version.
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ resourceFieldRef:
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported.
+ properties:
+ containerName:
+ description: 'Container name: required for
+ volumes, optional for env vars'
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ description: Specifies the output format
+ of the exposed resources, defaults to
+ "1"
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ description: 'Required: resource to select'
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ secretKeyRef:
+ description: Selects a key of a secret in the
+ pod's namespace
+ properties:
+ key:
+ description: The key of the secret to select
+ from. Must be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret
+ or its key must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ envFrom:
+ description: |-
+ List of sources to populate environment variables in the container.
+ These values will be merged with the TrainingRuntime's environments.
+ items:
+ description: EnvFromSource represents the source of
+ a set of ConfigMaps
+ properties:
+ configMapRef:
+ description: The ConfigMap to select from
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the ConfigMap must
+ be defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ prefix:
+ description: An optional identifier to prepend to
+ each key in the ConfigMap. Must be a C_IDENTIFIER.
+ type: string
+ secretRef:
+ description: The Secret to select from
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret must
+ be defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ name:
+ description: Name for the container. TrainingRuntime must
+ have this container.
+ type: string
+ volumeMounts:
+ description: Pod volumes to mount into the container's
+ filesystem.
+ items:
+ description: VolumeMount describes a mounting of a Volume
+ within a container.
+ properties:
+ mountPath:
+ description: |-
+ Path within the container at which the volume should be mounted. Must
+ not contain ':'.
+ type: string
+ mountPropagation:
+ description: |-
+ mountPropagation determines how mounts are propagated from the host
+ to container and the other way around.
+ When not set, MountPropagationNone is used.
+ This field is beta in 1.10.
+ When RecursiveReadOnly is set to IfPossible or to Enabled, MountPropagation must be None or unspecified
+ (which defaults to None).
+ type: string
+ name:
+ description: This must match the Name of a Volume.
+ type: string
+ readOnly:
+ description: |-
+ Mounted read-only if true, read-write otherwise (false or unspecified).
+ Defaults to false.
+ type: boolean
+ recursiveReadOnly:
+ description: |-
+ RecursiveReadOnly specifies whether read-only mounts should be handled
+ recursively.
+
+ If ReadOnly is false, this field has no meaning and must be unspecified.
+
+ If ReadOnly is true, and this field is set to Disabled, the mount is not made
+ recursively read-only. If this field is set to IfPossible, the mount is made
+ recursively read-only, if it is supported by the container runtime. If this
+ field is set to Enabled, the mount is made recursively read-only if it is
+ supported by the container runtime, otherwise the pod will not be started and
+ an error will be generated to indicate the reason.
+
+ If this field is set to IfPossible or Enabled, MountPropagation must be set to
+ None (or be unspecified, which defaults to None).
+
+ If this field is not specified, it is treated as an equivalent of Disabled.
+ type: string
+ subPath:
+ description: |-
+ Path within the volume from which the container's volume should be mounted.
+ Defaults to "" (volume's root).
+ type: string
+ subPathExpr:
+ description: |-
+ Expanded path within the volume from which the container's volume should be mounted.
+ Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.
+ Defaults to "" (volume's root).
+ SubPathExpr and SubPath are mutually exclusive.
+ type: string
+ required:
+ - mountPath
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ initContainers:
+ description: Overrides for the init container in the desired
+ job templates.
+ items:
+ description: |-
+ ContainerOverride represents parameters that can be overridden using PodSpecOverrides.
+ Parameters from the Trainer, DatasetConfig, and ModelConfig will take precedence.
+ properties:
+ args:
+ description: Arguments to the entrypoint for the training
+ container.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ command:
+ description: Entrypoint commands for the training container.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ env:
+ description: |-
+ List of environment variables to set in the container.
+ These values will be merged with the TrainingRuntime's environments.
+ items:
+ description: EnvVar represents an environment variable
+ present in a Container.
+ properties:
+ name:
+ description: Name of the environment variable. Must
+ be a C_IDENTIFIER.
+ type: string
+ value:
+ description: |-
+ Variable references $(VAR_NAME) are expanded
+ using the previously defined environment variables in the container and
+ any service environment variables. If a variable cannot be resolved,
+ the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e.
+ "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)".
+ Escaped references will never be expanded, regardless of whether the variable
+ exists or not.
+ Defaults to "".
+ type: string
+ valueFrom:
+ description: Source for the environment variable's
+ value. Cannot be used if value is not empty.
+ properties:
+ configMapKeyRef:
+ description: Selects a key of a ConfigMap.
+ properties:
+ key:
+ description: The key to select.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the ConfigMap
+ or its key must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ fieldRef:
+ description: |-
+ Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`,
+ spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.
+ properties:
+ apiVersion:
+ description: Version of the schema the FieldPath
+ is written in terms of, defaults to "v1".
+ type: string
+ fieldPath:
+ description: Path of the field to select
+ in the specified API version.
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ resourceFieldRef:
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported.
+ properties:
+ containerName:
+ description: 'Container name: required for
+ volumes, optional for env vars'
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ description: Specifies the output format
+ of the exposed resources, defaults to
+ "1"
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ description: 'Required: resource to select'
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ secretKeyRef:
+ description: Selects a key of a secret in the
+ pod's namespace
+ properties:
+ key:
+ description: The key of the secret to select
+ from. Must be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret
+ or its key must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ envFrom:
+ description: |-
+ List of sources to populate environment variables in the container.
+ These values will be merged with the TrainingRuntime's environments.
+ items:
+ description: EnvFromSource represents the source of
+ a set of ConfigMaps
+ properties:
+ configMapRef:
+ description: The ConfigMap to select from
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the ConfigMap must
+ be defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ prefix:
+ description: An optional identifier to prepend to
+ each key in the ConfigMap. Must be a C_IDENTIFIER.
+ type: string
+ secretRef:
+ description: The Secret to select from
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret must
+ be defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ name:
+ description: Name for the container. TrainingRuntime must
+ have this container.
+ type: string
+ volumeMounts:
+ description: Pod volumes to mount into the container's
+ filesystem.
+ items:
+ description: VolumeMount describes a mounting of a Volume
+ within a container.
+ properties:
+ mountPath:
+ description: |-
+ Path within the container at which the volume should be mounted. Must
+ not contain ':'.
+ type: string
+ mountPropagation:
+ description: |-
+ mountPropagation determines how mounts are propagated from the host
+ to container and the other way around.
+ When not set, MountPropagationNone is used.
+ This field is beta in 1.10.
+ When RecursiveReadOnly is set to IfPossible or to Enabled, MountPropagation must be None or unspecified
+ (which defaults to None).
+ type: string
+ name:
+ description: This must match the Name of a Volume.
+ type: string
+ readOnly:
+ description: |-
+ Mounted read-only if true, read-write otherwise (false or unspecified).
+ Defaults to false.
+ type: boolean
+ recursiveReadOnly:
+ description: |-
+ RecursiveReadOnly specifies whether read-only mounts should be handled
+ recursively.
+
+ If ReadOnly is false, this field has no meaning and must be unspecified.
+
+ If ReadOnly is true, and this field is set to Disabled, the mount is not made
+ recursively read-only. If this field is set to IfPossible, the mount is made
+ recursively read-only, if it is supported by the container runtime. If this
+ field is set to Enabled, the mount is made recursively read-only if it is
+ supported by the container runtime, otherwise the pod will not be started and
+ an error will be generated to indicate the reason.
+
+ If this field is set to IfPossible or Enabled, MountPropagation must be set to
+ None (or be unspecified, which defaults to None).
+
+ If this field is not specified, it is treated as an equivalent of Disabled.
+ type: string
+ subPath:
+ description: |-
+ Path within the volume from which the container's volume should be mounted.
+ Defaults to "" (volume's root).
+ type: string
+ subPathExpr:
+ description: |-
+ Expanded path within the volume from which the container's volume should be mounted.
+ Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.
+ Defaults to "" (volume's root).
+ SubPathExpr and SubPath are mutually exclusive.
+ type: string
+ required:
+ - mountPath
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ nodeSelector:
+ additionalProperties:
+ type: string
+ description: Override for the node selector to place Pod on
+ the specific mode.
+ type: object
+ serviceAccountName:
+ description: Override for the service account.
+ type: string
+ targetJobs:
+ description: TrainJobs is the training job replicas in the training
+ runtime template to apply the overrides.
+ items:
+ properties:
+ name:
+ description: Name is the target training job name for
+ which the PodSpec is overridden.
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ tolerations:
+ description: Override for the Pod's tolerations.
+ items:
+ description: |-
+ The pod this Toleration is attached to tolerates any taint that matches
+ the triple using the matching operator .
+ properties:
+ effect:
+ description: |-
+ Effect indicates the taint effect to match. Empty means match all taint effects.
+ When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute.
+ type: string
+ key:
+ description: |-
+ Key is the taint key that the toleration applies to. Empty means match all taint keys.
+ If the key is empty, operator must be Exists; this combination means to match all values and all keys.
+ type: string
+ operator:
+ description: |-
+ Operator represents a key's relationship to the value.
+ Valid operators are Exists and Equal. Defaults to Equal.
+ Exists is equivalent to wildcard for value, so that a pod can
+ tolerate all taints of a particular category.
+ type: string
+ tolerationSeconds:
+ description: |-
+ TolerationSeconds represents the period of time the toleration (which must be
+ of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default,
+ it is not set, which means tolerate the taint forever (do not evict). Zero and
+ negative values will be treated as 0 (evict immediately) by the system.
+ format: int64
+ type: integer
+ value:
+ description: |-
+ Value is the taint value the toleration matches to.
+ If the operator is Exists, the value should be empty, otherwise just a regular string.
+ type: string
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ volumes:
+ description: Overrides for the Pod volume configuration.
+ items:
+ description: Volume represents a named volume in a pod that
+ may be accessed by any container in the pod.
+ properties:
+ awsElasticBlockStore:
+ description: |-
+ awsElasticBlockStore represents an AWS Disk resource that is attached to a
+ kubelet's host machine and then exposed to the pod.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
+ properties:
+ fsType:
+ description: |-
+ fsType is the filesystem type of the volume that you want to mount.
+ Tip: Ensure that the filesystem type is supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
+ type: string
+ partition:
+ description: |-
+ partition is the partition in the volume that you want to mount.
+ If omitted, the default is to mount by volume name.
+ Examples: For volume /dev/sda1, you specify the partition as "1".
+ Similarly, the volume partition for /dev/sda is "0" (or you can leave the property empty).
+ format: int32
+ type: integer
+ readOnly:
+ description: |-
+ readOnly value true will force the readOnly setting in VolumeMounts.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
+ type: boolean
+ volumeID:
+ description: |-
+ volumeID is unique ID of the persistent disk resource in AWS (Amazon EBS volume).
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
+ type: string
+ required:
+ - volumeID
+ type: object
+ azureDisk:
+ description: azureDisk represents an Azure Data Disk mount
+ on the host and bind mount to the pod.
+ properties:
+ cachingMode:
+ description: 'cachingMode is the Host Caching mode:
+ None, Read Only, Read Write.'
+ type: string
+ diskName:
+ description: diskName is the Name of the data disk
+ in the blob storage
+ type: string
+ diskURI:
+ description: diskURI is the URI of data disk in the
+ blob storage
+ type: string
+ fsType:
+ default: ext4
+ description: |-
+ fsType is Filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ type: string
+ kind:
+ description: 'kind expected values are Shared: multiple
+ blob disks per storage account Dedicated: single
+ blob disk per storage account Managed: azure managed
+ data disk (only in managed availability set). defaults
+ to shared'
+ type: string
+ readOnly:
+ default: false
+ description: |-
+ readOnly Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ type: boolean
+ required:
+ - diskName
+ - diskURI
+ type: object
+ azureFile:
+ description: azureFile represents an Azure File Service
+ mount on the host and bind mount to the pod.
+ properties:
+ readOnly:
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ type: boolean
+ secretName:
+ description: secretName is the name of secret that
+ contains Azure Storage Account Name and Key
+ type: string
+ shareName:
+ description: shareName is the azure share Name
+ type: string
+ required:
+ - secretName
+ - shareName
+ type: object
+ cephfs:
+ description: cephFS represents a Ceph FS mount on the
+ host that shares a pod's lifetime
+ properties:
+ monitors:
+ description: |-
+ monitors is Required: Monitors is a collection of Ceph monitors
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ path:
+ description: 'path is Optional: Used as the mounted
+ root, rather than the full Ceph tree, default is
+ /'
+ type: string
+ readOnly:
+ description: |-
+ readOnly is Optional: Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
+ type: boolean
+ secretFile:
+ description: |-
+ secretFile is Optional: SecretFile is the path to key ring for User, default is /etc/ceph/user.secret
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
+ type: string
+ secretRef:
+ description: |-
+ secretRef is Optional: SecretRef is reference to the authentication secret for User, default is empty.
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ user:
+ description: |-
+ user is optional: User is the rados user name, default is admin
+ More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
+ type: string
+ required:
+ - monitors
+ type: object
+ cinder:
+ description: |-
+ cinder represents a cinder volume attached and mounted on kubelets host machine.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
+ properties:
+ fsType:
+ description: |-
+ fsType is the filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
+ type: string
+ readOnly:
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
+ type: boolean
+ secretRef:
+ description: |-
+ secretRef is optional: points to a secret object containing parameters used to connect
+ to OpenStack.
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ volumeID:
+ description: |-
+ volumeID used to identify the volume in cinder.
+ More info: https://examples.k8s.io/mysql-cinder-pd/README.md
+ type: string
+ required:
+ - volumeID
+ type: object
+ configMap:
+ description: configMap represents a configMap that should
+ populate this volume
+ properties:
+ defaultMode:
+ description: |-
+ defaultMode is optional: mode bits used to set permissions on created files by default.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ Defaults to 0644.
+ Directories within the path are not affected by this setting.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
+ format: int32
+ type: integer
+ items:
+ description: |-
+ items if unspecified, each key-value pair in the Data field of the referenced
+ ConfigMap will be projected into the volume as a file whose name is the
+ key and content is the value. If specified, the listed keys will be
+ projected into the specified paths, and unlisted keys will not be
+ present. If a key is specified which is not present in the ConfigMap,
+ the volume setup will error unless it is marked optional. Paths must be
+ relative and may not contain the '..' path or start with '..'.
+ items:
+ description: Maps a string key to a path within
+ a volume.
+ properties:
+ key:
+ description: key is the key to project.
+ type: string
+ mode:
+ description: |-
+ mode is Optional: mode bits used to set permissions on this file.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ If not specified, the volume defaultMode will be used.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
+ format: int32
+ type: integer
+ path:
+ description: |-
+ path is the relative path of the file to map the key to.
+ May not be an absolute path.
+ May not contain the path element '..'.
+ May not start with the string '..'.
+ type: string
+ required:
+ - key
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: optional specify whether the ConfigMap
+ or its keys must be defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ csi:
+ description: csi (Container Storage Interface) represents
+ ephemeral storage that is handled by certain external
+ CSI drivers (Beta feature).
+ properties:
+ driver:
+ description: |-
+ driver is the name of the CSI driver that handles this volume.
+ Consult with your admin for the correct name as registered in the cluster.
+ type: string
+ fsType:
+ description: |-
+ fsType to mount. Ex. "ext4", "xfs", "ntfs".
+ If not provided, the empty value is passed to the associated CSI driver
+ which will determine the default filesystem to apply.
+ type: string
+ nodePublishSecretRef:
+ description: |-
+ nodePublishSecretRef is a reference to the secret object containing
+ sensitive information to pass to the CSI driver to complete the CSI
+ NodePublishVolume and NodeUnpublishVolume calls.
+ This field is optional, and may be empty if no secret is required. If the
+ secret object contains more than one secret, all secret references are passed.
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ readOnly:
+ description: |-
+ readOnly specifies a read-only configuration for the volume.
+ Defaults to false (read/write).
+ type: boolean
+ volumeAttributes:
+ additionalProperties:
+ type: string
+ description: |-
+ volumeAttributes stores driver-specific properties that are passed to the CSI
+ driver. Consult your driver's documentation for supported values.
+ type: object
+ required:
+ - driver
+ type: object
+ downwardAPI:
+ description: downwardAPI represents downward API about
+ the pod that should populate this volume
+ properties:
+ defaultMode:
+ description: |-
+ Optional: mode bits to use on created files by default. Must be a
+ Optional: mode bits used to set permissions on created files by default.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ Defaults to 0644.
+ Directories within the path are not affected by this setting.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
+ format: int32
+ type: integer
+ items:
+ description: Items is a list of downward API volume
+ file
+ items:
+ description: DownwardAPIVolumeFile represents information
+ to create the file containing the pod field
+ properties:
+ fieldRef:
+ description: 'Required: Selects a field of the
+ pod: only annotations, labels, name, namespace
+ and uid are supported.'
+ properties:
+ apiVersion:
+ description: Version of the schema the FieldPath
+ is written in terms of, defaults to "v1".
+ type: string
+ fieldPath:
+ description: Path of the field to select
+ in the specified API version.
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ mode:
+ description: |-
+ Optional: mode bits used to set permissions on this file, must be an octal value
+ between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ If not specified, the volume defaultMode will be used.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
+ format: int32
+ type: integer
+ path:
+ description: 'Required: Path is the relative
+ path name of the file to be created. Must
+ not be absolute or contain the ''..'' path.
+ Must be utf-8 encoded. The first item of the
+ relative path must not start with ''..'''
+ type: string
+ resourceFieldRef:
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, requests.cpu and requests.memory) are currently supported.
+ properties:
+ containerName:
+ description: 'Container name: required for
+ volumes, optional for env vars'
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ description: Specifies the output format
+ of the exposed resources, defaults to
+ "1"
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ description: 'Required: resource to select'
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ required:
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ emptyDir:
+ description: |-
+ emptyDir represents a temporary directory that shares a pod's lifetime.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
+ properties:
+ medium:
+ description: |-
+ medium represents what type of storage medium should back this directory.
+ The default is "" which means to use the node's default medium.
+ Must be an empty string (default) or Memory.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
+ type: string
+ sizeLimit:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ sizeLimit is the total amount of local storage required for this EmptyDir volume.
+ The size limit is also applicable for memory medium.
+ The maximum usage on memory medium EmptyDir would be the minimum value between
+ the SizeLimit specified here and the sum of memory limits of all containers in a pod.
+ The default is nil which means that the limit is undefined.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ type: object
+ ephemeral:
+ description: |-
+ ephemeral represents a volume that is handled by a cluster storage driver.
+ The volume's lifecycle is tied to the pod that defines it - it will be created before the pod starts,
+ and deleted when the pod is removed.
+
+ Use this if:
+ a) the volume is only needed while the pod runs,
+ b) features of normal volumes like restoring from snapshot or capacity
+ tracking are needed,
+ c) the storage driver is specified through a storage class, and
+ d) the storage driver supports dynamic volume provisioning through
+ a PersistentVolumeClaim (see EphemeralVolumeSource for more
+ information on the connection between this volume type
+ and PersistentVolumeClaim).
+
+ Use PersistentVolumeClaim or one of the vendor-specific
+ APIs for volumes that persist for longer than the lifecycle
+ of an individual pod.
+
+ Use CSI for light-weight local ephemeral volumes if the CSI driver is meant to
+ be used that way - see the documentation of the driver for
+ more information.
+
+ A pod can use both types of ephemeral volumes and
+ persistent volumes at the same time.
+ properties:
+ volumeClaimTemplate:
+ description: |-
+ Will be used to create a stand-alone PVC to provision the volume.
+ The pod in which this EphemeralVolumeSource is embedded will be the
+ owner of the PVC, i.e. the PVC will be deleted together with the
+ pod. The name of the PVC will be `-` where
+ `` is the name from the `PodSpec.Volumes` array
+ entry. Pod validation will reject the pod if the concatenated name
+ is not valid for a PVC (for example, too long).
+
+ An existing PVC with that name that is not owned by the pod
+ will *not* be used for the pod to avoid using an unrelated
+ volume by mistake. Starting the pod is then blocked until
+ the unrelated PVC is removed. If such a pre-created PVC is
+ meant to be used by the pod, the PVC has to updated with an
+ owner reference to the pod once the pod exists. Normally
+ this should not be necessary, but it may be useful when
+ manually reconstructing a broken cluster.
+
+ This field is read-only and no changes will be made by Kubernetes
+ to the PVC after it has been created.
+
+ Required, must not be nil.
+ properties:
+ metadata:
+ description: |-
+ May contain labels and annotations that will be copied into the PVC
+ when creating it. No other fields are allowed and will be rejected during
+ validation.
+ properties:
+ annotations:
+ additionalProperties:
+ type: string
+ type: object
+ finalizers:
+ items:
+ type: string
+ type: array
+ labels:
+ additionalProperties:
+ type: string
+ type: object
+ name:
+ type: string
+ namespace:
+ type: string
+ type: object
+ spec:
+ description: |-
+ The specification for the PersistentVolumeClaim. The entire content is
+ copied unchanged into the PVC that gets created from this
+ template. The same fields as in a PersistentVolumeClaim
+ are also valid here.
+ properties:
+ accessModes:
+ description: |-
+ accessModes contains the desired access modes the volume should have.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ dataSource:
+ description: |-
+ dataSource field can be used to specify either:
+ * An existing VolumeSnapshot object (snapshot.storage.k8s.io/VolumeSnapshot)
+ * An existing PVC (PersistentVolumeClaim)
+ If the provisioner or an external controller can support the specified data source,
+ it will create a new volume based on the contents of the specified data source.
+ When the AnyVolumeDataSource feature gate is enabled, dataSource contents will be copied to dataSourceRef,
+ and dataSourceRef contents will be copied to dataSource when dataSourceRef.namespace is not specified.
+ If the namespace is specified, then dataSourceRef will not be copied to dataSource.
+ properties:
+ apiGroup:
+ description: |-
+ APIGroup is the group for the resource being referenced.
+ If APIGroup is not specified, the specified Kind must be in the core API group.
+ For any other third-party types, APIGroup is required.
+ type: string
+ kind:
+ description: Kind is the type of resource
+ being referenced
+ type: string
+ name:
+ description: Name is the name of resource
+ being referenced
+ type: string
+ required:
+ - kind
+ - name
+ type: object
+ x-kubernetes-map-type: atomic
+ dataSourceRef:
+ description: |-
+ dataSourceRef specifies the object from which to populate the volume with data, if a non-empty
+ volume is desired. This may be any object from a non-empty API group (non
+ core object) or a PersistentVolumeClaim object.
+ When this field is specified, volume binding will only succeed if the type of
+ the specified object matches some installed volume populator or dynamic
+ provisioner.
+ This field will replace the functionality of the dataSource field and as such
+ if both fields are non-empty, they must have the same value. For backwards
+ compatibility, when namespace isn't specified in dataSourceRef,
+ both fields (dataSource and dataSourceRef) will be set to the same
+ value automatically if one of them is empty and the other is non-empty.
+ When namespace is specified in dataSourceRef,
+ dataSource isn't set to the same value and must be empty.
+ There are three important differences between dataSource and dataSourceRef:
+ * While dataSource only allows two specific types of objects, dataSourceRef
+ allows any non-core object, as well as PersistentVolumeClaim objects.
+ * While dataSource ignores disallowed values (dropping them), dataSourceRef
+ preserves all values, and generates an error if a disallowed value is
+ specified.
+ * While dataSource only allows local objects, dataSourceRef allows objects
+ in any namespaces.
+ (Beta) Using this field requires the AnyVolumeDataSource feature gate to be enabled.
+ (Alpha) Using the namespace field of dataSourceRef requires the CrossNamespaceVolumeDataSource feature gate to be enabled.
+ properties:
+ apiGroup:
+ description: |-
+ APIGroup is the group for the resource being referenced.
+ If APIGroup is not specified, the specified Kind must be in the core API group.
+ For any other third-party types, APIGroup is required.
+ type: string
+ kind:
+ description: Kind is the type of resource
+ being referenced
+ type: string
+ name:
+ description: Name is the name of resource
+ being referenced
+ type: string
+ namespace:
+ description: |-
+ Namespace is the namespace of resource being referenced
+ Note that when a namespace is specified, a gateway.networking.k8s.io/ReferenceGrant object is required in the referent namespace to allow that namespace's owner to accept the reference. See the ReferenceGrant documentation for details.
+ (Alpha) This field requires the CrossNamespaceVolumeDataSource feature gate to be enabled.
+ type: string
+ required:
+ - kind
+ - name
+ type: object
+ resources:
+ description: |-
+ resources represents the minimum resources the volume should have.
+ If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements
+ that are lower than previous value but must still be higher than capacity recorded in the
+ status field of the claim.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
+ properties:
+ limits:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ type: object
+ requests:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ type: object
+ type: object
+ selector:
+ description: selector is a label query over
+ volumes to consider for binding.
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list
+ of label selector requirements. The
+ requirements are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key is the label key
+ that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ storageClassName:
+ description: |-
+ storageClassName is the name of the StorageClass required by the claim.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1
+ type: string
+ volumeAttributesClassName:
+ description: |-
+ volumeAttributesClassName may be used to set the VolumeAttributesClass used by this claim.
+ If specified, the CSI driver will create or update the volume with the attributes defined
+ in the corresponding VolumeAttributesClass. This has a different purpose than storageClassName,
+ it can be changed after the claim is created. An empty string value means that no VolumeAttributesClass
+ will be applied to the claim but it's not allowed to reset this field to empty string once it is set.
+ If unspecified and the PersistentVolumeClaim is unbound, the default VolumeAttributesClass
+ will be set by the persistentvolume controller if it exists.
+ If the resource referred to by volumeAttributesClass does not exist, this PersistentVolumeClaim will be
+ set to a Pending state, as reflected by the modifyVolumeStatus field, until such as a resource
+ exists.
+ More info: https://kubernetes.io/docs/concepts/storage/volume-attributes-classes/
+ (Beta) Using this field requires the VolumeAttributesClass feature gate to be enabled (off by default).
+ type: string
+ volumeMode:
+ description: |-
+ volumeMode defines what type of volume is required by the claim.
+ Value of Filesystem is implied when not included in claim spec.
+ type: string
+ volumeName:
+ description: volumeName is the binding reference
+ to the PersistentVolume backing this claim.
+ type: string
+ type: object
+ required:
+ - spec
+ type: object
+ type: object
+ fc:
+ description: fc represents a Fibre Channel resource that
+ is attached to a kubelet's host machine and then exposed
+ to the pod.
+ properties:
+ fsType:
+ description: |-
+ fsType is the filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ type: string
+ lun:
+ description: 'lun is Optional: FC target lun number'
+ format: int32
+ type: integer
+ readOnly:
+ description: |-
+ readOnly is Optional: Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ type: boolean
+ targetWWNs:
+ description: 'targetWWNs is Optional: FC target worldwide
+ names (WWNs)'
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ wwids:
+ description: |-
+ wwids Optional: FC volume world wide identifiers (wwids)
+ Either wwids or combination of targetWWNs and lun must be set, but not both simultaneously.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ flexVolume:
+ description: |-
+ flexVolume represents a generic volume resource that is
+ provisioned/attached using an exec based plugin.
+ properties:
+ driver:
+ description: driver is the name of the driver to use
+ for this volume.
+ type: string
+ fsType:
+ description: |-
+ fsType is the filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Ex. "ext4", "xfs", "ntfs". The default filesystem depends on FlexVolume script.
+ type: string
+ options:
+ additionalProperties:
+ type: string
+ description: 'options is Optional: this field holds
+ extra command options if any.'
+ type: object
+ readOnly:
+ description: |-
+ readOnly is Optional: defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ type: boolean
+ secretRef:
+ description: |-
+ secretRef is Optional: secretRef is reference to the secret object containing
+ sensitive information to pass to the plugin scripts. This may be
+ empty if no secret object is specified. If the secret object
+ contains more than one secret, all secrets are passed to the plugin
+ scripts.
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ required:
+ - driver
+ type: object
+ flocker:
+ description: flocker represents a Flocker volume attached
+ to a kubelet's host machine. This depends on the Flocker
+ control service being running
+ properties:
+ datasetName:
+ description: |-
+ datasetName is Name of the dataset stored as metadata -> name on the dataset for Flocker
+ should be considered as deprecated
+ type: string
+ datasetUUID:
+ description: datasetUUID is the UUID of the dataset.
+ This is unique identifier of a Flocker dataset
+ type: string
+ type: object
+ gcePersistentDisk:
+ description: |-
+ gcePersistentDisk represents a GCE Disk resource that is attached to a
+ kubelet's host machine and then exposed to the pod.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
+ properties:
+ fsType:
+ description: |-
+ fsType is filesystem type of the volume that you want to mount.
+ Tip: Ensure that the filesystem type is supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
+ type: string
+ partition:
+ description: |-
+ partition is the partition in the volume that you want to mount.
+ If omitted, the default is to mount by volume name.
+ Examples: For volume /dev/sda1, you specify the partition as "1".
+ Similarly, the volume partition for /dev/sda is "0" (or you can leave the property empty).
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
+ format: int32
+ type: integer
+ pdName:
+ description: |-
+ pdName is unique name of the PD resource in GCE. Used to identify the disk in GCE.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
+ type: string
+ readOnly:
+ description: |-
+ readOnly here will force the ReadOnly setting in VolumeMounts.
+ Defaults to false.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
+ type: boolean
+ required:
+ - pdName
+ type: object
+ gitRepo:
+ description: |-
+ gitRepo represents a git repository at a particular revision.
+ DEPRECATED: GitRepo is deprecated. To provision a container with a git repo, mount an
+ EmptyDir into an InitContainer that clones the repo using git, then mount the EmptyDir
+ into the Pod's container.
+ properties:
+ directory:
+ description: |-
+ directory is the target directory name.
+ Must not contain or start with '..'. If '.' is supplied, the volume directory will be the
+ git repository. Otherwise, if specified, the volume will contain the git repository in
+ the subdirectory with the given name.
+ type: string
+ repository:
+ description: repository is the URL
+ type: string
+ revision:
+ description: revision is the commit hash for the specified
+ revision.
+ type: string
+ required:
+ - repository
+ type: object
+ glusterfs:
+ description: |-
+ glusterfs represents a Glusterfs mount on the host that shares a pod's lifetime.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md
+ properties:
+ endpoints:
+ description: |-
+ endpoints is the endpoint name that details Glusterfs topology.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
+ type: string
+ path:
+ description: |-
+ path is the Glusterfs volume path.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
+ type: string
+ readOnly:
+ description: |-
+ readOnly here will force the Glusterfs volume to be mounted with read-only permissions.
+ Defaults to false.
+ More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
+ type: boolean
+ required:
+ - endpoints
+ - path
+ type: object
+ hostPath:
+ description: |-
+ hostPath represents a pre-existing file or directory on the host
+ machine that is directly exposed to the container. This is generally
+ used for system agents or other privileged things that are allowed
+ to see the host machine. Most containers will NOT need this.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath
+ properties:
+ path:
+ description: |-
+ path of the directory on the host.
+ If the path is a symlink, it will follow the link to the real path.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath
+ type: string
+ type:
+ description: |-
+ type for HostPath Volume
+ Defaults to ""
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath
+ type: string
+ required:
+ - path
+ type: object
+ image:
+ description: |-
+ image represents an OCI object (a container image or artifact) pulled and mounted on the kubelet's host machine.
+ The volume is resolved at pod startup depending on which PullPolicy value is provided:
+
+ - Always: the kubelet always attempts to pull the reference. Container creation will fail If the pull fails.
+ - Never: the kubelet never pulls the reference and only uses a local image or artifact. Container creation will fail if the reference isn't present.
+ - IfNotPresent: the kubelet pulls if the reference isn't already present on disk. Container creation will fail if the reference isn't present and the pull fails.
+
+ The volume gets re-resolved if the pod gets deleted and recreated, which means that new remote content will become available on pod recreation.
+ A failure to resolve or pull the image during pod startup will block containers from starting and may add significant latency. Failures will be retried using normal volume backoff and will be reported on the pod reason and message.
+ The types of objects that may be mounted by this volume are defined by the container runtime implementation on a host machine and at minimum must include all valid types supported by the container image field.
+ The OCI object gets mounted in a single directory (spec.containers[*].volumeMounts.mountPath) by merging the manifest layers in the same way as for container images.
+ The volume will be mounted read-only (ro) and non-executable files (noexec).
+ Sub path mounts for containers are not supported (spec.containers[*].volumeMounts.subpath).
+ The field spec.securityContext.fsGroupChangePolicy has no effect on this volume type.
+ properties:
+ pullPolicy:
+ description: |-
+ Policy for pulling OCI objects. Possible values are:
+ Always: the kubelet always attempts to pull the reference. Container creation will fail If the pull fails.
+ Never: the kubelet never pulls the reference and only uses a local image or artifact. Container creation will fail if the reference isn't present.
+ IfNotPresent: the kubelet pulls if the reference isn't already present on disk. Container creation will fail if the reference isn't present and the pull fails.
+ Defaults to Always if :latest tag is specified, or IfNotPresent otherwise.
+ type: string
+ reference:
+ description: |-
+ Required: Image or artifact reference to be used.
+ Behaves in the same way as pod.spec.containers[*].image.
+ Pull secrets will be assembled in the same way as for the container image by looking up node credentials, SA image pull secrets, and pod spec image pull secrets.
+ More info: https://kubernetes.io/docs/concepts/containers/images
+ This field is optional to allow higher level config management to default or override
+ container images in workload controllers like Deployments and StatefulSets.
+ type: string
+ type: object
+ iscsi:
+ description: |-
+ iscsi represents an ISCSI Disk resource that is attached to a
+ kubelet's host machine and then exposed to the pod.
+ More info: https://examples.k8s.io/volumes/iscsi/README.md
+ properties:
+ chapAuthDiscovery:
+ description: chapAuthDiscovery defines whether support
+ iSCSI Discovery CHAP authentication
+ type: boolean
+ chapAuthSession:
+ description: chapAuthSession defines whether support
+ iSCSI Session CHAP authentication
+ type: boolean
+ fsType:
+ description: |-
+ fsType is the filesystem type of the volume that you want to mount.
+ Tip: Ensure that the filesystem type is supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#iscsi
+ type: string
+ initiatorName:
+ description: |-
+ initiatorName is the custom iSCSI Initiator Name.
+ If initiatorName is specified with iscsiInterface simultaneously, new iSCSI interface
+ : will be created for the connection.
+ type: string
+ iqn:
+ description: iqn is the target iSCSI Qualified Name.
+ type: string
+ iscsiInterface:
+ default: default
+ description: |-
+ iscsiInterface is the interface Name that uses an iSCSI transport.
+ Defaults to 'default' (tcp).
+ type: string
+ lun:
+ description: lun represents iSCSI Target Lun number.
+ format: int32
+ type: integer
+ portals:
+ description: |-
+ portals is the iSCSI Target Portal List. The portal is either an IP or ip_addr:port if the port
+ is other than default (typically TCP ports 860 and 3260).
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ readOnly:
+ description: |-
+ readOnly here will force the ReadOnly setting in VolumeMounts.
+ Defaults to false.
+ type: boolean
+ secretRef:
+ description: secretRef is the CHAP Secret for iSCSI
+ target and initiator authentication
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ targetPortal:
+ description: |-
+ targetPortal is iSCSI Target Portal. The Portal is either an IP or ip_addr:port if the port
+ is other than default (typically TCP ports 860 and 3260).
+ type: string
+ required:
+ - iqn
+ - lun
+ - targetPortal
+ type: object
+ name:
+ description: |-
+ name of the volume.
+ Must be a DNS_LABEL and unique within the pod.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ nfs:
+ description: |-
+ nfs represents an NFS mount on the host that shares a pod's lifetime
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
+ properties:
+ path:
+ description: |-
+ path that is exported by the NFS server.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
+ type: string
+ readOnly:
+ description: |-
+ readOnly here will force the NFS export to be mounted with read-only permissions.
+ Defaults to false.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
+ type: boolean
+ server:
+ description: |-
+ server is the hostname or IP address of the NFS server.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
+ type: string
+ required:
+ - path
+ - server
+ type: object
+ persistentVolumeClaim:
+ description: |-
+ persistentVolumeClaimVolumeSource represents a reference to a
+ PersistentVolumeClaim in the same namespace.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
+ properties:
+ claimName:
+ description: |-
+ claimName is the name of a PersistentVolumeClaim in the same namespace as the pod using this volume.
+ More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
+ type: string
+ readOnly:
+ description: |-
+ readOnly Will force the ReadOnly setting in VolumeMounts.
+ Default false.
+ type: boolean
+ required:
+ - claimName
+ type: object
+ photonPersistentDisk:
+ description: photonPersistentDisk represents a PhotonController
+ persistent disk attached and mounted on kubelets host
+ machine
+ properties:
+ fsType:
+ description: |-
+ fsType is the filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ type: string
+ pdID:
+ description: pdID is the ID that identifies Photon
+ Controller persistent disk
+ type: string
+ required:
+ - pdID
+ type: object
+ portworxVolume:
+ description: portworxVolume represents a portworx volume
+ attached and mounted on kubelets host machine
+ properties:
+ fsType:
+ description: |-
+ fSType represents the filesystem type to mount
+ Must be a filesystem type supported by the host operating system.
+ Ex. "ext4", "xfs". Implicitly inferred to be "ext4" if unspecified.
+ type: string
+ readOnly:
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ type: boolean
+ volumeID:
+ description: volumeID uniquely identifies a Portworx
+ volume
+ type: string
+ required:
+ - volumeID
+ type: object
+ projected:
+ description: projected items for all in one resources
+ secrets, configmaps, and downward API
+ properties:
+ defaultMode:
+ description: |-
+ defaultMode are the mode bits used to set permissions on created files by default.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ Directories within the path are not affected by this setting.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
+ format: int32
+ type: integer
+ sources:
+ description: |-
+ sources is the list of volume projections. Each entry in this list
+ handles one source.
+ items:
+ description: |-
+ Projection that may be projected along with other supported volume types.
+ Exactly one of these fields must be set.
+ properties:
+ clusterTrustBundle:
+ description: |-
+ ClusterTrustBundle allows a pod to access the `.spec.trustBundle` field
+ of ClusterTrustBundle objects in an auto-updating file.
+
+ Alpha, gated by the ClusterTrustBundleProjection feature gate.
+
+ ClusterTrustBundle objects can either be selected by name, or by the
+ combination of signer name and a label selector.
+
+ Kubelet performs aggressive normalization of the PEM contents written
+ into the pod filesystem. Esoteric PEM features such as inter-block
+ comments and block headers are stripped. Certificates are deduplicated.
+ The ordering of certificates within the file is arbitrary, and Kubelet
+ may change the order over time.
+ properties:
+ labelSelector:
+ description: |-
+ Select all ClusterTrustBundles that match this label selector. Only has
+ effect if signerName is set. Mutually-exclusive with name. If unset,
+ interpreted as "match nothing". If set but empty, interpreted as "match
+ everything".
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list
+ of label selector requirements. The
+ requirements are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key is the label
+ key that the selector applies
+ to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ name:
+ description: |-
+ Select a single ClusterTrustBundle by object name. Mutually-exclusive
+ with signerName and labelSelector.
+ type: string
+ optional:
+ description: |-
+ If true, don't block pod startup if the referenced ClusterTrustBundle(s)
+ aren't available. If using name, then the named ClusterTrustBundle is
+ allowed not to exist. If using signerName, then the combination of
+ signerName and labelSelector is allowed to match zero
+ ClusterTrustBundles.
+ type: boolean
+ path:
+ description: Relative path from the volume
+ root to write the bundle.
+ type: string
+ signerName:
+ description: |-
+ Select all ClusterTrustBundles that match this signer name.
+ Mutually-exclusive with name. The contents of all selected
+ ClusterTrustBundles will be unified and deduplicated.
+ type: string
+ required:
+ - path
+ type: object
+ configMap:
+ description: configMap information about the
+ configMap data to project
+ properties:
+ items:
+ description: |-
+ items if unspecified, each key-value pair in the Data field of the referenced
+ ConfigMap will be projected into the volume as a file whose name is the
+ key and content is the value. If specified, the listed keys will be
+ projected into the specified paths, and unlisted keys will not be
+ present. If a key is specified which is not present in the ConfigMap,
+ the volume setup will error unless it is marked optional. Paths must be
+ relative and may not contain the '..' path or start with '..'.
+ items:
+ description: Maps a string key to a path
+ within a volume.
+ properties:
+ key:
+ description: key is the key to project.
+ type: string
+ mode:
+ description: |-
+ mode is Optional: mode bits used to set permissions on this file.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ If not specified, the volume defaultMode will be used.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
+ format: int32
+ type: integer
+ path:
+ description: |-
+ path is the relative path of the file to map the key to.
+ May not be an absolute path.
+ May not contain the path element '..'.
+ May not start with the string '..'.
+ type: string
+ required:
+ - key
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: optional specify whether the
+ ConfigMap or its keys must be defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ downwardAPI:
+ description: downwardAPI information about the
+ downwardAPI data to project
+ properties:
+ items:
+ description: Items is a list of DownwardAPIVolume
+ file
+ items:
+ description: DownwardAPIVolumeFile represents
+ information to create the file containing
+ the pod field
+ properties:
+ fieldRef:
+ description: 'Required: Selects a
+ field of the pod: only annotations,
+ labels, name, namespace and uid
+ are supported.'
+ properties:
+ apiVersion:
+ description: Version of the schema
+ the FieldPath is written in
+ terms of, defaults to "v1".
+ type: string
+ fieldPath:
+ description: Path of the field
+ to select in the specified API
+ version.
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ mode:
+ description: |-
+ Optional: mode bits used to set permissions on this file, must be an octal value
+ between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ If not specified, the volume defaultMode will be used.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
+ format: int32
+ type: integer
+ path:
+ description: 'Required: Path is the
+ relative path name of the file to
+ be created. Must not be absolute
+ or contain the ''..'' path. Must
+ be utf-8 encoded. The first item
+ of the relative path must not start
+ with ''..'''
+ type: string
+ resourceFieldRef:
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, requests.cpu and requests.memory) are currently supported.
+ properties:
+ containerName:
+ description: 'Container name:
+ required for volumes, optional
+ for env vars'
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ description: Specifies the output
+ format of the exposed resources,
+ defaults to "1"
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ description: 'Required: resource
+ to select'
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ required:
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ secret:
+ description: secret information about the secret
+ data to project
+ properties:
+ items:
+ description: |-
+ items if unspecified, each key-value pair in the Data field of the referenced
+ Secret will be projected into the volume as a file whose name is the
+ key and content is the value. If specified, the listed keys will be
+ projected into the specified paths, and unlisted keys will not be
+ present. If a key is specified which is not present in the Secret,
+ the volume setup will error unless it is marked optional. Paths must be
+ relative and may not contain the '..' path or start with '..'.
+ items:
+ description: Maps a string key to a path
+ within a volume.
+ properties:
+ key:
+ description: key is the key to project.
+ type: string
+ mode:
+ description: |-
+ mode is Optional: mode bits used to set permissions on this file.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ If not specified, the volume defaultMode will be used.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
+ format: int32
+ type: integer
+ path:
+ description: |-
+ path is the relative path of the file to map the key to.
+ May not be an absolute path.
+ May not contain the path element '..'.
+ May not start with the string '..'.
+ type: string
+ required:
+ - key
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: optional field specify whether
+ the Secret or its key must be defined
+ type: boolean
+ type: object
+ x-kubernetes-map-type: atomic
+ serviceAccountToken:
+ description: serviceAccountToken is information
+ about the serviceAccountToken data to project
+ properties:
+ audience:
+ description: |-
+ audience is the intended audience of the token. A recipient of a token
+ must identify itself with an identifier specified in the audience of the
+ token, and otherwise should reject the token. The audience defaults to the
+ identifier of the apiserver.
+ type: string
+ expirationSeconds:
+ description: |-
+ expirationSeconds is the requested duration of validity of the service
+ account token. As the token approaches expiration, the kubelet volume
+ plugin will proactively rotate the service account token. The kubelet will
+ start trying to rotate the token if the token is older than 80 percent of
+ its time to live or if the token is older than 24 hours.Defaults to 1 hour
+ and must be at least 10 minutes.
+ format: int64
+ type: integer
+ path:
+ description: |-
+ path is the path relative to the mount point of the file to project the
+ token into.
+ type: string
+ required:
+ - path
+ type: object
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ type: object
+ quobyte:
+ description: quobyte represents a Quobyte mount on the
+ host that shares a pod's lifetime
+ properties:
+ group:
+ description: |-
+ group to map volume access to
+ Default is no group
+ type: string
+ readOnly:
+ description: |-
+ readOnly here will force the Quobyte volume to be mounted with read-only permissions.
+ Defaults to false.
+ type: boolean
+ registry:
+ description: |-
+ registry represents a single or multiple Quobyte Registry services
+ specified as a string as host:port pair (multiple entries are separated with commas)
+ which acts as the central registry for volumes
+ type: string
+ tenant:
+ description: |-
+ tenant owning the given Quobyte volume in the Backend
+ Used with dynamically provisioned Quobyte volumes, value is set by the plugin
+ type: string
+ user:
+ description: |-
+ user to map volume access to
+ Defaults to serivceaccount user
+ type: string
+ volume:
+ description: volume is a string that references an
+ already created Quobyte volume by name.
+ type: string
+ required:
+ - registry
+ - volume
+ type: object
+ rbd:
+ description: |-
+ rbd represents a Rados Block Device mount on the host that shares a pod's lifetime.
+ More info: https://examples.k8s.io/volumes/rbd/README.md
+ properties:
+ fsType:
+ description: |-
+ fsType is the filesystem type of the volume that you want to mount.
+ Tip: Ensure that the filesystem type is supported by the host operating system.
+ Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#rbd
+ type: string
+ image:
+ description: |-
+ image is the rados image name.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
+ type: string
+ keyring:
+ default: /etc/ceph/keyring
+ description: |-
+ keyring is the path to key ring for RBDUser.
+ Default is /etc/ceph/keyring.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
+ type: string
+ monitors:
+ description: |-
+ monitors is a collection of Ceph monitors.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ pool:
+ default: rbd
+ description: |-
+ pool is the rados pool name.
+ Default is rbd.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
+ type: string
+ readOnly:
+ description: |-
+ readOnly here will force the ReadOnly setting in VolumeMounts.
+ Defaults to false.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
+ type: boolean
+ secretRef:
+ description: |-
+ secretRef is name of the authentication secret for RBDUser. If provided
+ overrides keyring.
+ Default is nil.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ user:
+ default: admin
+ description: |-
+ user is the rados user name.
+ Default is admin.
+ More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
+ type: string
+ required:
+ - image
+ - monitors
+ type: object
+ scaleIO:
+ description: scaleIO represents a ScaleIO persistent volume
+ attached and mounted on Kubernetes nodes.
+ properties:
+ fsType:
+ default: xfs
+ description: |-
+ fsType is the filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Ex. "ext4", "xfs", "ntfs".
+ Default is "xfs".
+ type: string
+ gateway:
+ description: gateway is the host address of the ScaleIO
+ API Gateway.
+ type: string
+ protectionDomain:
+ description: protectionDomain is the name of the ScaleIO
+ Protection Domain for the configured storage.
+ type: string
+ readOnly:
+ description: |-
+ readOnly Defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ type: boolean
+ secretRef:
+ description: |-
+ secretRef references to the secret for ScaleIO user and other
+ sensitive information. If this is not provided, Login operation will fail.
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ sslEnabled:
+ description: sslEnabled Flag enable/disable SSL communication
+ with Gateway, default false
+ type: boolean
+ storageMode:
+ default: ThinProvisioned
+ description: |-
+ storageMode indicates whether the storage for a volume should be ThickProvisioned or ThinProvisioned.
+ Default is ThinProvisioned.
+ type: string
+ storagePool:
+ description: storagePool is the ScaleIO Storage Pool
+ associated with the protection domain.
+ type: string
+ system:
+ description: system is the name of the storage system
+ as configured in ScaleIO.
+ type: string
+ volumeName:
+ description: |-
+ volumeName is the name of a volume already created in the ScaleIO system
+ that is associated with this volume source.
+ type: string
+ required:
+ - gateway
+ - secretRef
+ - system
+ type: object
+ secret:
+ description: |-
+ secret represents a secret that should populate this volume.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#secret
+ properties:
+ defaultMode:
+ description: |-
+ defaultMode is Optional: mode bits used to set permissions on created files by default.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values
+ for mode bits. Defaults to 0644.
+ Directories within the path are not affected by this setting.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
+ format: int32
+ type: integer
+ items:
+ description: |-
+ items If unspecified, each key-value pair in the Data field of the referenced
+ Secret will be projected into the volume as a file whose name is the
+ key and content is the value. If specified, the listed keys will be
+ projected into the specified paths, and unlisted keys will not be
+ present. If a key is specified which is not present in the Secret,
+ the volume setup will error unless it is marked optional. Paths must be
+ relative and may not contain the '..' path or start with '..'.
+ items:
+ description: Maps a string key to a path within
+ a volume.
+ properties:
+ key:
+ description: key is the key to project.
+ type: string
+ mode:
+ description: |-
+ mode is Optional: mode bits used to set permissions on this file.
+ Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.
+ YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.
+ If not specified, the volume defaultMode will be used.
+ This might be in conflict with other options that affect the file
+ mode, like fsGroup, and the result can be other mode bits set.
+ format: int32
+ type: integer
+ path:
+ description: |-
+ path is the relative path of the file to map the key to.
+ May not be an absolute path.
+ May not contain the path element '..'.
+ May not start with the string '..'.
+ type: string
+ required:
+ - key
+ - path
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ optional:
+ description: optional field specify whether the Secret
+ or its keys must be defined
+ type: boolean
+ secretName:
+ description: |-
+ secretName is the name of the secret in the pod's namespace to use.
+ More info: https://kubernetes.io/docs/concepts/storage/volumes#secret
+ type: string
+ type: object
+ storageos:
+ description: storageOS represents a StorageOS volume attached
+ and mounted on Kubernetes nodes.
+ properties:
+ fsType:
+ description: |-
+ fsType is the filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ type: string
+ readOnly:
+ description: |-
+ readOnly defaults to false (read/write). ReadOnly here will force
+ the ReadOnly setting in VolumeMounts.
+ type: boolean
+ secretRef:
+ description: |-
+ secretRef specifies the secret to use for obtaining the StorageOS API
+ credentials. If not specified, default values will be attempted.
+ properties:
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ type: object
+ x-kubernetes-map-type: atomic
+ volumeName:
+ description: |-
+ volumeName is the human-readable name of the StorageOS volume. Volume
+ names are only unique within a namespace.
+ type: string
+ volumeNamespace:
+ description: |-
+ volumeNamespace specifies the scope of the volume within StorageOS. If no
+ namespace is specified then the Pod's namespace will be used. This allows the
+ Kubernetes name scoping to be mirrored within StorageOS for tighter integration.
+ Set VolumeName to any name to override the default behaviour.
+ Set to "default" if you are not using namespaces within StorageOS.
+ Namespaces that do not pre-exist within StorageOS will be created.
+ type: string
+ type: object
+ vsphereVolume:
+ description: vsphereVolume represents a vSphere volume
+ attached and mounted on kubelets host machine
+ properties:
+ fsType:
+ description: |-
+ fsType is filesystem type to mount.
+ Must be a filesystem type supported by the host operating system.
+ Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
+ type: string
+ storagePolicyID:
+ description: storagePolicyID is the storage Policy
+ Based Management (SPBM) profile ID associated with
+ the StoragePolicyName.
+ type: string
+ storagePolicyName:
+ description: storagePolicyName is the storage Policy
+ Based Management (SPBM) profile name.
+ type: string
+ volumePath:
+ description: volumePath is the path that identifies
+ vSphere volume vmdk
+ type: string
+ required:
+ - volumePath
+ type: object
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ required:
+ - targetJobs
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ runtimeRef:
+ description: |-
+ Reference to the training runtime.
+ The field is immutable.
+ properties:
+ apiGroup:
+ default: kubeflow.org
+ description: |-
+ APIGroup of the runtime being referenced.
+ Defaults to `kubeflow.org`.
+ type: string
+ kind:
+ default: ClusterTrainingRuntime
+ description: |-
+ Kind of the runtime being referenced.
+ Defaults to ClusterTrainingRuntime.
+ type: string
+ name:
+ description: |-
+ Name of the runtime being referenced.
+ When namespaced-scoped TrainingRuntime is used, the TrainJob must have
+ the same namespace as the deployed runtime.
+ type: string
+ required:
+ - name
+ type: object
+ x-kubernetes-validations:
+ - message: runtimeRef is immutable
+ rule: self == oldSelf
+ suspend:
+ default: false
+ description: |-
+ Whether the controller should suspend the running TrainJob.
+ Defaults to false.
+ type: boolean
+ trainer:
+ description: Configuration of the desired trainer.
+ properties:
+ args:
+ description: Arguments to the entrypoint for the training container.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ command:
+ description: Entrypoint commands for the training container.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ env:
+ description: |-
+ List of environment variables to set in the training container.
+ These values will be merged with the TrainingRuntime's trainer environments.
+ items:
+ description: EnvVar represents an environment variable present
+ in a Container.
+ properties:
+ name:
+ description: Name of the environment variable. Must be a
+ C_IDENTIFIER.
+ type: string
+ value:
+ description: |-
+ Variable references $(VAR_NAME) are expanded
+ using the previously defined environment variables in the container and
+ any service environment variables. If a variable cannot be resolved,
+ the reference in the input string will be unchanged. Double $$ are reduced
+ to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e.
+ "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)".
+ Escaped references will never be expanded, regardless of whether the variable
+ exists or not.
+ Defaults to "".
+ type: string
+ valueFrom:
+ description: Source for the environment variable's value.
+ Cannot be used if value is not empty.
+ properties:
+ configMapKeyRef:
+ description: Selects a key of a ConfigMap.
+ properties:
+ key:
+ description: The key to select.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the ConfigMap or its
+ key must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ fieldRef:
+ description: |-
+ Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`,
+ spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.
+ properties:
+ apiVersion:
+ description: Version of the schema the FieldPath
+ is written in terms of, defaults to "v1".
+ type: string
+ fieldPath:
+ description: Path of the field to select in the
+ specified API version.
+ type: string
+ required:
+ - fieldPath
+ type: object
+ x-kubernetes-map-type: atomic
+ resourceFieldRef:
+ description: |-
+ Selects a resource of the container: only resources limits and requests
+ (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported.
+ properties:
+ containerName:
+ description: 'Container name: required for volumes,
+ optional for env vars'
+ type: string
+ divisor:
+ anyOf:
+ - type: integer
+ - type: string
+ description: Specifies the output format of the
+ exposed resources, defaults to "1"
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ resource:
+ description: 'Required: resource to select'
+ type: string
+ required:
+ - resource
+ type: object
+ x-kubernetes-map-type: atomic
+ secretKeyRef:
+ description: Selects a key of a secret in the pod's
+ namespace
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key
+ must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ image:
+ description: Docker image for the training container.
+ type: string
+ numNodes:
+ description: Number of training nodes.
+ format: int32
+ type: integer
+ numProcPerNode:
+ description: |-
+ Number of processes/workers/slots on every training node.
+ For the Torch runtime: `auto`, `cpu`, `gpu`, or int value can be set.
+ For the MPI runtime only int value can be set.
+ type: string
+ resourcesPerNode:
+ description: Compute resources for each training node.
+ properties:
+ claims:
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+ This field is immutable. It can only be set for containers.
+ items:
+ description: ResourceClaim references one entry in PodSpec.ResourceClaims.
+ properties:
+ name:
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
+ type: string
+ request:
+ description: |-
+ Request is the name chosen for a request in the referenced claim.
+ If empty, everything from the claim is made available, otherwise
+ only the result of this request.
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ limits:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ description: |-
+ Limits describes the maximum amount of compute resources allowed.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ type: object
+ requests:
+ additionalProperties:
+ anyOf:
+ - type: integer
+ - type: string
+ pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+ x-kubernetes-int-or-string: true
+ description: |-
+ Requests describes the minimum amount of compute resources required.
+ If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
+ otherwise to an implementation-defined value. Requests cannot exceed Limits.
+ More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ type: object
+ type: object
+ type: object
+ required:
+ - runtimeRef
+ type: object
+ status:
+ description: Current status of TrainJob.
+ properties:
+ conditions:
+ description: Conditions for the TrainJob.
+ items:
+ description: Condition contains details for one aspect of the current
+ state of this API Resource.
+ properties:
+ lastTransitionTime:
+ description: |-
+ lastTransitionTime is the last time the condition transitioned from one status to another.
+ This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
+ format: date-time
+ type: string
+ message:
+ description: |-
+ message is a human readable message indicating details about the transition.
+ This may be an empty string.
+ maxLength: 32768
+ type: string
+ observedGeneration:
+ description: |-
+ observedGeneration represents the .metadata.generation that the condition was set based upon.
+ For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date
+ with respect to the current state of the instance.
+ format: int64
+ minimum: 0
+ type: integer
+ reason:
+ description: |-
+ reason contains a programmatic identifier indicating the reason for the condition's last transition.
+ Producers of specific condition types may define expected values and meanings for this field,
+ and whether the values are considered a guaranteed API.
+ The value should be a CamelCase string.
+ This field may not be empty.
+ maxLength: 1024
+ minLength: 1
+ pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
+ type: string
+ status:
+ description: status of the condition, one of True, False, Unknown.
+ enum:
+ - "True"
+ - "False"
+ - Unknown
+ type: string
+ type:
+ description: type of condition in CamelCase or in foo.example.com/CamelCase.
+ maxLength: 316
+ pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
+ type: string
+ required:
+ - lastTransitionTime
+ - message
+ - reason
+ - status
+ - type
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - type
+ x-kubernetes-list-type: map
+ jobsStatus:
+ description: JobsStatus tracks the child Jobs in TrainJob.
+ items:
+ properties:
+ active:
+ description: |-
+ Active is the number of child Jobs with at least 1 pod in a running or pending state
+ which are not marked for deletion.
+ format: int32
+ type: integer
+ failed:
+ description: Failed is the number of failed child Jobs.
+ format: int32
+ type: integer
+ name:
+ description: Name of the child Job.
+ type: string
+ ready:
+ description: |-
+ Ready is the number of child Jobs where the number of ready pods and completed pods
+ is greater than or equal to the total expected pod count for the child Job.
+ format: int32
+ type: integer
+ succeeded:
+ description: Succeeded is the number of successfully completed
+ child Jobs.
+ format: int32
+ type: integer
+ suspended:
+ description: Suspended is the number of child Jobs which are
+ in a suspended state.
+ format: int32
+ type: integer
+ required:
+ - active
+ - failed
+ - name
+ - ready
+ - succeeded
+ - suspended
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ type: object
+ type: object
+ served: true
+ storage: true
+ subresources:
+ status: {}
diff --git a/charts/kubeflow/apps/training-operator/upstream/v2/base/crds/kustomization.yaml b/charts/kubeflow/apps/training-operator/upstream/v2/base/crds/kustomization.yaml
new file mode 100644
index 0000000..e032a0c
--- /dev/null
+++ b/charts/kubeflow/apps/training-operator/upstream/v2/base/crds/kustomization.yaml
@@ -0,0 +1,6 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+kind: Kustomization
+resources:
+ - kubeflow.org_clustertrainingruntimes.yaml
+ - kubeflow.org_trainingruntimes.yaml
+ - kubeflow.org_trainjobs.yaml
diff --git a/charts/kubeflow/apps/training-operator/upstream/v2/base/manager/kustomization.yaml b/charts/kubeflow/apps/training-operator/upstream/v2/base/manager/kustomization.yaml
new file mode 100644
index 0000000..a62e947
--- /dev/null
+++ b/charts/kubeflow/apps/training-operator/upstream/v2/base/manager/kustomization.yaml
@@ -0,0 +1,4 @@
+resources:
+ - manager.yaml
+# TODO (andreyvelich): Move it to overlays once we copy the JobSet manifests.
+namespace: kubeflow-system
diff --git a/charts/kubeflow/apps/training-operator/upstream/v2/base/manager/manager.yaml b/charts/kubeflow/apps/training-operator/upstream/v2/base/manager/manager.yaml
new file mode 100644
index 0000000..eeb25f7
--- /dev/null
+++ b/charts/kubeflow/apps/training-operator/upstream/v2/base/manager/manager.yaml
@@ -0,0 +1,70 @@
+---
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+ name: training-operator-v2
+ labels:
+ app.kubernetes.io/name: training
+ app.kubernetes.io/component: manager
+ app.kubernetes.io/part-of: kubeflow
+spec:
+ selector:
+ matchLabels:
+ app.kubernetes.io/name: training
+ app.kubernetes.io/component: manager
+ app.kubernetes.io/part-of: kubeflow
+ template:
+ metadata:
+ labels:
+ app.kubernetes.io/name: training
+ app.kubernetes.io/component: manager
+ app.kubernetes.io/part-of: kubeflow
+ spec:
+ containers:
+ - name: manager
+ image: kubeflow/training-operator-v2
+ env:
+ - name: MY_POD_NAMESPACE
+ valueFrom:
+ fieldRef:
+ fieldPath: metadata.namespace
+ volumeMounts:
+ - mountPath: /tmp/k8s-webhook-server/serving-certs
+ name: cert
+ readOnly: true
+ livenessProbe:
+ httpGet:
+ path: /healthz
+ port: 8081
+ initialDelaySeconds: 15
+ periodSeconds: 20
+ timeoutSeconds: 3
+ readinessProbe:
+ httpGet:
+ path: /readyz
+ port: 8081
+ initialDelaySeconds: 10
+ periodSeconds: 15
+ timeoutSeconds: 3
+ serviceAccountName: training-operator-v2
+ volumes:
+ - name: cert
+ secret:
+ defaultMode: 420
+ secretName: training-operator-v2-webhook-cert
+---
+apiVersion: v1
+kind: Service
+metadata:
+ name: training-operator-v2
+spec:
+ ports:
+ - name: monitoring-port
+ port: 8080
+ targetPort: 8080
+ - name: webhook-server
+ port: 443
+ protocol: TCP
+ targetPort: 9443
+ selector:
+ app.kubernetes.io/component: manager
diff --git a/charts/kubeflow/apps/training-operator/upstream/v2/base/rbac/kustomization.yaml b/charts/kubeflow/apps/training-operator/upstream/v2/base/rbac/kustomization.yaml
new file mode 100644
index 0000000..e9fca6a
--- /dev/null
+++ b/charts/kubeflow/apps/training-operator/upstream/v2/base/rbac/kustomization.yaml
@@ -0,0 +1,6 @@
+resources:
+ - role.yaml
+ - role_binding.yaml
+ - service_account.yaml
+# TODO (andreyvelich): Move it to overlays once we copy the JobSet manifests.
+namespace: kubeflow-system
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/api-service/cluster-role.yaml b/charts/kubeflow/apps/training-operator/upstream/v2/base/rbac/role.yaml
similarity index 57%
rename from charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/api-service/cluster-role.yaml
rename to charts/kubeflow/apps/training-operator/upstream/v2/base/rbac/role.yaml
index bf69003..2a2bdba 100644
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/api-service/cluster-role.yaml
+++ b/charts/kubeflow/apps/training-operator/upstream/v2/base/rbac/role.yaml
@@ -1,78 +1,72 @@
+---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
- name: ml-pipeline
+ name: training-operator-v2
rules:
- apiGroups:
- ""
resources:
- - pods
- - pods/log
+ - secrets
verbs:
- get
- list
- - delete
+ - update
+ - watch
- apiGroups:
- - argoproj.io
+ - admissionregistration.k8s.io
resources:
- - workflows
+ - validatingwebhookconfigurations
+ verbs:
+ - get
+ - list
+ - update
+ - watch
+- apiGroups:
+ - jobset.x-k8s.io
+ resources:
+ - jobsets
verbs:
- create
- get
- list
- watch
- - update
- - patch
- - delete
- apiGroups:
- kubeflow.org
resources:
- - scheduledworkflows
+ - clustertrainingruntimes
+ - trainingruntimes
verbs:
- - create
- get
- list
- - update
- - patch
+ - watch
+- apiGroups:
+ - kubeflow.org
+ resources:
+ - trainjobs
+ verbs:
+ - create
- delete
+ - get
+ - list
+ - patch
+ - update
+ - watch
- apiGroups:
- - authorization.k8s.io
+ - kubeflow.org
resources:
- - subjectaccessreviews
+ - trainjobs/finalizers
+ - trainjobs/status
verbs:
- - create
+ - get
+ - patch
+ - update
- apiGroups:
- - authentication.k8s.io
+ - scheduling.x-k8s.io
resources:
- - tokenreviews
- verbs:
- - create
-- apiGroups:
- - tekton.dev
- resources:
- - pipelineruns
- - taskruns
- - conditions
- - runs
- - customruns
- - tasks
+ - podgroups
verbs:
- create
- get
- list
- watch
- - update
- - patch
- - delete
-- apiGroups:
- - custom.tekton.dev
- resources:
- - pipelineloops
- verbs:
- - create
- - get
- - list
- - watch
- - update
- - patch
- - delete
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/pipelines-ui/cluster-role-binding.yaml b/charts/kubeflow/apps/training-operator/upstream/v2/base/rbac/role_binding.yaml
similarity index 56%
rename from charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/pipelines-ui/cluster-role-binding.yaml
rename to charts/kubeflow/apps/training-operator/upstream/v2/base/rbac/role_binding.yaml
index 3539ff1..b9342f1 100644
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/installs/multi-user/pipelines-ui/cluster-role-binding.yaml
+++ b/charts/kubeflow/apps/training-operator/upstream/v2/base/rbac/role_binding.yaml
@@ -1,11 +1,12 @@
+---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
- name: ml-pipeline-ui
+ name: training-operator-v2
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
- name: ml-pipeline-ui
+ name: training-operator-v2
subjects:
-- kind: ServiceAccount
- name: ml-pipeline-ui
+ - kind: ServiceAccount
+ name: training-operator-v2
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/cache/cache-sa.yaml b/charts/kubeflow/apps/training-operator/upstream/v2/base/rbac/service_account.yaml
similarity index 58%
rename from charts/kubeflow/apps/kfp-tekton/upstream/base/cache/cache-sa.yaml
rename to charts/kubeflow/apps/training-operator/upstream/v2/base/rbac/service_account.yaml
index 232ddd1..2650595 100644
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/cache/cache-sa.yaml
+++ b/charts/kubeflow/apps/training-operator/upstream/v2/base/rbac/service_account.yaml
@@ -1,4 +1,5 @@
+---
apiVersion: v1
kind: ServiceAccount
metadata:
- name: kubeflow-pipelines-cache
+ name: training-operator-v2
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/kustomization.yaml b/charts/kubeflow/apps/training-operator/upstream/v2/base/runtimes/pre-training/kustomization.yaml
similarity index 73%
rename from charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/kustomization.yaml
rename to charts/kubeflow/apps/training-operator/upstream/v2/base/runtimes/pre-training/kustomization.yaml
index 25ffbec..1fb6985 100644
--- a/charts/kubeflow/apps/kfp-tekton/upstream/third-party/argo/upstream/manifests/base/crds/kustomization.yaml
+++ b/charts/kubeflow/apps/training-operator/upstream/v2/base/runtimes/pre-training/kustomization.yaml
@@ -1,4 +1,4 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- - minimal
+ - torch-distributed.yaml
diff --git a/charts/kubeflow/apps/training-operator/upstream/v2/base/runtimes/pre-training/torch-distributed.yaml b/charts/kubeflow/apps/training-operator/upstream/v2/base/runtimes/pre-training/torch-distributed.yaml
new file mode 100644
index 0000000..a28523d
--- /dev/null
+++ b/charts/kubeflow/apps/training-operator/upstream/v2/base/runtimes/pre-training/torch-distributed.yaml
@@ -0,0 +1,33 @@
+apiVersion: kubeflow.org/v2alpha1
+kind: ClusterTrainingRuntime
+metadata:
+ name: torch-distributed
+ labels:
+ training.kubeflow.org/phase: pre-training
+spec:
+ mlPolicy:
+ numNodes: 1
+ torch:
+ numProcPerNode: auto
+ template:
+ spec:
+ replicatedJobs:
+ - name: trainer-node
+ template:
+ spec:
+ template:
+ spec:
+ containers:
+ - name: trainer
+ image: pytorch/pytorch:2.5.0-cuda12.4-cudnn9-runtime
+ command:
+ - /bin/bash
+ - -c
+ - |
+ echo "Torch Distributed Runtime"
+
+ echo "--------------------------------------"
+ echo "Torch Default Runtime Env"
+ env | grep PET_
+
+ pip list
diff --git a/charts/kubeflow/apps/training-operator/upstream/v2/base/webhook/kustomization.yaml b/charts/kubeflow/apps/training-operator/upstream/v2/base/webhook/kustomization.yaml
new file mode 100644
index 0000000..1ea670c
--- /dev/null
+++ b/charts/kubeflow/apps/training-operator/upstream/v2/base/webhook/kustomization.yaml
@@ -0,0 +1,14 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+kind: Kustomization
+resources:
+ - manifests.yaml
+patches:
+ - path: patch.yaml
+ target:
+ group: admissionregistration.k8s.io
+ version: v1
+ kind: ValidatingWebhookConfiguration
+configurations:
+ - kustomizeconfig.yaml
+# TODO (andreyvelich): Move it to overlays once we copy the JobSet manifests.
+namespace: kubeflow-system
diff --git a/charts/kubeflow/apps/training-operator/upstream/v2/base/webhook/kustomizeconfig.yaml b/charts/kubeflow/apps/training-operator/upstream/v2/base/webhook/kustomizeconfig.yaml
new file mode 100644
index 0000000..8b55ef3
--- /dev/null
+++ b/charts/kubeflow/apps/training-operator/upstream/v2/base/webhook/kustomizeconfig.yaml
@@ -0,0 +1,10 @@
+# the following config is for teaching kustomize where to look at when substituting vars.
+# It requires kustomize v2.1.0 or newer to work properly.
+namespace:
+ - kind: ValidatingWebhookConfiguration
+ group: admissionregistration.k8s.io
+ path: webhooks/clientConfig/service/namespace
+ create: true
+
+varReference:
+ - path: metadata/annotations
diff --git a/charts/kubeflow/apps/training-operator/upstream/v2/base/webhook/manifests.yaml b/charts/kubeflow/apps/training-operator/upstream/v2/base/webhook/manifests.yaml
new file mode 100644
index 0000000..d4ee6ae
--- /dev/null
+++ b/charts/kubeflow/apps/training-operator/upstream/v2/base/webhook/manifests.yaml
@@ -0,0 +1,66 @@
+---
+apiVersion: admissionregistration.k8s.io/v1
+kind: ValidatingWebhookConfiguration
+metadata:
+ name: validating-webhook-configuration
+webhooks:
+- admissionReviewVersions:
+ - v1
+ clientConfig:
+ service:
+ name: webhook-service
+ namespace: system
+ path: /validate-kubeflow-org-v2alpha1-clustertrainingruntime
+ failurePolicy: Fail
+ name: validator.clustertrainingruntime.kubeflow.org
+ rules:
+ - apiGroups:
+ - kubeflow.org
+ apiVersions:
+ - v2alpha1
+ operations:
+ - CREATE
+ - UPDATE
+ resources:
+ - clustertrainingruntimes
+ sideEffects: None
+- admissionReviewVersions:
+ - v1
+ clientConfig:
+ service:
+ name: webhook-service
+ namespace: system
+ path: /validate-kubeflow-org-v2alpha1-trainingruntime
+ failurePolicy: Fail
+ name: validator.trainingruntime.kubeflow.org
+ rules:
+ - apiGroups:
+ - kubeflow.org
+ apiVersions:
+ - v2alpha1
+ operations:
+ - CREATE
+ - UPDATE
+ resources:
+ - trainingruntimes
+ sideEffects: None
+- admissionReviewVersions:
+ - v1
+ clientConfig:
+ service:
+ name: webhook-service
+ namespace: system
+ path: /validate-kubeflow-org-v2alpha1-trainjob
+ failurePolicy: Fail
+ name: validator.trainjob.kubeflow.org
+ rules:
+ - apiGroups:
+ - kubeflow.org
+ apiVersions:
+ - v2alpha1
+ operations:
+ - CREATE
+ - UPDATE
+ resources:
+ - trainjobs
+ sideEffects: None
diff --git a/charts/kubeflow/apps/training-operator/upstream/v2/base/webhook/patch.yaml b/charts/kubeflow/apps/training-operator/upstream/v2/base/webhook/patch.yaml
new file mode 100644
index 0000000..e97071c
--- /dev/null
+++ b/charts/kubeflow/apps/training-operator/upstream/v2/base/webhook/patch.yaml
@@ -0,0 +1,12 @@
+- op: replace
+ path: /webhooks/0/clientConfig/service/name
+ value: training-operator-v2
+- op: replace
+ path: /webhooks/1/clientConfig/service/name
+ value: training-operator-v2
+- op: replace
+ path: /webhooks/2/clientConfig/service/name
+ value: training-operator-v2
+- op: replace
+ path: /metadata/name
+ value: validator.training-operator-v2.kubeflow.org
diff --git a/charts/kubeflow/apps/training-operator/upstream/v2/overlays/only-manager/kustomization.yaml b/charts/kubeflow/apps/training-operator/upstream/v2/overlays/only-manager/kustomization.yaml
new file mode 100644
index 0000000..b6f8123
--- /dev/null
+++ b/charts/kubeflow/apps/training-operator/upstream/v2/overlays/only-manager/kustomization.yaml
@@ -0,0 +1,18 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+kind: Kustomization
+resources:
+ - namespace.yaml
+ - ../../base/crds
+ - ../../base/manager
+ - ../../base/rbac
+ - ../../base/webhook
+ # TODO (andreyvelich): JobSet should support kubeflow-system namespace.
+ - https://github.com/kubernetes-sigs/jobset/releases/download/v0.6.0/manifests.yaml
+images:
+ - name: kubeflow/training-operator-v2
+ newTag: latest
+secretGenerator:
+ - name: training-operator-v2-webhook-cert
+ namespace: kubeflow-system
+ options:
+ disableNameSuffixHash: true
diff --git a/charts/kubeflow/contrib/ray/kuberay-operator/overlays/standalone/namespace.yaml b/charts/kubeflow/apps/training-operator/upstream/v2/overlays/only-manager/namespace.yaml
similarity index 63%
rename from charts/kubeflow/contrib/ray/kuberay-operator/overlays/standalone/namespace.yaml
rename to charts/kubeflow/apps/training-operator/upstream/v2/overlays/only-manager/namespace.yaml
index 7a940e4..6bfc496 100644
--- a/charts/kubeflow/contrib/ray/kuberay-operator/overlays/standalone/namespace.yaml
+++ b/charts/kubeflow/apps/training-operator/upstream/v2/overlays/only-manager/namespace.yaml
@@ -1,4 +1,4 @@
apiVersion: v1
kind: Namespace
metadata:
- name: kubeflow
+ name: kubeflow-system
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/base/application/kustomization.yaml b/charts/kubeflow/apps/training-operator/upstream/v2/overlays/only-runtimes/kustomization.yaml
similarity index 66%
rename from charts/kubeflow/apps/kfp-tekton/upstream/base/application/kustomization.yaml
rename to charts/kubeflow/apps/training-operator/upstream/v2/overlays/only-runtimes/kustomization.yaml
index 977dcfe..41fb29b 100644
--- a/charts/kubeflow/apps/kfp-tekton/upstream/base/application/kustomization.yaml
+++ b/charts/kubeflow/apps/training-operator/upstream/v2/overlays/only-runtimes/kustomization.yaml
@@ -1,4 +1,4 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- - application.yaml
+ - ../../base/runtimes/pre-training
diff --git a/charts/kubeflow/apps/training-operator/upstream/v2/overlays/standalone/kustomization.yaml b/charts/kubeflow/apps/training-operator/upstream/v2/overlays/standalone/kustomization.yaml
new file mode 100644
index 0000000..2a59e17
--- /dev/null
+++ b/charts/kubeflow/apps/training-operator/upstream/v2/overlays/standalone/kustomization.yaml
@@ -0,0 +1,19 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+kind: Kustomization
+resources:
+ - namespace.yaml
+ - ../../base/crds
+ - ../../base/manager
+ - ../../base/rbac
+ - ../../base/webhook
+ - ../../base/runtimes/pre-training
+ # TODO (andreyvelich): JobSet should support kubeflow-system namespace.
+ - https://github.com/kubernetes-sigs/jobset/releases/download/v0.6.0/manifests.yaml
+images:
+ - name: kubeflow/training-operator-v2
+ newTag: latest
+secretGenerator:
+ - name: training-operator-v2-webhook-cert
+ namespace: kubeflow-system
+ options:
+ disableNameSuffixHash: true
diff --git a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/kfp-template-openshift-pipelines/namespace.yaml b/charts/kubeflow/apps/training-operator/upstream/v2/overlays/standalone/namespace.yaml
similarity index 63%
rename from charts/kubeflow/apps/kfp-tekton/upstream/v1/env/kfp-template-openshift-pipelines/namespace.yaml
rename to charts/kubeflow/apps/training-operator/upstream/v2/overlays/standalone/namespace.yaml
index 7a940e4..6bfc496 100644
--- a/charts/kubeflow/apps/kfp-tekton/upstream/v1/env/kfp-template-openshift-pipelines/namespace.yaml
+++ b/charts/kubeflow/apps/training-operator/upstream/v2/overlays/standalone/namespace.yaml
@@ -1,4 +1,4 @@
apiVersion: v1
kind: Namespace
metadata:
- name: kubeflow
+ name: kubeflow-system
diff --git a/charts/kubeflow/apps/volumes-web-app/upstream/base/deployment.yaml b/charts/kubeflow/apps/volumes-web-app/upstream/base/deployment.yaml
index de520ba..a537756 100644
--- a/charts/kubeflow/apps/volumes-web-app/upstream/base/deployment.yaml
+++ b/charts/kubeflow/apps/volumes-web-app/upstream/base/deployment.yaml
@@ -8,7 +8,7 @@ spec:
spec:
containers:
- name: volumes-web-app
- image: docker.io/kubeflownotebookswg/volumes-web-app
+ image: ghcr.io/kubeflow/kubeflow/volumes-web-app
ports:
- containerPort: 5000
env:
@@ -22,6 +22,8 @@ spec:
value: $(VWA_APP_SECURE_COOKIES)
- name: VOLUME_VIEWER_IMAGE
value: filebrowser/filebrowser:v2.25.0
+ - name: METRICS
+ value: $(VWA_APP_ENABLE_METRICS)
volumeMounts:
- name: viewer-spec
mountPath: /etc/config/viewer-spec.yaml
diff --git a/charts/kubeflow/apps/volumes-web-app/upstream/base/kustomization.yaml b/charts/kubeflow/apps/volumes-web-app/upstream/base/kustomization.yaml
index e81cdf7..deda408 100644
--- a/charts/kubeflow/apps/volumes-web-app/upstream/base/kustomization.yaml
+++ b/charts/kubeflow/apps/volumes-web-app/upstream/base/kustomization.yaml
@@ -12,9 +12,9 @@ commonLabels:
app: volumes-web-app
kustomize.component: volumes-web-app
images:
-- name: docker.io/kubeflownotebookswg/volumes-web-app
- newName: docker.io/kubeflownotebookswg/volumes-web-app
- newTag: v1.9.0
+- name: ghcr.io/kubeflow/kubeflow/volumes-web-app
+ newName: ghcr.io/kubeflow/kubeflow/volumes-web-app
+ newTag: v1.10.0
# We need the name to be unique without the suffix because the original name is what
# gets used with patches
configMapGenerator:
@@ -67,3 +67,10 @@ vars:
apiVersion: v1
kind: ConfigMap
name: parameters
+- name: VWA_APP_ENABLE_METRICS
+ fieldref:
+ fieldPath: data.VWA_APP_ENABLE_METRICS
+ objref:
+ apiVersion: v1
+ kind: ConfigMap
+ name: parameters
diff --git a/charts/kubeflow/apps/volumes-web-app/upstream/base/params.env b/charts/kubeflow/apps/volumes-web-app/upstream/base/params.env
index 54ea61c..a191f9f 100644
--- a/charts/kubeflow/apps/volumes-web-app/upstream/base/params.env
+++ b/charts/kubeflow/apps/volumes-web-app/upstream/base/params.env
@@ -3,3 +3,4 @@ VWA_USERID_HEADER=kubeflow-userid
VWA_USERID_PREFIX=
VWA_PREFIX=/volumes
VWA_APP_SECURE_COOKIES=true
+VWA_APP_ENABLE_METRICS=1
diff --git a/charts/kubeflow/common/cert-manager/README.md b/charts/kubeflow/common/cert-manager/README.md
index 8a5bce3..bdafb8c 100644
--- a/charts/kubeflow/common/cert-manager/README.md
+++ b/charts/kubeflow/common/cert-manager/README.md
@@ -4,6 +4,6 @@
```sh
# No need to install cert-manager-crds.
-export CERT_MANAGER_VERSION='1.14.5'
-wget -O ./cert-manager/base/cert-manager.yaml "https://github.com/cert-manager/cert-manager/releases/download/v${CERT_MANAGER_VERSION}/cert-manager.yaml"
+export CERT_MANAGER_VERSION='1.16.1'
+wget -O ./base/upstream/cert-manager.yaml "https://github.com/cert-manager/cert-manager/releases/download/v${CERT_MANAGER_VERSION}/cert-manager.yaml"
```
\ No newline at end of file
diff --git a/charts/kubeflow/common/cert-manager/cert-manager/base/kustomization.yaml b/charts/kubeflow/common/cert-manager/base/kustomization.yaml
similarity index 68%
rename from charts/kubeflow/common/cert-manager/cert-manager/base/kustomization.yaml
rename to charts/kubeflow/common/cert-manager/base/kustomization.yaml
index 4e224ef..cb5455d 100644
--- a/charts/kubeflow/common/cert-manager/cert-manager/base/kustomization.yaml
+++ b/charts/kubeflow/common/cert-manager/base/kustomization.yaml
@@ -2,9 +2,7 @@ apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
-# Manifests downloaded from:
-# https://github.com/jetstack/cert-manager/releases/download/v1.10.1/cert-manager.yaml
-- cert-manager.yaml
+- upstream/cert-manager.yaml
# XXX: Do NOT use the namespace transformer, as cert-manager defines resources
# in two namespaces, 'cert-manager' and 'kube-system'.
diff --git a/charts/kubeflow/common/cert-manager/base/upstream/cert-manager.yaml b/charts/kubeflow/common/cert-manager/base/upstream/cert-manager.yaml
new file mode 100644
index 0000000..3dae2b5
--- /dev/null
+++ b/charts/kubeflow/common/cert-manager/base/upstream/cert-manager.yaml
@@ -0,0 +1,13263 @@
+# Copyright 2022 The cert-manager Authors.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: v1
+kind: Namespace
+metadata:
+ name: cert-manager
+
+---
+# Source: cert-manager/templates/crds.yaml
+#
+# START crd
+apiVersion: apiextensions.k8s.io/v1
+kind: CustomResourceDefinition
+metadata:
+ name: certificaterequests.cert-manager.io
+ # START annotations
+ annotations:
+ helm.sh/resource-policy: keep
+ # END annotations
+ labels:
+ app: 'cert-manager'
+ app.kubernetes.io/name: 'cert-manager'
+ app.kubernetes.io/instance: 'cert-manager'
+ # Generated labels
+ app.kubernetes.io/version: "v1.16.1"
+spec:
+ group: cert-manager.io
+ names:
+ kind: CertificateRequest
+ listKind: CertificateRequestList
+ plural: certificaterequests
+ shortNames:
+ - cr
+ - crs
+ singular: certificaterequest
+ categories:
+ - cert-manager
+ scope: Namespaced
+ versions:
+ - name: v1
+ subresources:
+ status: {}
+ additionalPrinterColumns:
+ - jsonPath: .status.conditions[?(@.type=="Approved")].status
+ name: Approved
+ type: string
+ - jsonPath: .status.conditions[?(@.type=="Denied")].status
+ name: Denied
+ type: string
+ - jsonPath: .status.conditions[?(@.type=="Ready")].status
+ name: Ready
+ type: string
+ - jsonPath: .spec.issuerRef.name
+ name: Issuer
+ type: string
+ - jsonPath: .spec.username
+ name: Requester
+ type: string
+ - jsonPath: .status.conditions[?(@.type=="Ready")].message
+ name: Status
+ priority: 1
+ type: string
+ - jsonPath: .metadata.creationTimestamp
+ description: CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC.
+ name: Age
+ type: date
+ schema:
+ openAPIV3Schema:
+ description: |-
+ A CertificateRequest is used to request a signed certificate from one of the
+ configured issuers.
+
+ All fields within the CertificateRequest's `spec` are immutable after creation.
+ A CertificateRequest will either succeed or fail, as denoted by its `Ready` status
+ condition and its `status.failureTime` field.
+
+ A CertificateRequest is a one-shot resource, meaning it represents a single
+ point in time request for a certificate and cannot be re-used.
+ type: object
+ properties:
+ apiVersion:
+ description: |-
+ APIVersion defines the versioned schema of this representation of an object.
+ Servers should convert recognized schemas to the latest internal value, and
+ may reject unrecognized values.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
+ type: string
+ kind:
+ description: |-
+ Kind is a string value representing the REST resource this object represents.
+ Servers may infer this from the endpoint the client submits requests to.
+ Cannot be updated.
+ In CamelCase.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
+ type: string
+ metadata:
+ type: object
+ spec:
+ description: |-
+ Specification of the desired state of the CertificateRequest resource.
+ https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
+ type: object
+ required:
+ - issuerRef
+ - request
+ properties:
+ duration:
+ description: |-
+ Requested 'duration' (i.e. lifetime) of the Certificate. Note that the
+ issuer may choose to ignore the requested duration, just like any other
+ requested attribute.
+ type: string
+ extra:
+ description: |-
+ Extra contains extra attributes of the user that created the CertificateRequest.
+ Populated by the cert-manager webhook on creation and immutable.
+ type: object
+ additionalProperties:
+ type: array
+ items:
+ type: string
+ groups:
+ description: |-
+ Groups contains group membership of the user that created the CertificateRequest.
+ Populated by the cert-manager webhook on creation and immutable.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ isCA:
+ description: |-
+ Requested basic constraints isCA value. Note that the issuer may choose
+ to ignore the requested isCA value, just like any other requested attribute.
+
+ NOTE: If the CSR in the `Request` field has a BasicConstraints extension,
+ it must have the same isCA value as specified here.
+
+ If true, this will automatically add the `cert sign` usage to the list
+ of requested `usages`.
+ type: boolean
+ issuerRef:
+ description: |-
+ Reference to the issuer responsible for issuing the certificate.
+ If the issuer is namespace-scoped, it must be in the same namespace
+ as the Certificate. If the issuer is cluster-scoped, it can be used
+ from any namespace.
+
+ The `name` field of the reference must always be specified.
+ type: object
+ required:
+ - name
+ properties:
+ group:
+ description: Group of the resource being referred to.
+ type: string
+ kind:
+ description: Kind of the resource being referred to.
+ type: string
+ name:
+ description: Name of the resource being referred to.
+ type: string
+ request:
+ description: |-
+ The PEM-encoded X.509 certificate signing request to be submitted to the
+ issuer for signing.
+
+ If the CSR has a BasicConstraints extension, its isCA attribute must
+ match the `isCA` value of this CertificateRequest.
+ If the CSR has a KeyUsage extension, its key usages must match the
+ key usages in the `usages` field of this CertificateRequest.
+ If the CSR has a ExtKeyUsage extension, its extended key usages
+ must match the extended key usages in the `usages` field of this
+ CertificateRequest.
+ type: string
+ format: byte
+ uid:
+ description: |-
+ UID contains the uid of the user that created the CertificateRequest.
+ Populated by the cert-manager webhook on creation and immutable.
+ type: string
+ usages:
+ description: |-
+ Requested key usages and extended key usages.
+
+ NOTE: If the CSR in the `Request` field has uses the KeyUsage or
+ ExtKeyUsage extension, these extensions must have the same values
+ as specified here without any additional values.
+
+ If unset, defaults to `digital signature` and `key encipherment`.
+ type: array
+ items:
+ description: |-
+ KeyUsage specifies valid usage contexts for keys.
+ See:
+ https://tools.ietf.org/html/rfc5280#section-4.2.1.3
+ https://tools.ietf.org/html/rfc5280#section-4.2.1.12
+
+ Valid KeyUsage values are as follows:
+ "signing",
+ "digital signature",
+ "content commitment",
+ "key encipherment",
+ "key agreement",
+ "data encipherment",
+ "cert sign",
+ "crl sign",
+ "encipher only",
+ "decipher only",
+ "any",
+ "server auth",
+ "client auth",
+ "code signing",
+ "email protection",
+ "s/mime",
+ "ipsec end system",
+ "ipsec tunnel",
+ "ipsec user",
+ "timestamping",
+ "ocsp signing",
+ "microsoft sgc",
+ "netscape sgc"
+ type: string
+ enum:
+ - signing
+ - digital signature
+ - content commitment
+ - key encipherment
+ - key agreement
+ - data encipherment
+ - cert sign
+ - crl sign
+ - encipher only
+ - decipher only
+ - any
+ - server auth
+ - client auth
+ - code signing
+ - email protection
+ - s/mime
+ - ipsec end system
+ - ipsec tunnel
+ - ipsec user
+ - timestamping
+ - ocsp signing
+ - microsoft sgc
+ - netscape sgc
+ username:
+ description: |-
+ Username contains the name of the user that created the CertificateRequest.
+ Populated by the cert-manager webhook on creation and immutable.
+ type: string
+ status:
+ description: |-
+ Status of the CertificateRequest.
+ This is set and managed automatically.
+ Read-only.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
+ type: object
+ properties:
+ ca:
+ description: |-
+ The PEM encoded X.509 certificate of the signer, also known as the CA
+ (Certificate Authority).
+ This is set on a best-effort basis by different issuers.
+ If not set, the CA is assumed to be unknown/not available.
+ type: string
+ format: byte
+ certificate:
+ description: |-
+ The PEM encoded X.509 certificate resulting from the certificate
+ signing request.
+ If not set, the CertificateRequest has either not been completed or has
+ failed. More information on failure can be found by checking the
+ `conditions` field.
+ type: string
+ format: byte
+ conditions:
+ description: |-
+ List of status conditions to indicate the status of a CertificateRequest.
+ Known condition types are `Ready`, `InvalidRequest`, `Approved` and `Denied`.
+ type: array
+ items:
+ description: CertificateRequestCondition contains condition information for a CertificateRequest.
+ type: object
+ required:
+ - status
+ - type
+ properties:
+ lastTransitionTime:
+ description: |-
+ LastTransitionTime is the timestamp corresponding to the last status
+ change of this condition.
+ type: string
+ format: date-time
+ message:
+ description: |-
+ Message is a human readable description of the details of the last
+ transition, complementing reason.
+ type: string
+ reason:
+ description: |-
+ Reason is a brief machine readable explanation for the condition's last
+ transition.
+ type: string
+ status:
+ description: Status of the condition, one of (`True`, `False`, `Unknown`).
+ type: string
+ enum:
+ - "True"
+ - "False"
+ - Unknown
+ type:
+ description: |-
+ Type of the condition, known values are (`Ready`, `InvalidRequest`,
+ `Approved`, `Denied`).
+ type: string
+ x-kubernetes-list-map-keys:
+ - type
+ x-kubernetes-list-type: map
+ failureTime:
+ description: |-
+ FailureTime stores the time that this CertificateRequest failed. This is
+ used to influence garbage collection and back-off.
+ type: string
+ format: date-time
+ served: true
+ storage: true
+
+# END crd
+---
+# Source: cert-manager/templates/crds.yaml
+# START crd
+apiVersion: apiextensions.k8s.io/v1
+kind: CustomResourceDefinition
+metadata:
+ name: certificates.cert-manager.io
+ # START annotations
+ annotations:
+ helm.sh/resource-policy: keep
+ # END annotations
+ labels:
+ app: 'cert-manager'
+ app.kubernetes.io/name: 'cert-manager'
+ app.kubernetes.io/instance: 'cert-manager'
+ # Generated labels
+ app.kubernetes.io/version: "v1.16.1"
+spec:
+ group: cert-manager.io
+ names:
+ kind: Certificate
+ listKind: CertificateList
+ plural: certificates
+ shortNames:
+ - cert
+ - certs
+ singular: certificate
+ categories:
+ - cert-manager
+ scope: Namespaced
+ versions:
+ - name: v1
+ subresources:
+ status: {}
+ additionalPrinterColumns:
+ - jsonPath: .status.conditions[?(@.type=="Ready")].status
+ name: Ready
+ type: string
+ - jsonPath: .spec.secretName
+ name: Secret
+ type: string
+ - jsonPath: .spec.issuerRef.name
+ name: Issuer
+ priority: 1
+ type: string
+ - jsonPath: .status.conditions[?(@.type=="Ready")].message
+ name: Status
+ priority: 1
+ type: string
+ - jsonPath: .metadata.creationTimestamp
+ description: CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC.
+ name: Age
+ type: date
+ schema:
+ openAPIV3Schema:
+ description: |-
+ A Certificate resource should be created to ensure an up to date and signed
+ X.509 certificate is stored in the Kubernetes Secret resource named in `spec.secretName`.
+
+ The stored certificate will be renewed before it expires (as configured by `spec.renewBefore`).
+ type: object
+ properties:
+ apiVersion:
+ description: |-
+ APIVersion defines the versioned schema of this representation of an object.
+ Servers should convert recognized schemas to the latest internal value, and
+ may reject unrecognized values.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
+ type: string
+ kind:
+ description: |-
+ Kind is a string value representing the REST resource this object represents.
+ Servers may infer this from the endpoint the client submits requests to.
+ Cannot be updated.
+ In CamelCase.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
+ type: string
+ metadata:
+ type: object
+ spec:
+ description: |-
+ Specification of the desired state of the Certificate resource.
+ https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
+ type: object
+ required:
+ - issuerRef
+ - secretName
+ properties:
+ additionalOutputFormats:
+ description: |-
+ Defines extra output formats of the private key and signed certificate chain
+ to be written to this Certificate's target Secret.
+
+ This is a Beta Feature enabled by default. It can be disabled with the
+ `--feature-gates=AdditionalCertificateOutputFormats=false` option set on both
+ the controller and webhook components.
+ type: array
+ items:
+ description: |-
+ CertificateAdditionalOutputFormat defines an additional output format of a
+ Certificate resource. These contain supplementary data formats of the signed
+ certificate chain and paired private key.
+ type: object
+ required:
+ - type
+ properties:
+ type:
+ description: |-
+ Type is the name of the format type that should be written to the
+ Certificate's target Secret.
+ type: string
+ enum:
+ - DER
+ - CombinedPEM
+ commonName:
+ description: |-
+ Requested common name X509 certificate subject attribute.
+ More info: https://datatracker.ietf.org/doc/html/rfc5280#section-4.1.2.6
+ NOTE: TLS clients will ignore this value when any subject alternative name is
+ set (see https://tools.ietf.org/html/rfc6125#section-6.4.4).
+
+ Should have a length of 64 characters or fewer to avoid generating invalid CSRs.
+ Cannot be set if the `literalSubject` field is set.
+ type: string
+ dnsNames:
+ description: Requested DNS subject alternative names.
+ type: array
+ items:
+ type: string
+ duration:
+ description: |-
+ Requested 'duration' (i.e. lifetime) of the Certificate. Note that the
+ issuer may choose to ignore the requested duration, just like any other
+ requested attribute.
+
+ If unset, this defaults to 90 days.
+ Minimum accepted duration is 1 hour.
+ Value must be in units accepted by Go time.ParseDuration https://golang.org/pkg/time/#ParseDuration.
+ type: string
+ emailAddresses:
+ description: Requested email subject alternative names.
+ type: array
+ items:
+ type: string
+ encodeUsagesInRequest:
+ description: |-
+ Whether the KeyUsage and ExtKeyUsage extensions should be set in the encoded CSR.
+
+ This option defaults to true, and should only be disabled if the target
+ issuer does not support CSRs with these X509 KeyUsage/ ExtKeyUsage extensions.
+ type: boolean
+ ipAddresses:
+ description: Requested IP address subject alternative names.
+ type: array
+ items:
+ type: string
+ isCA:
+ description: |-
+ Requested basic constraints isCA value.
+ The isCA value is used to set the `isCA` field on the created CertificateRequest
+ resources. Note that the issuer may choose to ignore the requested isCA value, just
+ like any other requested attribute.
+
+ If true, this will automatically add the `cert sign` usage to the list
+ of requested `usages`.
+ type: boolean
+ issuerRef:
+ description: |-
+ Reference to the issuer responsible for issuing the certificate.
+ If the issuer is namespace-scoped, it must be in the same namespace
+ as the Certificate. If the issuer is cluster-scoped, it can be used
+ from any namespace.
+
+ The `name` field of the reference must always be specified.
+ type: object
+ required:
+ - name
+ properties:
+ group:
+ description: Group of the resource being referred to.
+ type: string
+ kind:
+ description: Kind of the resource being referred to.
+ type: string
+ name:
+ description: Name of the resource being referred to.
+ type: string
+ keystores:
+ description: Additional keystore output formats to be stored in the Certificate's Secret.
+ type: object
+ properties:
+ jks:
+ description: |-
+ JKS configures options for storing a JKS keystore in the
+ `spec.secretName` Secret resource.
+ type: object
+ required:
+ - create
+ - passwordSecretRef
+ properties:
+ alias:
+ description: |-
+ Alias specifies the alias of the key in the keystore, required by the JKS format.
+ If not provided, the default alias `certificate` will be used.
+ type: string
+ create:
+ description: |-
+ Create enables JKS keystore creation for the Certificate.
+ If true, a file named `keystore.jks` will be created in the target
+ Secret resource, encrypted using the password stored in
+ `passwordSecretRef`.
+ The keystore file will be updated immediately.
+ If the issuer provided a CA certificate, a file named `truststore.jks`
+ will also be created in the target Secret resource, encrypted using the
+ password stored in `passwordSecretRef`
+ containing the issuing Certificate Authority
+ type: boolean
+ passwordSecretRef:
+ description: |-
+ PasswordSecretRef is a reference to a key in a Secret resource
+ containing the password used to encrypt the JKS keystore.
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ pkcs12:
+ description: |-
+ PKCS12 configures options for storing a PKCS12 keystore in the
+ `spec.secretName` Secret resource.
+ type: object
+ required:
+ - create
+ - passwordSecretRef
+ properties:
+ create:
+ description: |-
+ Create enables PKCS12 keystore creation for the Certificate.
+ If true, a file named `keystore.p12` will be created in the target
+ Secret resource, encrypted using the password stored in
+ `passwordSecretRef`.
+ The keystore file will be updated immediately.
+ If the issuer provided a CA certificate, a file named `truststore.p12` will
+ also be created in the target Secret resource, encrypted using the
+ password stored in `passwordSecretRef` containing the issuing Certificate
+ Authority
+ type: boolean
+ passwordSecretRef:
+ description: |-
+ PasswordSecretRef is a reference to a key in a Secret resource
+ containing the password used to encrypt the PKCS12 keystore.
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ profile:
+ description: |-
+ Profile specifies the key and certificate encryption algorithms and the HMAC algorithm
+ used to create the PKCS12 keystore. Default value is `LegacyRC2` for backward compatibility.
+
+ If provided, allowed values are:
+ `LegacyRC2`: Deprecated. Not supported by default in OpenSSL 3 or Java 20.
+ `LegacyDES`: Less secure algorithm. Use this option for maximal compatibility.
+ `Modern2023`: Secure algorithm. Use this option in case you have to always use secure algorithms
+ (eg. because of company policy). Please note that the security of the algorithm is not that important
+ in reality, because the unencrypted certificate and private key are also stored in the Secret.
+ type: string
+ enum:
+ - LegacyRC2
+ - LegacyDES
+ - Modern2023
+ literalSubject:
+ description: |-
+ Requested X.509 certificate subject, represented using the LDAP "String
+ Representation of a Distinguished Name" [1].
+ Important: the LDAP string format also specifies the order of the attributes
+ in the subject, this is important when issuing certs for LDAP authentication.
+ Example: `CN=foo,DC=corp,DC=example,DC=com`
+ More info [1]: https://datatracker.ietf.org/doc/html/rfc4514
+ More info: https://github.com/cert-manager/cert-manager/issues/3203
+ More info: https://github.com/cert-manager/cert-manager/issues/4424
+
+ Cannot be set if the `subject` or `commonName` field is set.
+ type: string
+ nameConstraints:
+ description: |-
+ x.509 certificate NameConstraint extension which MUST NOT be used in a non-CA certificate.
+ More Info: https://datatracker.ietf.org/doc/html/rfc5280#section-4.2.1.10
+
+ This is an Alpha Feature and is only enabled with the
+ `--feature-gates=NameConstraints=true` option set on both
+ the controller and webhook components.
+ type: object
+ properties:
+ critical:
+ description: if true then the name constraints are marked critical.
+ type: boolean
+ excluded:
+ description: |-
+ Excluded contains the constraints which must be disallowed. Any name matching a
+ restriction in the excluded field is invalid regardless
+ of information appearing in the permitted
+ type: object
+ properties:
+ dnsDomains:
+ description: DNSDomains is a list of DNS domains that are permitted or excluded.
+ type: array
+ items:
+ type: string
+ emailAddresses:
+ description: EmailAddresses is a list of Email Addresses that are permitted or excluded.
+ type: array
+ items:
+ type: string
+ ipRanges:
+ description: |-
+ IPRanges is a list of IP Ranges that are permitted or excluded.
+ This should be a valid CIDR notation.
+ type: array
+ items:
+ type: string
+ uriDomains:
+ description: URIDomains is a list of URI domains that are permitted or excluded.
+ type: array
+ items:
+ type: string
+ permitted:
+ description: Permitted contains the constraints in which the names must be located.
+ type: object
+ properties:
+ dnsDomains:
+ description: DNSDomains is a list of DNS domains that are permitted or excluded.
+ type: array
+ items:
+ type: string
+ emailAddresses:
+ description: EmailAddresses is a list of Email Addresses that are permitted or excluded.
+ type: array
+ items:
+ type: string
+ ipRanges:
+ description: |-
+ IPRanges is a list of IP Ranges that are permitted or excluded.
+ This should be a valid CIDR notation.
+ type: array
+ items:
+ type: string
+ uriDomains:
+ description: URIDomains is a list of URI domains that are permitted or excluded.
+ type: array
+ items:
+ type: string
+ otherNames:
+ description: |-
+ `otherNames` is an escape hatch for SAN that allows any type. We currently restrict the support to string like otherNames, cf RFC 5280 p 37
+ Any UTF8 String valued otherName can be passed with by setting the keys oid: x.x.x.x and UTF8Value: somevalue for `otherName`.
+ Most commonly this would be UPN set with oid: 1.3.6.1.4.1.311.20.2.3
+ You should ensure that any OID passed is valid for the UTF8String type as we do not explicitly validate this.
+ type: array
+ items:
+ type: object
+ properties:
+ oid:
+ description: |-
+ OID is the object identifier for the otherName SAN.
+ The object identifier must be expressed as a dotted string, for
+ example, "1.2.840.113556.1.4.221".
+ type: string
+ utf8Value:
+ description: |-
+ utf8Value is the string value of the otherName SAN.
+ The utf8Value accepts any valid UTF8 string to set as value for the otherName SAN.
+ type: string
+ privateKey:
+ description: |-
+ Private key options. These include the key algorithm and size, the used
+ encoding and the rotation policy.
+ type: object
+ properties:
+ algorithm:
+ description: |-
+ Algorithm is the private key algorithm of the corresponding private key
+ for this certificate.
+
+ If provided, allowed values are either `RSA`, `ECDSA` or `Ed25519`.
+ If `algorithm` is specified and `size` is not provided,
+ key size of 2048 will be used for `RSA` key algorithm and
+ key size of 256 will be used for `ECDSA` key algorithm.
+ key size is ignored when using the `Ed25519` key algorithm.
+ type: string
+ enum:
+ - RSA
+ - ECDSA
+ - Ed25519
+ encoding:
+ description: |-
+ The private key cryptography standards (PKCS) encoding for this
+ certificate's private key to be encoded in.
+
+ If provided, allowed values are `PKCS1` and `PKCS8` standing for PKCS#1
+ and PKCS#8, respectively.
+ Defaults to `PKCS1` if not specified.
+ type: string
+ enum:
+ - PKCS1
+ - PKCS8
+ rotationPolicy:
+ description: |-
+ RotationPolicy controls how private keys should be regenerated when a
+ re-issuance is being processed.
+
+ If set to `Never`, a private key will only be generated if one does not
+ already exist in the target `spec.secretName`. If one does exist but it
+ does not have the correct algorithm or size, a warning will be raised
+ to await user intervention.
+ If set to `Always`, a private key matching the specified requirements
+ will be generated whenever a re-issuance occurs.
+ Default is `Never` for backward compatibility.
+ type: string
+ enum:
+ - Never
+ - Always
+ size:
+ description: |-
+ Size is the key bit size of the corresponding private key for this certificate.
+
+ If `algorithm` is set to `RSA`, valid values are `2048`, `4096` or `8192`,
+ and will default to `2048` if not specified.
+ If `algorithm` is set to `ECDSA`, valid values are `256`, `384` or `521`,
+ and will default to `256` if not specified.
+ If `algorithm` is set to `Ed25519`, Size is ignored.
+ No other values are allowed.
+ type: integer
+ renewBefore:
+ description: |-
+ How long before the currently issued certificate's expiry cert-manager should
+ renew the certificate. For example, if a certificate is valid for 60 minutes,
+ and `renewBefore=10m`, cert-manager will begin to attempt to renew the certificate
+ 50 minutes after it was issued (i.e. when there are 10 minutes remaining until
+ the certificate is no longer valid).
+
+ NOTE: The actual lifetime of the issued certificate is used to determine the
+ renewal time. If an issuer returns a certificate with a different lifetime than
+ the one requested, cert-manager will use the lifetime of the issued certificate.
+
+ If unset, this defaults to 1/3 of the issued certificate's lifetime.
+ Minimum accepted value is 5 minutes.
+ Value must be in units accepted by Go time.ParseDuration https://golang.org/pkg/time/#ParseDuration.
+ Cannot be set if the `renewBeforePercentage` field is set.
+ type: string
+ renewBeforePercentage:
+ description: |-
+ `renewBeforePercentage` is like `renewBefore`, except it is a relative percentage
+ rather than an absolute duration. For example, if a certificate is valid for 60
+ minutes, and `renewBeforePercentage=25`, cert-manager will begin to attempt to
+ renew the certificate 45 minutes after it was issued (i.e. when there are 15
+ minutes (25%) remaining until the certificate is no longer valid).
+
+ NOTE: The actual lifetime of the issued certificate is used to determine the
+ renewal time. If an issuer returns a certificate with a different lifetime than
+ the one requested, cert-manager will use the lifetime of the issued certificate.
+
+ Value must be an integer in the range (0,100). The minimum effective
+ `renewBefore` derived from the `renewBeforePercentage` and `duration` fields is 5
+ minutes.
+ Cannot be set if the `renewBefore` field is set.
+ type: integer
+ format: int32
+ revisionHistoryLimit:
+ description: |-
+ The maximum number of CertificateRequest revisions that are maintained in
+ the Certificate's history. Each revision represents a single `CertificateRequest`
+ created by this Certificate, either when it was created, renewed, or Spec
+ was changed. Revisions will be removed by oldest first if the number of
+ revisions exceeds this number.
+
+ If set, revisionHistoryLimit must be a value of `1` or greater.
+ If unset (`nil`), revisions will not be garbage collected.
+ Default value is `nil`.
+ type: integer
+ format: int32
+ secretName:
+ description: |-
+ Name of the Secret resource that will be automatically created and
+ managed by this Certificate resource. It will be populated with a
+ private key and certificate, signed by the denoted issuer. The Secret
+ resource lives in the same namespace as the Certificate resource.
+ type: string
+ secretTemplate:
+ description: |-
+ Defines annotations and labels to be copied to the Certificate's Secret.
+ Labels and annotations on the Secret will be changed as they appear on the
+ SecretTemplate when added or removed. SecretTemplate annotations are added
+ in conjunction with, and cannot overwrite, the base set of annotations
+ cert-manager sets on the Certificate's Secret.
+ type: object
+ properties:
+ annotations:
+ description: Annotations is a key value map to be copied to the target Kubernetes Secret.
+ type: object
+ additionalProperties:
+ type: string
+ labels:
+ description: Labels is a key value map to be copied to the target Kubernetes Secret.
+ type: object
+ additionalProperties:
+ type: string
+ subject:
+ description: |-
+ Requested set of X509 certificate subject attributes.
+ More info: https://datatracker.ietf.org/doc/html/rfc5280#section-4.1.2.6
+
+ The common name attribute is specified separately in the `commonName` field.
+ Cannot be set if the `literalSubject` field is set.
+ type: object
+ properties:
+ countries:
+ description: Countries to be used on the Certificate.
+ type: array
+ items:
+ type: string
+ localities:
+ description: Cities to be used on the Certificate.
+ type: array
+ items:
+ type: string
+ organizationalUnits:
+ description: Organizational Units to be used on the Certificate.
+ type: array
+ items:
+ type: string
+ organizations:
+ description: Organizations to be used on the Certificate.
+ type: array
+ items:
+ type: string
+ postalCodes:
+ description: Postal codes to be used on the Certificate.
+ type: array
+ items:
+ type: string
+ provinces:
+ description: State/Provinces to be used on the Certificate.
+ type: array
+ items:
+ type: string
+ serialNumber:
+ description: Serial number to be used on the Certificate.
+ type: string
+ streetAddresses:
+ description: Street addresses to be used on the Certificate.
+ type: array
+ items:
+ type: string
+ uris:
+ description: Requested URI subject alternative names.
+ type: array
+ items:
+ type: string
+ usages:
+ description: |-
+ Requested key usages and extended key usages.
+ These usages are used to set the `usages` field on the created CertificateRequest
+ resources. If `encodeUsagesInRequest` is unset or set to `true`, the usages
+ will additionally be encoded in the `request` field which contains the CSR blob.
+
+ If unset, defaults to `digital signature` and `key encipherment`.
+ type: array
+ items:
+ description: |-
+ KeyUsage specifies valid usage contexts for keys.
+ See:
+ https://tools.ietf.org/html/rfc5280#section-4.2.1.3
+ https://tools.ietf.org/html/rfc5280#section-4.2.1.12
+
+ Valid KeyUsage values are as follows:
+ "signing",
+ "digital signature",
+ "content commitment",
+ "key encipherment",
+ "key agreement",
+ "data encipherment",
+ "cert sign",
+ "crl sign",
+ "encipher only",
+ "decipher only",
+ "any",
+ "server auth",
+ "client auth",
+ "code signing",
+ "email protection",
+ "s/mime",
+ "ipsec end system",
+ "ipsec tunnel",
+ "ipsec user",
+ "timestamping",
+ "ocsp signing",
+ "microsoft sgc",
+ "netscape sgc"
+ type: string
+ enum:
+ - signing
+ - digital signature
+ - content commitment
+ - key encipherment
+ - key agreement
+ - data encipherment
+ - cert sign
+ - crl sign
+ - encipher only
+ - decipher only
+ - any
+ - server auth
+ - client auth
+ - code signing
+ - email protection
+ - s/mime
+ - ipsec end system
+ - ipsec tunnel
+ - ipsec user
+ - timestamping
+ - ocsp signing
+ - microsoft sgc
+ - netscape sgc
+ status:
+ description: |-
+ Status of the Certificate.
+ This is set and managed automatically.
+ Read-only.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
+ type: object
+ properties:
+ conditions:
+ description: |-
+ List of status conditions to indicate the status of certificates.
+ Known condition types are `Ready` and `Issuing`.
+ type: array
+ items:
+ description: CertificateCondition contains condition information for a Certificate.
+ type: object
+ required:
+ - status
+ - type
+ properties:
+ lastTransitionTime:
+ description: |-
+ LastTransitionTime is the timestamp corresponding to the last status
+ change of this condition.
+ type: string
+ format: date-time
+ message:
+ description: |-
+ Message is a human readable description of the details of the last
+ transition, complementing reason.
+ type: string
+ observedGeneration:
+ description: |-
+ If set, this represents the .metadata.generation that the condition was
+ set based upon.
+ For instance, if .metadata.generation is currently 12, but the
+ .status.condition[x].observedGeneration is 9, the condition is out of date
+ with respect to the current state of the Certificate.
+ type: integer
+ format: int64
+ reason:
+ description: |-
+ Reason is a brief machine readable explanation for the condition's last
+ transition.
+ type: string
+ status:
+ description: Status of the condition, one of (`True`, `False`, `Unknown`).
+ type: string
+ enum:
+ - "True"
+ - "False"
+ - Unknown
+ type:
+ description: Type of the condition, known values are (`Ready`, `Issuing`).
+ type: string
+ x-kubernetes-list-map-keys:
+ - type
+ x-kubernetes-list-type: map
+ failedIssuanceAttempts:
+ description: |-
+ The number of continuous failed issuance attempts up till now. This
+ field gets removed (if set) on a successful issuance and gets set to
+ 1 if unset and an issuance has failed. If an issuance has failed, the
+ delay till the next issuance will be calculated using formula
+ time.Hour * 2 ^ (failedIssuanceAttempts - 1).
+ type: integer
+ lastFailureTime:
+ description: |-
+ LastFailureTime is set only if the latest issuance for this
+ Certificate failed and contains the time of the failure. If an
+ issuance has failed, the delay till the next issuance will be
+ calculated using formula time.Hour * 2 ^ (failedIssuanceAttempts -
+ 1). If the latest issuance has succeeded this field will be unset.
+ type: string
+ format: date-time
+ nextPrivateKeySecretName:
+ description: |-
+ The name of the Secret resource containing the private key to be used
+ for the next certificate iteration.
+ The keymanager controller will automatically set this field if the
+ `Issuing` condition is set to `True`.
+ It will automatically unset this field when the Issuing condition is
+ not set or False.
+ type: string
+ notAfter:
+ description: |-
+ The expiration time of the certificate stored in the secret named
+ by this resource in `spec.secretName`.
+ type: string
+ format: date-time
+ notBefore:
+ description: |-
+ The time after which the certificate stored in the secret named
+ by this resource in `spec.secretName` is valid.
+ type: string
+ format: date-time
+ renewalTime:
+ description: |-
+ RenewalTime is the time at which the certificate will be next
+ renewed.
+ If not set, no upcoming renewal is scheduled.
+ type: string
+ format: date-time
+ revision:
+ description: |-
+ The current 'revision' of the certificate as issued.
+
+ When a CertificateRequest resource is created, it will have the
+ `cert-manager.io/certificate-revision` set to one greater than the
+ current value of this field.
+
+ Upon issuance, this field will be set to the value of the annotation
+ on the CertificateRequest resource used to issue the certificate.
+
+ Persisting the value on the CertificateRequest resource allows the
+ certificates controller to know whether a request is part of an old
+ issuance or if it is part of the ongoing revision's issuance by
+ checking if the revision value in the annotation is greater than this
+ field.
+ type: integer
+ served: true
+ storage: true
+
+# END crd
+---
+# Source: cert-manager/templates/crds.yaml
+# START crd
+apiVersion: apiextensions.k8s.io/v1
+kind: CustomResourceDefinition
+metadata:
+ name: challenges.acme.cert-manager.io
+ # START annotations
+ annotations:
+ helm.sh/resource-policy: keep
+ # END annotations
+ labels:
+ app: 'cert-manager'
+ app.kubernetes.io/name: 'cert-manager'
+ app.kubernetes.io/instance: 'cert-manager'
+ # Generated labels
+ app.kubernetes.io/version: "v1.16.1"
+spec:
+ group: acme.cert-manager.io
+ names:
+ kind: Challenge
+ listKind: ChallengeList
+ plural: challenges
+ singular: challenge
+ categories:
+ - cert-manager
+ - cert-manager-acme
+ scope: Namespaced
+ versions:
+ - additionalPrinterColumns:
+ - jsonPath: .status.state
+ name: State
+ type: string
+ - jsonPath: .spec.dnsName
+ name: Domain
+ type: string
+ - jsonPath: .status.reason
+ name: Reason
+ priority: 1
+ type: string
+ - description: CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC.
+ jsonPath: .metadata.creationTimestamp
+ name: Age
+ type: date
+ name: v1
+ schema:
+ openAPIV3Schema:
+ description: Challenge is a type to represent a Challenge request with an ACME server
+ type: object
+ required:
+ - metadata
+ - spec
+ properties:
+ apiVersion:
+ description: |-
+ APIVersion defines the versioned schema of this representation of an object.
+ Servers should convert recognized schemas to the latest internal value, and
+ may reject unrecognized values.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
+ type: string
+ kind:
+ description: |-
+ Kind is a string value representing the REST resource this object represents.
+ Servers may infer this from the endpoint the client submits requests to.
+ Cannot be updated.
+ In CamelCase.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
+ type: string
+ metadata:
+ type: object
+ spec:
+ type: object
+ required:
+ - authorizationURL
+ - dnsName
+ - issuerRef
+ - key
+ - solver
+ - token
+ - type
+ - url
+ properties:
+ authorizationURL:
+ description: |-
+ The URL to the ACME Authorization resource that this
+ challenge is a part of.
+ type: string
+ dnsName:
+ description: |-
+ dnsName is the identifier that this challenge is for, e.g. example.com.
+ If the requested DNSName is a 'wildcard', this field MUST be set to the
+ non-wildcard domain, e.g. for `*.example.com`, it must be `example.com`.
+ type: string
+ issuerRef:
+ description: |-
+ References a properly configured ACME-type Issuer which should
+ be used to create this Challenge.
+ If the Issuer does not exist, processing will be retried.
+ If the Issuer is not an 'ACME' Issuer, an error will be returned and the
+ Challenge will be marked as failed.
+ type: object
+ required:
+ - name
+ properties:
+ group:
+ description: Group of the resource being referred to.
+ type: string
+ kind:
+ description: Kind of the resource being referred to.
+ type: string
+ name:
+ description: Name of the resource being referred to.
+ type: string
+ key:
+ description: |-
+ The ACME challenge key for this challenge
+ For HTTP01 challenges, this is the value that must be responded with to
+ complete the HTTP01 challenge in the format:
+ `.`.
+ For DNS01 challenges, this is the base64 encoded SHA256 sum of the
+ `.`
+ text that must be set as the TXT record content.
+ type: string
+ solver:
+ description: |-
+ Contains the domain solving configuration that should be used to
+ solve this challenge resource.
+ type: object
+ properties:
+ dns01:
+ description: |-
+ Configures cert-manager to attempt to complete authorizations by
+ performing the DNS01 challenge flow.
+ type: object
+ properties:
+ acmeDNS:
+ description: |-
+ Use the 'ACME DNS' (https://github.com/joohoi/acme-dns) API to manage
+ DNS01 challenge records.
+ type: object
+ required:
+ - accountSecretRef
+ - host
+ properties:
+ accountSecretRef:
+ description: |-
+ A reference to a specific 'key' within a Secret resource.
+ In some instances, `key` is a required field.
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ host:
+ type: string
+ akamai:
+ description: Use the Akamai DNS zone management API to manage DNS01 challenge records.
+ type: object
+ required:
+ - accessTokenSecretRef
+ - clientSecretSecretRef
+ - clientTokenSecretRef
+ - serviceConsumerDomain
+ properties:
+ accessTokenSecretRef:
+ description: |-
+ A reference to a specific 'key' within a Secret resource.
+ In some instances, `key` is a required field.
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ clientSecretSecretRef:
+ description: |-
+ A reference to a specific 'key' within a Secret resource.
+ In some instances, `key` is a required field.
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ clientTokenSecretRef:
+ description: |-
+ A reference to a specific 'key' within a Secret resource.
+ In some instances, `key` is a required field.
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ serviceConsumerDomain:
+ type: string
+ azureDNS:
+ description: Use the Microsoft Azure DNS API to manage DNS01 challenge records.
+ type: object
+ required:
+ - resourceGroupName
+ - subscriptionID
+ properties:
+ clientID:
+ description: |-
+ Auth: Azure Service Principal:
+ The ClientID of the Azure Service Principal used to authenticate with Azure DNS.
+ If set, ClientSecret and TenantID must also be set.
+ type: string
+ clientSecretSecretRef:
+ description: |-
+ Auth: Azure Service Principal:
+ A reference to a Secret containing the password associated with the Service Principal.
+ If set, ClientID and TenantID must also be set.
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ environment:
+ description: name of the Azure environment (default AzurePublicCloud)
+ type: string
+ enum:
+ - AzurePublicCloud
+ - AzureChinaCloud
+ - AzureGermanCloud
+ - AzureUSGovernmentCloud
+ hostedZoneName:
+ description: name of the DNS zone that should be used
+ type: string
+ managedIdentity:
+ description: |-
+ Auth: Azure Workload Identity or Azure Managed Service Identity:
+ Settings to enable Azure Workload Identity or Azure Managed Service Identity
+ If set, ClientID, ClientSecret and TenantID must not be set.
+ type: object
+ properties:
+ clientID:
+ description: client ID of the managed identity, can not be used at the same time as resourceID
+ type: string
+ resourceID:
+ description: |-
+ resource ID of the managed identity, can not be used at the same time as clientID
+ Cannot be used for Azure Managed Service Identity
+ type: string
+ resourceGroupName:
+ description: resource group the DNS zone is located in
+ type: string
+ subscriptionID:
+ description: ID of the Azure subscription
+ type: string
+ tenantID:
+ description: |-
+ Auth: Azure Service Principal:
+ The TenantID of the Azure Service Principal used to authenticate with Azure DNS.
+ If set, ClientID and ClientSecret must also be set.
+ type: string
+ cloudDNS:
+ description: Use the Google Cloud DNS API to manage DNS01 challenge records.
+ type: object
+ required:
+ - project
+ properties:
+ hostedZoneName:
+ description: |-
+ HostedZoneName is an optional field that tells cert-manager in which
+ Cloud DNS zone the challenge record has to be created.
+ If left empty cert-manager will automatically choose a zone.
+ type: string
+ project:
+ type: string
+ serviceAccountSecretRef:
+ description: |-
+ A reference to a specific 'key' within a Secret resource.
+ In some instances, `key` is a required field.
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ cloudflare:
+ description: Use the Cloudflare API to manage DNS01 challenge records.
+ type: object
+ properties:
+ apiKeySecretRef:
+ description: |-
+ API key to use to authenticate with Cloudflare.
+ Note: using an API token to authenticate is now the recommended method
+ as it allows greater control of permissions.
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ apiTokenSecretRef:
+ description: API token used to authenticate with Cloudflare.
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ email:
+ description: Email of the account, only required when using API key based authentication.
+ type: string
+ cnameStrategy:
+ description: |-
+ CNAMEStrategy configures how the DNS01 provider should handle CNAME
+ records when found in DNS zones.
+ type: string
+ enum:
+ - None
+ - Follow
+ digitalocean:
+ description: Use the DigitalOcean DNS API to manage DNS01 challenge records.
+ type: object
+ required:
+ - tokenSecretRef
+ properties:
+ tokenSecretRef:
+ description: |-
+ A reference to a specific 'key' within a Secret resource.
+ In some instances, `key` is a required field.
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ rfc2136:
+ description: |-
+ Use RFC2136 ("Dynamic Updates in the Domain Name System") (https://datatracker.ietf.org/doc/rfc2136/)
+ to manage DNS01 challenge records.
+ type: object
+ required:
+ - nameserver
+ properties:
+ nameserver:
+ description: |-
+ The IP address or hostname of an authoritative DNS server supporting
+ RFC2136 in the form host:port. If the host is an IPv6 address it must be
+ enclosed in square brackets (e.g [2001:db8::1]) ; port is optional.
+ This field is required.
+ type: string
+ tsigAlgorithm:
+ description: |-
+ The TSIG Algorithm configured in the DNS supporting RFC2136. Used only
+ when ``tsigSecretSecretRef`` and ``tsigKeyName`` are defined.
+ Supported values are (case-insensitive): ``HMACMD5`` (default),
+ ``HMACSHA1``, ``HMACSHA256`` or ``HMACSHA512``.
+ type: string
+ tsigKeyName:
+ description: |-
+ The TSIG Key name configured in the DNS.
+ If ``tsigSecretSecretRef`` is defined, this field is required.
+ type: string
+ tsigSecretSecretRef:
+ description: |-
+ The name of the secret containing the TSIG value.
+ If ``tsigKeyName`` is defined, this field is required.
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ route53:
+ description: Use the AWS Route53 API to manage DNS01 challenge records.
+ type: object
+ properties:
+ accessKeyID:
+ description: |-
+ The AccessKeyID is used for authentication.
+ Cannot be set when SecretAccessKeyID is set.
+ If neither the Access Key nor Key ID are set, we fall-back to using env
+ vars, shared credentials file or AWS Instance metadata,
+ see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
+ type: string
+ accessKeyIDSecretRef:
+ description: |-
+ The SecretAccessKey is used for authentication. If set, pull the AWS
+ access key ID from a key within a Kubernetes Secret.
+ Cannot be set when AccessKeyID is set.
+ If neither the Access Key nor Key ID are set, we fall-back to using env
+ vars, shared credentials file or AWS Instance metadata,
+ see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ auth:
+ description: Auth configures how cert-manager authenticates.
+ type: object
+ required:
+ - kubernetes
+ properties:
+ kubernetes:
+ description: |-
+ Kubernetes authenticates with Route53 using AssumeRoleWithWebIdentity
+ by passing a bound ServiceAccount token.
+ type: object
+ required:
+ - serviceAccountRef
+ properties:
+ serviceAccountRef:
+ description: |-
+ A reference to a service account that will be used to request a bound
+ token (also known as "projected token"). To use this field, you must
+ configure an RBAC rule to let cert-manager request a token.
+ type: object
+ required:
+ - name
+ properties:
+ audiences:
+ description: |-
+ TokenAudiences is an optional list of audiences to include in the
+ token passed to AWS. The default token consisting of the issuer's namespace
+ and name is always included.
+ If unset the audience defaults to `sts.amazonaws.com`.
+ type: array
+ items:
+ type: string
+ name:
+ description: Name of the ServiceAccount used to request a token.
+ type: string
+ hostedZoneID:
+ description: If set, the provider will manage only this zone in Route53 and will not do a lookup using the route53:ListHostedZonesByName api call.
+ type: string
+ region:
+ description: |-
+ Override the AWS region.
+
+ Route53 is a global service and does not have regional endpoints but the
+ region specified here (or via environment variables) is used as a hint to
+ help compute the correct AWS credential scope and partition when it
+ connects to Route53. See:
+ - [Amazon Route 53 endpoints and quotas](https://docs.aws.amazon.com/general/latest/gr/r53.html)
+ - [Global services](https://docs.aws.amazon.com/whitepapers/latest/aws-fault-isolation-boundaries/global-services.html)
+
+ If you omit this region field, cert-manager will use the region from
+ AWS_REGION and AWS_DEFAULT_REGION environment variables, if they are set
+ in the cert-manager controller Pod.
+
+ The `region` field is not needed if you use [IAM Roles for Service Accounts (IRSA)](https://docs.aws.amazon.com/eks/latest/userguide/iam-roles-for-service-accounts.html).
+ Instead an AWS_REGION environment variable is added to the cert-manager controller Pod by:
+ [Amazon EKS Pod Identity Webhook](https://github.com/aws/amazon-eks-pod-identity-webhook).
+ In this case this `region` field value is ignored.
+
+ The `region` field is not needed if you use [EKS Pod Identities](https://docs.aws.amazon.com/eks/latest/userguide/pod-identities.html).
+ Instead an AWS_REGION environment variable is added to the cert-manager controller Pod by:
+ [Amazon EKS Pod Identity Agent](https://github.com/aws/eks-pod-identity-agent),
+ In this case this `region` field value is ignored.
+ type: string
+ role:
+ description: |-
+ Role is a Role ARN which the Route53 provider will assume using either the explicit credentials AccessKeyID/SecretAccessKey
+ or the inferred credentials from environment variables, shared credentials file or AWS Instance metadata
+ type: string
+ secretAccessKeySecretRef:
+ description: |-
+ The SecretAccessKey is used for authentication.
+ If neither the Access Key nor Key ID are set, we fall-back to using env
+ vars, shared credentials file or AWS Instance metadata,
+ see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ webhook:
+ description: |-
+ Configure an external webhook based DNS01 challenge solver to manage
+ DNS01 challenge records.
+ type: object
+ required:
+ - groupName
+ - solverName
+ properties:
+ config:
+ description: |-
+ Additional configuration that should be passed to the webhook apiserver
+ when challenges are processed.
+ This can contain arbitrary JSON data.
+ Secret values should not be specified in this stanza.
+ If secret values are needed (e.g. credentials for a DNS service), you
+ should use a SecretKeySelector to reference a Secret resource.
+ For details on the schema of this field, consult the webhook provider
+ implementation's documentation.
+ x-kubernetes-preserve-unknown-fields: true
+ groupName:
+ description: |-
+ The API group name that should be used when POSTing ChallengePayload
+ resources to the webhook apiserver.
+ This should be the same as the GroupName specified in the webhook
+ provider implementation.
+ type: string
+ solverName:
+ description: |-
+ The name of the solver to use, as defined in the webhook provider
+ implementation.
+ This will typically be the name of the provider, e.g. 'cloudflare'.
+ type: string
+ http01:
+ description: |-
+ Configures cert-manager to attempt to complete authorizations by
+ performing the HTTP01 challenge flow.
+ It is not possible to obtain certificates for wildcard domain names
+ (e.g. `*.example.com`) using the HTTP01 challenge mechanism.
+ type: object
+ properties:
+ gatewayHTTPRoute:
+ description: |-
+ The Gateway API is a sig-network community API that models service networking
+ in Kubernetes (https://gateway-api.sigs.k8s.io/). The Gateway solver will
+ create HTTPRoutes with the specified labels in the same namespace as the challenge.
+ This solver is experimental, and fields / behaviour may change in the future.
+ type: object
+ properties:
+ labels:
+ description: |-
+ Custom labels that will be applied to HTTPRoutes created by cert-manager
+ while solving HTTP-01 challenges.
+ type: object
+ additionalProperties:
+ type: string
+ parentRefs:
+ description: |-
+ When solving an HTTP-01 challenge, cert-manager creates an HTTPRoute.
+ cert-manager needs to know which parentRefs should be used when creating
+ the HTTPRoute. Usually, the parentRef references a Gateway. See:
+ https://gateway-api.sigs.k8s.io/api-types/httproute/#attaching-to-gateways
+ type: array
+ items:
+ description: |-
+ ParentReference identifies an API object (usually a Gateway) that can be considered
+ a parent of this resource (usually a route). There are two kinds of parent resources
+ with "Core" support:
+
+ * Gateway (Gateway conformance profile)
+ * Service (Mesh conformance profile, ClusterIP Services only)
+
+ This API may be extended in the future to support additional kinds of parent
+ resources.
+
+ The API object must be valid in the cluster; the Group and Kind must
+ be registered in the cluster for this reference to be valid.
+ type: object
+ required:
+ - name
+ properties:
+ group:
+ description: |-
+ Group is the group of the referent.
+ When unspecified, "gateway.networking.k8s.io" is inferred.
+ To set the core API group (such as for a "Service" kind referent),
+ Group must be explicitly set to "" (empty string).
+
+ Support: Core
+ type: string
+ default: gateway.networking.k8s.io
+ maxLength: 253
+ pattern: ^$|^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
+ kind:
+ description: |-
+ Kind is kind of the referent.
+
+ There are two kinds of parent resources with "Core" support:
+
+ * Gateway (Gateway conformance profile)
+ * Service (Mesh conformance profile, ClusterIP Services only)
+
+ Support for other resources is Implementation-Specific.
+ type: string
+ default: Gateway
+ maxLength: 63
+ minLength: 1
+ pattern: ^[a-zA-Z]([-a-zA-Z0-9]*[a-zA-Z0-9])?$
+ name:
+ description: |-
+ Name is the name of the referent.
+
+ Support: Core
+ type: string
+ maxLength: 253
+ minLength: 1
+ namespace:
+ description: |-
+ Namespace is the namespace of the referent. When unspecified, this refers
+ to the local namespace of the Route.
+
+ Note that there are specific rules for ParentRefs which cross namespace
+ boundaries. Cross-namespace references are only valid if they are explicitly
+ allowed by something in the namespace they are referring to. For example:
+ Gateway has the AllowedRoutes field, and ReferenceGrant provides a
+ generic way to enable any other kind of cross-namespace reference.
+
+
+ ParentRefs from a Route to a Service in the same namespace are "producer"
+ routes, which apply default routing rules to inbound connections from
+ any namespace to the Service.
+
+ ParentRefs from a Route to a Service in a different namespace are
+ "consumer" routes, and these routing rules are only applied to outbound
+ connections originating from the same namespace as the Route, for which
+ the intended destination of the connections are a Service targeted as a
+ ParentRef of the Route.
+
+
+ Support: Core
+ type: string
+ maxLength: 63
+ minLength: 1
+ pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
+ port:
+ description: |-
+ Port is the network port this Route targets. It can be interpreted
+ differently based on the type of parent resource.
+
+ When the parent resource is a Gateway, this targets all listeners
+ listening on the specified port that also support this kind of Route(and
+ select this Route). It's not recommended to set `Port` unless the
+ networking behaviors specified in a Route must apply to a specific port
+ as opposed to a listener(s) whose port(s) may be changed. When both Port
+ and SectionName are specified, the name and port of the selected listener
+ must match both specified values.
+
+
+ When the parent resource is a Service, this targets a specific port in the
+ Service spec. When both Port (experimental) and SectionName are specified,
+ the name and port of the selected port must match both specified values.
+
+
+ Implementations MAY choose to support other parent resources.
+ Implementations supporting other types of parent resources MUST clearly
+ document how/if Port is interpreted.
+
+ For the purpose of status, an attachment is considered successful as
+ long as the parent resource accepts it partially. For example, Gateway
+ listeners can restrict which Routes can attach to them by Route kind,
+ namespace, or hostname. If 1 of 2 Gateway listeners accept attachment
+ from the referencing Route, the Route MUST be considered successfully
+ attached. If no Gateway listeners accept attachment from this Route,
+ the Route MUST be considered detached from the Gateway.
+
+ Support: Extended
+ type: integer
+ format: int32
+ maximum: 65535
+ minimum: 1
+ sectionName:
+ description: |-
+ SectionName is the name of a section within the target resource. In the
+ following resources, SectionName is interpreted as the following:
+
+ * Gateway: Listener name. When both Port (experimental) and SectionName
+ are specified, the name and port of the selected listener must match
+ both specified values.
+ * Service: Port name. When both Port (experimental) and SectionName
+ are specified, the name and port of the selected listener must match
+ both specified values.
+
+ Implementations MAY choose to support attaching Routes to other resources.
+ If that is the case, they MUST clearly document how SectionName is
+ interpreted.
+
+ When unspecified (empty string), this will reference the entire resource.
+ For the purpose of status, an attachment is considered successful if at
+ least one section in the parent resource accepts it. For example, Gateway
+ listeners can restrict which Routes can attach to them by Route kind,
+ namespace, or hostname. If 1 of 2 Gateway listeners accept attachment from
+ the referencing Route, the Route MUST be considered successfully
+ attached. If no Gateway listeners accept attachment from this Route, the
+ Route MUST be considered detached from the Gateway.
+
+ Support: Core
+ type: string
+ maxLength: 253
+ minLength: 1
+ pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
+ podTemplate:
+ description: |-
+ Optional pod template used to configure the ACME challenge solver pods
+ used for HTTP01 challenges.
+ type: object
+ properties:
+ metadata:
+ description: |-
+ ObjectMeta overrides for the pod used to solve HTTP01 challenges.
+ Only the 'labels' and 'annotations' fields may be set.
+ If labels or annotations overlap with in-built values, the values here
+ will override the in-built values.
+ type: object
+ properties:
+ annotations:
+ description: Annotations that should be added to the created ACME HTTP01 solver pods.
+ type: object
+ additionalProperties:
+ type: string
+ labels:
+ description: Labels that should be added to the created ACME HTTP01 solver pods.
+ type: object
+ additionalProperties:
+ type: string
+ spec:
+ description: |-
+ PodSpec defines overrides for the HTTP01 challenge solver pod.
+ Check ACMEChallengeSolverHTTP01IngressPodSpec to find out currently supported fields.
+ All other fields will be ignored.
+ type: object
+ properties:
+ affinity:
+ description: If specified, the pod's scheduling constraints
+ type: object
+ properties:
+ nodeAffinity:
+ description: Describes node affinity scheduling rules for the pod.
+ type: object
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node matches the corresponding matchExpressions; the
+ node(s) with the highest sum are the most preferred.
+ type: array
+ items:
+ description: |-
+ An empty preferred scheduling term matches all objects with implicit weight 0
+ (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op).
+ type: object
+ required:
+ - preference
+ - weight
+ properties:
+ preference:
+ description: A node selector term, associated with the corresponding weight.
+ type: object
+ properties:
+ matchExpressions:
+ description: A list of node selector requirements by node's labels.
+ type: array
+ items:
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: The label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
+ type: string
+ values:
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchFields:
+ description: A list of node selector requirements by node's fields.
+ type: array
+ items:
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: The label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
+ type: string
+ values:
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ x-kubernetes-map-type: atomic
+ weight:
+ description: Weight associated with matching the corresponding nodeSelectorTerm, in the range 1-100.
+ type: integer
+ format: int32
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ If the affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to an update), the system
+ may or may not try to eventually evict the pod from its node.
+ type: object
+ required:
+ - nodeSelectorTerms
+ properties:
+ nodeSelectorTerms:
+ description: Required. A list of node selector terms. The terms are ORed.
+ type: array
+ items:
+ description: |-
+ A null or empty node selector term matches no objects. The requirements of
+ them are ANDed.
+ The TopologySelectorTerm type implements a subset of the NodeSelectorTerm.
+ type: object
+ properties:
+ matchExpressions:
+ description: A list of node selector requirements by node's labels.
+ type: array
+ items:
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: The label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
+ type: string
+ values:
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchFields:
+ description: A list of node selector requirements by node's fields.
+ type: array
+ items:
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: The label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
+ type: string
+ values:
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ x-kubernetes-map-type: atomic
+ x-kubernetes-list-type: atomic
+ x-kubernetes-map-type: atomic
+ podAffinity:
+ description: Describes pod affinity scheduling rules (e.g. co-locate this pod in the same node, zone, etc. as some other pod(s)).
+ type: object
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the
+ node(s) with the highest sum are the most preferred.
+ type: array
+ items:
+ description: The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)
+ type: object
+ required:
+ - podAffinityTerm
+ - weight
+ properties:
+ podAffinityTerm:
+ description: Required. A pod affinity term, associated with the corresponding weight.
+ type: object
+ required:
+ - topologyKey
+ properties:
+ labelSelector:
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
+ type: object
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
+ type: array
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: key is the label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ additionalProperties:
+ type: string
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both matchLabelKeys and labelSelector.
+ Also, matchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
+ Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
+ type: object
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
+ type: array
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: key is the label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ additionalProperties:
+ type: string
+ x-kubernetes-map-type: atomic
+ namespaces:
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
+ type: string
+ weight:
+ description: |-
+ weight associated with matching the corresponding podAffinityTerm,
+ in the range 1-100.
+ type: integer
+ format: int32
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ If the affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to a pod label update), the
+ system may or may not try to eventually evict the pod from its node.
+ When there are multiple elements, the lists of nodes corresponding to each
+ podAffinityTerm are intersected, i.e. all terms must be satisfied.
+ type: array
+ items:
+ description: |-
+ Defines a set of pods (namely those matching the labelSelector
+ relative to the given namespace(s)) that this pod should be
+ co-located (affinity) or not co-located (anti-affinity) with,
+ where co-located is defined as running on a node whose value of
+ the label with key matches that of any node on which
+ a pod of the set of pods is running
+ type: object
+ required:
+ - topologyKey
+ properties:
+ labelSelector:
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
+ type: object
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
+ type: array
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: key is the label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ additionalProperties:
+ type: string
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both matchLabelKeys and labelSelector.
+ Also, matchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
+ Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
+ type: object
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
+ type: array
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: key is the label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ additionalProperties:
+ type: string
+ x-kubernetes-map-type: atomic
+ namespaces:
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
+ type: string
+ x-kubernetes-list-type: atomic
+ podAntiAffinity:
+ description: Describes pod anti-affinity scheduling rules (e.g. avoid putting this pod in the same node, zone, etc. as some other pod(s)).
+ type: object
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the anti-affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling anti-affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the
+ node(s) with the highest sum are the most preferred.
+ type: array
+ items:
+ description: The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)
+ type: object
+ required:
+ - podAffinityTerm
+ - weight
+ properties:
+ podAffinityTerm:
+ description: Required. A pod affinity term, associated with the corresponding weight.
+ type: object
+ required:
+ - topologyKey
+ properties:
+ labelSelector:
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
+ type: object
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
+ type: array
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: key is the label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ additionalProperties:
+ type: string
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both matchLabelKeys and labelSelector.
+ Also, matchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
+ Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
+ type: object
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
+ type: array
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: key is the label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ additionalProperties:
+ type: string
+ x-kubernetes-map-type: atomic
+ namespaces:
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
+ type: string
+ weight:
+ description: |-
+ weight associated with matching the corresponding podAffinityTerm,
+ in the range 1-100.
+ type: integer
+ format: int32
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ If the anti-affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the anti-affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to a pod label update), the
+ system may or may not try to eventually evict the pod from its node.
+ When there are multiple elements, the lists of nodes corresponding to each
+ podAffinityTerm are intersected, i.e. all terms must be satisfied.
+ type: array
+ items:
+ description: |-
+ Defines a set of pods (namely those matching the labelSelector
+ relative to the given namespace(s)) that this pod should be
+ co-located (affinity) or not co-located (anti-affinity) with,
+ where co-located is defined as running on a node whose value of
+ the label with key matches that of any node on which
+ a pod of the set of pods is running
+ type: object
+ required:
+ - topologyKey
+ properties:
+ labelSelector:
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
+ type: object
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
+ type: array
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: key is the label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ additionalProperties:
+ type: string
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both matchLabelKeys and labelSelector.
+ Also, matchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
+ Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
+ type: object
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
+ type: array
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: key is the label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ additionalProperties:
+ type: string
+ x-kubernetes-map-type: atomic
+ namespaces:
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
+ type: string
+ x-kubernetes-list-type: atomic
+ imagePullSecrets:
+ description: If specified, the pod's imagePullSecrets
+ type: array
+ items:
+ description: |-
+ LocalObjectReference contains enough information to let you locate the
+ referenced object inside the same namespace.
+ type: object
+ properties:
+ name:
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ default: ""
+ x-kubernetes-map-type: atomic
+ nodeSelector:
+ description: |-
+ 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: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
+ type: object
+ additionalProperties:
+ type: string
+ priorityClassName:
+ description: If specified, the pod's priorityClassName.
+ type: string
+ securityContext:
+ description: If specified, the pod's security context
+ type: object
+ properties:
+ fsGroup:
+ description: |-
+ A special supplemental group that applies to all containers in a pod.
+ Some volume types allow the Kubelet to change the ownership of that volume
+ to be owned by the pod:
+
+ 1. The owning GID will be the FSGroup
+ 2. The setgid bit is set (new files created in the volume will be owned by FSGroup)
+ 3. The permission bits are OR'd with rw-rw----
+
+ If unset, the Kubelet will not modify the ownership and permissions of any volume.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: integer
+ format: int64
+ fsGroupChangePolicy:
+ description: |-
+ fsGroupChangePolicy defines behavior of changing ownership and permission of the volume
+ before being exposed inside Pod. This field will only apply to
+ volume types which support fsGroup based ownership(and permissions).
+ It will have no effect on ephemeral volume types such as: secret, configmaps
+ and emptydir.
+ Valid values are "OnRootMismatch" and "Always". If not specified, "Always" is used.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: string
+ runAsGroup:
+ description: |-
+ The GID to run the entrypoint of the container process.
+ Uses runtime default if unset.
+ May also be set in SecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence
+ for that container.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: integer
+ format: int64
+ runAsNonRoot:
+ description: |-
+ Indicates that the container must run as a non-root user.
+ If true, the Kubelet will validate the image at runtime to ensure that it
+ does not run as UID 0 (root) and fail to start the container if it does.
+ If unset or false, no such validation will be performed.
+ May also be set in SecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: boolean
+ runAsUser:
+ description: |-
+ The UID to run the entrypoint of the container process.
+ Defaults to user specified in image metadata if unspecified.
+ May also be set in SecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence
+ for that container.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: integer
+ format: int64
+ seLinuxOptions:
+ description: |-
+ The SELinux context to be applied to all containers.
+ If unspecified, the container runtime will allocate a random SELinux context for each
+ container. May also be set in SecurityContext. If set in
+ both SecurityContext and PodSecurityContext, the value specified in SecurityContext
+ takes precedence for that container.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: object
+ properties:
+ level:
+ description: Level is SELinux level label that applies to the container.
+ type: string
+ role:
+ description: Role is a SELinux role label that applies to the container.
+ type: string
+ type:
+ description: Type is a SELinux type label that applies to the container.
+ type: string
+ user:
+ description: User is a SELinux user label that applies to the container.
+ type: string
+ seccompProfile:
+ description: |-
+ The seccomp options to use by the containers in this pod.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: object
+ required:
+ - type
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile defined in a file on the node should be used.
+ The profile must be preconfigured on the node to work.
+ Must be a descending path, relative to the kubelet's configured seccomp profile location.
+ Must be set if type is "Localhost". Must NOT be set for any other type.
+ type: string
+ type:
+ description: |-
+ type indicates which kind of seccomp profile will be applied.
+ Valid options are:
+
+ Localhost - a profile defined in a file on the node should be used.
+ RuntimeDefault - the container runtime default profile should be used.
+ Unconfined - no profile should be applied.
+ type: string
+ supplementalGroups:
+ description: |-
+ A list of groups applied to the first process run in each container, in addition
+ to the container's primary GID, the fsGroup (if specified), and group memberships
+ defined in the container image for the uid of the container process. If unspecified,
+ no additional groups are added to any container. Note that group memberships
+ defined in the container image for the uid of the container process are still effective,
+ even if they are not included in this list.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: array
+ items:
+ type: integer
+ format: int64
+ sysctls:
+ description: |-
+ Sysctls hold a list of namespaced sysctls used for the pod. Pods with unsupported
+ sysctls (by the container runtime) might fail to launch.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: array
+ items:
+ description: Sysctl defines a kernel parameter to be set
+ type: object
+ required:
+ - name
+ - value
+ properties:
+ name:
+ description: Name of a property to set
+ type: string
+ value:
+ description: Value of a property to set
+ type: string
+ serviceAccountName:
+ description: If specified, the pod's service account
+ type: string
+ tolerations:
+ description: If specified, the pod's tolerations.
+ type: array
+ items:
+ description: |-
+ The pod this Toleration is attached to tolerates any taint that matches
+ the triple using the matching operator .
+ type: object
+ properties:
+ effect:
+ description: |-
+ Effect indicates the taint effect to match. Empty means match all taint effects.
+ When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute.
+ type: string
+ key:
+ description: |-
+ Key is the taint key that the toleration applies to. Empty means match all taint keys.
+ If the key is empty, operator must be Exists; this combination means to match all values and all keys.
+ type: string
+ operator:
+ description: |-
+ Operator represents a key's relationship to the value.
+ Valid operators are Exists and Equal. Defaults to Equal.
+ Exists is equivalent to wildcard for value, so that a pod can
+ tolerate all taints of a particular category.
+ type: string
+ tolerationSeconds:
+ description: |-
+ TolerationSeconds represents the period of time the toleration (which must be
+ of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default,
+ it is not set, which means tolerate the taint forever (do not evict). Zero and
+ negative values will be treated as 0 (evict immediately) by the system.
+ type: integer
+ format: int64
+ value:
+ description: |-
+ Value is the taint value the toleration matches to.
+ If the operator is Exists, the value should be empty, otherwise just a regular string.
+ type: string
+ serviceType:
+ description: |-
+ Optional service type for Kubernetes solver service. Supported values
+ are NodePort or ClusterIP. If unset, defaults to NodePort.
+ type: string
+ ingress:
+ description: |-
+ The ingress based HTTP01 challenge solver will solve challenges by
+ creating or modifying Ingress resources in order to route requests for
+ '/.well-known/acme-challenge/XYZ' to 'challenge solver' pods that are
+ provisioned by cert-manager for each Challenge to be completed.
+ type: object
+ properties:
+ class:
+ description: |-
+ This field configures the annotation `kubernetes.io/ingress.class` when
+ creating Ingress resources to solve ACME challenges that use this
+ challenge solver. Only one of `class`, `name` or `ingressClassName` may
+ be specified.
+ type: string
+ ingressClassName:
+ description: |-
+ This field configures the field `ingressClassName` on the created Ingress
+ resources used to solve ACME challenges that use this challenge solver.
+ This is the recommended way of configuring the ingress class. Only one of
+ `class`, `name` or `ingressClassName` may be specified.
+ type: string
+ ingressTemplate:
+ description: |-
+ Optional ingress template used to configure the ACME challenge solver
+ ingress used for HTTP01 challenges.
+ type: object
+ properties:
+ metadata:
+ description: |-
+ ObjectMeta overrides for the ingress used to solve HTTP01 challenges.
+ Only the 'labels' and 'annotations' fields may be set.
+ If labels or annotations overlap with in-built values, the values here
+ will override the in-built values.
+ type: object
+ properties:
+ annotations:
+ description: Annotations that should be added to the created ACME HTTP01 solver ingress.
+ type: object
+ additionalProperties:
+ type: string
+ labels:
+ description: Labels that should be added to the created ACME HTTP01 solver ingress.
+ type: object
+ additionalProperties:
+ type: string
+ name:
+ description: |-
+ The name of the ingress resource that should have ACME challenge solving
+ routes inserted into it in order to solve HTTP01 challenges.
+ This is typically used in conjunction with ingress controllers like
+ ingress-gce, which maintains a 1:1 mapping between external IPs and
+ ingress resources. Only one of `class`, `name` or `ingressClassName` may
+ be specified.
+ type: string
+ podTemplate:
+ description: |-
+ Optional pod template used to configure the ACME challenge solver pods
+ used for HTTP01 challenges.
+ type: object
+ properties:
+ metadata:
+ description: |-
+ ObjectMeta overrides for the pod used to solve HTTP01 challenges.
+ Only the 'labels' and 'annotations' fields may be set.
+ If labels or annotations overlap with in-built values, the values here
+ will override the in-built values.
+ type: object
+ properties:
+ annotations:
+ description: Annotations that should be added to the created ACME HTTP01 solver pods.
+ type: object
+ additionalProperties:
+ type: string
+ labels:
+ description: Labels that should be added to the created ACME HTTP01 solver pods.
+ type: object
+ additionalProperties:
+ type: string
+ spec:
+ description: |-
+ PodSpec defines overrides for the HTTP01 challenge solver pod.
+ Check ACMEChallengeSolverHTTP01IngressPodSpec to find out currently supported fields.
+ All other fields will be ignored.
+ type: object
+ properties:
+ affinity:
+ description: If specified, the pod's scheduling constraints
+ type: object
+ properties:
+ nodeAffinity:
+ description: Describes node affinity scheduling rules for the pod.
+ type: object
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node matches the corresponding matchExpressions; the
+ node(s) with the highest sum are the most preferred.
+ type: array
+ items:
+ description: |-
+ An empty preferred scheduling term matches all objects with implicit weight 0
+ (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op).
+ type: object
+ required:
+ - preference
+ - weight
+ properties:
+ preference:
+ description: A node selector term, associated with the corresponding weight.
+ type: object
+ properties:
+ matchExpressions:
+ description: A list of node selector requirements by node's labels.
+ type: array
+ items:
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: The label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
+ type: string
+ values:
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchFields:
+ description: A list of node selector requirements by node's fields.
+ type: array
+ items:
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: The label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
+ type: string
+ values:
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ x-kubernetes-map-type: atomic
+ weight:
+ description: Weight associated with matching the corresponding nodeSelectorTerm, in the range 1-100.
+ type: integer
+ format: int32
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ If the affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to an update), the system
+ may or may not try to eventually evict the pod from its node.
+ type: object
+ required:
+ - nodeSelectorTerms
+ properties:
+ nodeSelectorTerms:
+ description: Required. A list of node selector terms. The terms are ORed.
+ type: array
+ items:
+ description: |-
+ A null or empty node selector term matches no objects. The requirements of
+ them are ANDed.
+ The TopologySelectorTerm type implements a subset of the NodeSelectorTerm.
+ type: object
+ properties:
+ matchExpressions:
+ description: A list of node selector requirements by node's labels.
+ type: array
+ items:
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: The label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
+ type: string
+ values:
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchFields:
+ description: A list of node selector requirements by node's fields.
+ type: array
+ items:
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: The label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
+ type: string
+ values:
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ x-kubernetes-map-type: atomic
+ x-kubernetes-list-type: atomic
+ x-kubernetes-map-type: atomic
+ podAffinity:
+ description: Describes pod affinity scheduling rules (e.g. co-locate this pod in the same node, zone, etc. as some other pod(s)).
+ type: object
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the
+ node(s) with the highest sum are the most preferred.
+ type: array
+ items:
+ description: The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)
+ type: object
+ required:
+ - podAffinityTerm
+ - weight
+ properties:
+ podAffinityTerm:
+ description: Required. A pod affinity term, associated with the corresponding weight.
+ type: object
+ required:
+ - topologyKey
+ properties:
+ labelSelector:
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
+ type: object
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
+ type: array
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: key is the label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ additionalProperties:
+ type: string
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both matchLabelKeys and labelSelector.
+ Also, matchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
+ Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
+ type: object
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
+ type: array
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: key is the label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ additionalProperties:
+ type: string
+ x-kubernetes-map-type: atomic
+ namespaces:
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
+ type: string
+ weight:
+ description: |-
+ weight associated with matching the corresponding podAffinityTerm,
+ in the range 1-100.
+ type: integer
+ format: int32
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ If the affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to a pod label update), the
+ system may or may not try to eventually evict the pod from its node.
+ When there are multiple elements, the lists of nodes corresponding to each
+ podAffinityTerm are intersected, i.e. all terms must be satisfied.
+ type: array
+ items:
+ description: |-
+ Defines a set of pods (namely those matching the labelSelector
+ relative to the given namespace(s)) that this pod should be
+ co-located (affinity) or not co-located (anti-affinity) with,
+ where co-located is defined as running on a node whose value of
+ the label with key matches that of any node on which
+ a pod of the set of pods is running
+ type: object
+ required:
+ - topologyKey
+ properties:
+ labelSelector:
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
+ type: object
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
+ type: array
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: key is the label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ additionalProperties:
+ type: string
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both matchLabelKeys and labelSelector.
+ Also, matchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
+ Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
+ type: object
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
+ type: array
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: key is the label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ additionalProperties:
+ type: string
+ x-kubernetes-map-type: atomic
+ namespaces:
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
+ type: string
+ x-kubernetes-list-type: atomic
+ podAntiAffinity:
+ description: Describes pod anti-affinity scheduling rules (e.g. avoid putting this pod in the same node, zone, etc. as some other pod(s)).
+ type: object
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the anti-affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling anti-affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the
+ node(s) with the highest sum are the most preferred.
+ type: array
+ items:
+ description: The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)
+ type: object
+ required:
+ - podAffinityTerm
+ - weight
+ properties:
+ podAffinityTerm:
+ description: Required. A pod affinity term, associated with the corresponding weight.
+ type: object
+ required:
+ - topologyKey
+ properties:
+ labelSelector:
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
+ type: object
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
+ type: array
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: key is the label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ additionalProperties:
+ type: string
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both matchLabelKeys and labelSelector.
+ Also, matchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
+ Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
+ type: object
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
+ type: array
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: key is the label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ additionalProperties:
+ type: string
+ x-kubernetes-map-type: atomic
+ namespaces:
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
+ type: string
+ weight:
+ description: |-
+ weight associated with matching the corresponding podAffinityTerm,
+ in the range 1-100.
+ type: integer
+ format: int32
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ If the anti-affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the anti-affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to a pod label update), the
+ system may or may not try to eventually evict the pod from its node.
+ When there are multiple elements, the lists of nodes corresponding to each
+ podAffinityTerm are intersected, i.e. all terms must be satisfied.
+ type: array
+ items:
+ description: |-
+ Defines a set of pods (namely those matching the labelSelector
+ relative to the given namespace(s)) that this pod should be
+ co-located (affinity) or not co-located (anti-affinity) with,
+ where co-located is defined as running on a node whose value of
+ the label with key matches that of any node on which
+ a pod of the set of pods is running
+ type: object
+ required:
+ - topologyKey
+ properties:
+ labelSelector:
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
+ type: object
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
+ type: array
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: key is the label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ additionalProperties:
+ type: string
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both matchLabelKeys and labelSelector.
+ Also, matchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
+ Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
+ type: object
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
+ type: array
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: key is the label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ additionalProperties:
+ type: string
+ x-kubernetes-map-type: atomic
+ namespaces:
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
+ type: string
+ x-kubernetes-list-type: atomic
+ imagePullSecrets:
+ description: If specified, the pod's imagePullSecrets
+ type: array
+ items:
+ description: |-
+ LocalObjectReference contains enough information to let you locate the
+ referenced object inside the same namespace.
+ type: object
+ properties:
+ name:
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ default: ""
+ x-kubernetes-map-type: atomic
+ nodeSelector:
+ description: |-
+ 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: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
+ type: object
+ additionalProperties:
+ type: string
+ priorityClassName:
+ description: If specified, the pod's priorityClassName.
+ type: string
+ securityContext:
+ description: If specified, the pod's security context
+ type: object
+ properties:
+ fsGroup:
+ description: |-
+ A special supplemental group that applies to all containers in a pod.
+ Some volume types allow the Kubelet to change the ownership of that volume
+ to be owned by the pod:
+
+ 1. The owning GID will be the FSGroup
+ 2. The setgid bit is set (new files created in the volume will be owned by FSGroup)
+ 3. The permission bits are OR'd with rw-rw----
+
+ If unset, the Kubelet will not modify the ownership and permissions of any volume.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: integer
+ format: int64
+ fsGroupChangePolicy:
+ description: |-
+ fsGroupChangePolicy defines behavior of changing ownership and permission of the volume
+ before being exposed inside Pod. This field will only apply to
+ volume types which support fsGroup based ownership(and permissions).
+ It will have no effect on ephemeral volume types such as: secret, configmaps
+ and emptydir.
+ Valid values are "OnRootMismatch" and "Always". If not specified, "Always" is used.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: string
+ runAsGroup:
+ description: |-
+ The GID to run the entrypoint of the container process.
+ Uses runtime default if unset.
+ May also be set in SecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence
+ for that container.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: integer
+ format: int64
+ runAsNonRoot:
+ description: |-
+ Indicates that the container must run as a non-root user.
+ If true, the Kubelet will validate the image at runtime to ensure that it
+ does not run as UID 0 (root) and fail to start the container if it does.
+ If unset or false, no such validation will be performed.
+ May also be set in SecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: boolean
+ runAsUser:
+ description: |-
+ The UID to run the entrypoint of the container process.
+ Defaults to user specified in image metadata if unspecified.
+ May also be set in SecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence
+ for that container.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: integer
+ format: int64
+ seLinuxOptions:
+ description: |-
+ The SELinux context to be applied to all containers.
+ If unspecified, the container runtime will allocate a random SELinux context for each
+ container. May also be set in SecurityContext. If set in
+ both SecurityContext and PodSecurityContext, the value specified in SecurityContext
+ takes precedence for that container.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: object
+ properties:
+ level:
+ description: Level is SELinux level label that applies to the container.
+ type: string
+ role:
+ description: Role is a SELinux role label that applies to the container.
+ type: string
+ type:
+ description: Type is a SELinux type label that applies to the container.
+ type: string
+ user:
+ description: User is a SELinux user label that applies to the container.
+ type: string
+ seccompProfile:
+ description: |-
+ The seccomp options to use by the containers in this pod.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: object
+ required:
+ - type
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile defined in a file on the node should be used.
+ The profile must be preconfigured on the node to work.
+ Must be a descending path, relative to the kubelet's configured seccomp profile location.
+ Must be set if type is "Localhost". Must NOT be set for any other type.
+ type: string
+ type:
+ description: |-
+ type indicates which kind of seccomp profile will be applied.
+ Valid options are:
+
+ Localhost - a profile defined in a file on the node should be used.
+ RuntimeDefault - the container runtime default profile should be used.
+ Unconfined - no profile should be applied.
+ type: string
+ supplementalGroups:
+ description: |-
+ A list of groups applied to the first process run in each container, in addition
+ to the container's primary GID, the fsGroup (if specified), and group memberships
+ defined in the container image for the uid of the container process. If unspecified,
+ no additional groups are added to any container. Note that group memberships
+ defined in the container image for the uid of the container process are still effective,
+ even if they are not included in this list.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: array
+ items:
+ type: integer
+ format: int64
+ sysctls:
+ description: |-
+ Sysctls hold a list of namespaced sysctls used for the pod. Pods with unsupported
+ sysctls (by the container runtime) might fail to launch.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: array
+ items:
+ description: Sysctl defines a kernel parameter to be set
+ type: object
+ required:
+ - name
+ - value
+ properties:
+ name:
+ description: Name of a property to set
+ type: string
+ value:
+ description: Value of a property to set
+ type: string
+ serviceAccountName:
+ description: If specified, the pod's service account
+ type: string
+ tolerations:
+ description: If specified, the pod's tolerations.
+ type: array
+ items:
+ description: |-
+ The pod this Toleration is attached to tolerates any taint that matches
+ the triple using the matching operator .
+ type: object
+ properties:
+ effect:
+ description: |-
+ Effect indicates the taint effect to match. Empty means match all taint effects.
+ When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute.
+ type: string
+ key:
+ description: |-
+ Key is the taint key that the toleration applies to. Empty means match all taint keys.
+ If the key is empty, operator must be Exists; this combination means to match all values and all keys.
+ type: string
+ operator:
+ description: |-
+ Operator represents a key's relationship to the value.
+ Valid operators are Exists and Equal. Defaults to Equal.
+ Exists is equivalent to wildcard for value, so that a pod can
+ tolerate all taints of a particular category.
+ type: string
+ tolerationSeconds:
+ description: |-
+ TolerationSeconds represents the period of time the toleration (which must be
+ of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default,
+ it is not set, which means tolerate the taint forever (do not evict). Zero and
+ negative values will be treated as 0 (evict immediately) by the system.
+ type: integer
+ format: int64
+ value:
+ description: |-
+ Value is the taint value the toleration matches to.
+ If the operator is Exists, the value should be empty, otherwise just a regular string.
+ type: string
+ serviceType:
+ description: |-
+ Optional service type for Kubernetes solver service. Supported values
+ are NodePort or ClusterIP. If unset, defaults to NodePort.
+ type: string
+ selector:
+ description: |-
+ Selector selects a set of DNSNames on the Certificate resource that
+ should be solved using this challenge solver.
+ If not specified, the solver will be treated as the 'default' solver
+ with the lowest priority, i.e. if any other solver has a more specific
+ match, it will be used instead.
+ type: object
+ properties:
+ dnsNames:
+ description: |-
+ List of DNSNames that this solver will be used to solve.
+ If specified and a match is found, a dnsNames selector will take
+ precedence over a dnsZones selector.
+ If multiple solvers match with the same dnsNames value, the solver
+ with the most matching labels in matchLabels will be selected.
+ If neither has more matches, the solver defined earlier in the list
+ will be selected.
+ type: array
+ items:
+ type: string
+ dnsZones:
+ description: |-
+ List of DNSZones that this solver will be used to solve.
+ The most specific DNS zone match specified here will take precedence
+ over other DNS zone matches, so a solver specifying sys.example.com
+ will be selected over one specifying example.com for the domain
+ www.sys.example.com.
+ If multiple solvers match with the same dnsZones value, the solver
+ with the most matching labels in matchLabels will be selected.
+ If neither has more matches, the solver defined earlier in the list
+ will be selected.
+ type: array
+ items:
+ type: string
+ matchLabels:
+ description: |-
+ A label selector that is used to refine the set of certificate's that
+ this challenge solver will apply to.
+ type: object
+ additionalProperties:
+ type: string
+ token:
+ description: |-
+ The ACME challenge token for this challenge.
+ This is the raw value returned from the ACME server.
+ type: string
+ type:
+ description: |-
+ The type of ACME challenge this resource represents.
+ One of "HTTP-01" or "DNS-01".
+ type: string
+ enum:
+ - HTTP-01
+ - DNS-01
+ url:
+ description: |-
+ The URL of the ACME Challenge resource for this challenge.
+ This can be used to lookup details about the status of this challenge.
+ type: string
+ wildcard:
+ description: |-
+ wildcard will be true if this challenge is for a wildcard identifier,
+ for example '*.example.com'.
+ type: boolean
+ status:
+ type: object
+ properties:
+ presented:
+ description: |-
+ presented will be set to true if the challenge values for this challenge
+ are currently 'presented'.
+ This *does not* imply the self check is passing. Only that the values
+ have been 'submitted' for the appropriate challenge mechanism (i.e. the
+ DNS01 TXT record has been presented, or the HTTP01 configuration has been
+ configured).
+ type: boolean
+ processing:
+ description: |-
+ Used to denote whether this challenge should be processed or not.
+ This field will only be set to true by the 'scheduling' component.
+ It will only be set to false by the 'challenges' controller, after the
+ challenge has reached a final state or timed out.
+ If this field is set to false, the challenge controller will not take
+ any more action.
+ type: boolean
+ reason:
+ description: |-
+ Contains human readable information on why the Challenge is in the
+ current state.
+ type: string
+ state:
+ description: |-
+ Contains the current 'state' of the challenge.
+ If not set, the state of the challenge is unknown.
+ type: string
+ enum:
+ - valid
+ - ready
+ - pending
+ - processing
+ - invalid
+ - expired
+ - errored
+ served: true
+ storage: true
+ subresources:
+ status: {}
+
+# END crd
+---
+# Source: cert-manager/templates/crds.yaml
+# START crd
+apiVersion: apiextensions.k8s.io/v1
+kind: CustomResourceDefinition
+metadata:
+ name: clusterissuers.cert-manager.io
+ # START annotations
+ annotations:
+ helm.sh/resource-policy: keep
+ # END annotations
+ labels:
+ app: 'cert-manager'
+ app.kubernetes.io/name: 'cert-manager'
+ app.kubernetes.io/instance: 'cert-manager'
+ # Generated labels
+ app.kubernetes.io/version: "v1.16.1"
+spec:
+ group: cert-manager.io
+ names:
+ kind: ClusterIssuer
+ listKind: ClusterIssuerList
+ plural: clusterissuers
+ singular: clusterissuer
+ categories:
+ - cert-manager
+ scope: Cluster
+ versions:
+ - name: v1
+ subresources:
+ status: {}
+ additionalPrinterColumns:
+ - jsonPath: .status.conditions[?(@.type=="Ready")].status
+ name: Ready
+ type: string
+ - jsonPath: .status.conditions[?(@.type=="Ready")].message
+ name: Status
+ priority: 1
+ type: string
+ - jsonPath: .metadata.creationTimestamp
+ description: CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC.
+ name: Age
+ type: date
+ schema:
+ openAPIV3Schema:
+ description: |-
+ A ClusterIssuer represents a certificate issuing authority which can be
+ referenced as part of `issuerRef` fields.
+ It is similar to an Issuer, however it is cluster-scoped and therefore can
+ be referenced by resources that exist in *any* namespace, not just the same
+ namespace as the referent.
+ type: object
+ required:
+ - spec
+ properties:
+ apiVersion:
+ description: |-
+ APIVersion defines the versioned schema of this representation of an object.
+ Servers should convert recognized schemas to the latest internal value, and
+ may reject unrecognized values.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
+ type: string
+ kind:
+ description: |-
+ Kind is a string value representing the REST resource this object represents.
+ Servers may infer this from the endpoint the client submits requests to.
+ Cannot be updated.
+ In CamelCase.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
+ type: string
+ metadata:
+ type: object
+ spec:
+ description: Desired state of the ClusterIssuer resource.
+ type: object
+ properties:
+ acme:
+ description: |-
+ ACME configures this issuer to communicate with a RFC8555 (ACME) server
+ to obtain signed x509 certificates.
+ type: object
+ required:
+ - privateKeySecretRef
+ - server
+ properties:
+ caBundle:
+ description: |-
+ Base64-encoded bundle of PEM CAs which can be used to validate the certificate
+ chain presented by the ACME server.
+ Mutually exclusive with SkipTLSVerify; prefer using CABundle to prevent various
+ kinds of security vulnerabilities.
+ If CABundle and SkipTLSVerify are unset, the system certificate bundle inside
+ the container is used to validate the TLS connection.
+ type: string
+ format: byte
+ disableAccountKeyGeneration:
+ description: |-
+ Enables or disables generating a new ACME account key.
+ If true, the Issuer resource will *not* request a new account but will expect
+ the account key to be supplied via an existing secret.
+ If false, the cert-manager system will generate a new ACME account key
+ for the Issuer.
+ Defaults to false.
+ type: boolean
+ email:
+ description: |-
+ Email is the email address to be associated with the ACME account.
+ This field is optional, but it is strongly recommended to be set.
+ It will be used to contact you in case of issues with your account or
+ certificates, including expiry notification emails.
+ This field may be updated after the account is initially registered.
+ type: string
+ enableDurationFeature:
+ description: |-
+ Enables requesting a Not After date on certificates that matches the
+ duration of the certificate. This is not supported by all ACME servers
+ like Let's Encrypt. If set to true when the ACME server does not support
+ it, it will create an error on the Order.
+ Defaults to false.
+ type: boolean
+ externalAccountBinding:
+ description: |-
+ ExternalAccountBinding is a reference to a CA external account of the ACME
+ server.
+ If set, upon registration cert-manager will attempt to associate the given
+ external account credentials with the registered ACME account.
+ type: object
+ required:
+ - keyID
+ - keySecretRef
+ properties:
+ keyAlgorithm:
+ description: |-
+ Deprecated: keyAlgorithm field exists for historical compatibility
+ reasons and should not be used. The algorithm is now hardcoded to HS256
+ in golang/x/crypto/acme.
+ type: string
+ enum:
+ - HS256
+ - HS384
+ - HS512
+ keyID:
+ description: keyID is the ID of the CA key that the External Account is bound to.
+ type: string
+ keySecretRef:
+ description: |-
+ keySecretRef is a Secret Key Selector referencing a data item in a Kubernetes
+ Secret which holds the symmetric MAC key of the External Account Binding.
+ The `key` is the index string that is paired with the key data in the
+ Secret and should not be confused with the key data itself, or indeed with
+ the External Account Binding keyID above.
+ The secret key stored in the Secret **must** be un-padded, base64 URL
+ encoded data.
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ preferredChain:
+ description: |-
+ PreferredChain is the chain to use if the ACME server outputs multiple.
+ PreferredChain is no guarantee that this one gets delivered by the ACME
+ endpoint.
+ For example, for Let's Encrypt's DST crosssign you would use:
+ "DST Root CA X3" or "ISRG Root X1" for the newer Let's Encrypt root CA.
+ This value picks the first certificate bundle in the combined set of
+ ACME default and alternative chains that has a root-most certificate with
+ this value as its issuer's commonname.
+ type: string
+ maxLength: 64
+ privateKeySecretRef:
+ description: |-
+ PrivateKey is the name of a Kubernetes Secret resource that will be used to
+ store the automatically generated ACME account private key.
+ Optionally, a `key` may be specified to select a specific entry within
+ the named Secret resource.
+ If `key` is not specified, a default of `tls.key` will be used.
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ server:
+ description: |-
+ Server is the URL used to access the ACME server's 'directory' endpoint.
+ For example, for Let's Encrypt's staging endpoint, you would use:
+ "https://acme-staging-v02.api.letsencrypt.org/directory".
+ Only ACME v2 endpoints (i.e. RFC 8555) are supported.
+ type: string
+ skipTLSVerify:
+ description: |-
+ INSECURE: Enables or disables validation of the ACME server TLS certificate.
+ If true, requests to the ACME server will not have the TLS certificate chain
+ validated.
+ Mutually exclusive with CABundle; prefer using CABundle to prevent various
+ kinds of security vulnerabilities.
+ Only enable this option in development environments.
+ If CABundle and SkipTLSVerify are unset, the system certificate bundle inside
+ the container is used to validate the TLS connection.
+ Defaults to false.
+ type: boolean
+ solvers:
+ description: |-
+ Solvers is a list of challenge solvers that will be used to solve
+ ACME challenges for the matching domains.
+ Solver configurations must be provided in order to obtain certificates
+ from an ACME server.
+ For more information, see: https://cert-manager.io/docs/configuration/acme/
+ type: array
+ items:
+ description: |-
+ An ACMEChallengeSolver describes how to solve ACME challenges for the issuer it is part of.
+ A selector may be provided to use different solving strategies for different DNS names.
+ Only one of HTTP01 or DNS01 must be provided.
+ type: object
+ properties:
+ dns01:
+ description: |-
+ Configures cert-manager to attempt to complete authorizations by
+ performing the DNS01 challenge flow.
+ type: object
+ properties:
+ acmeDNS:
+ description: |-
+ Use the 'ACME DNS' (https://github.com/joohoi/acme-dns) API to manage
+ DNS01 challenge records.
+ type: object
+ required:
+ - accountSecretRef
+ - host
+ properties:
+ accountSecretRef:
+ description: |-
+ A reference to a specific 'key' within a Secret resource.
+ In some instances, `key` is a required field.
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ host:
+ type: string
+ akamai:
+ description: Use the Akamai DNS zone management API to manage DNS01 challenge records.
+ type: object
+ required:
+ - accessTokenSecretRef
+ - clientSecretSecretRef
+ - clientTokenSecretRef
+ - serviceConsumerDomain
+ properties:
+ accessTokenSecretRef:
+ description: |-
+ A reference to a specific 'key' within a Secret resource.
+ In some instances, `key` is a required field.
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ clientSecretSecretRef:
+ description: |-
+ A reference to a specific 'key' within a Secret resource.
+ In some instances, `key` is a required field.
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ clientTokenSecretRef:
+ description: |-
+ A reference to a specific 'key' within a Secret resource.
+ In some instances, `key` is a required field.
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ serviceConsumerDomain:
+ type: string
+ azureDNS:
+ description: Use the Microsoft Azure DNS API to manage DNS01 challenge records.
+ type: object
+ required:
+ - resourceGroupName
+ - subscriptionID
+ properties:
+ clientID:
+ description: |-
+ Auth: Azure Service Principal:
+ The ClientID of the Azure Service Principal used to authenticate with Azure DNS.
+ If set, ClientSecret and TenantID must also be set.
+ type: string
+ clientSecretSecretRef:
+ description: |-
+ Auth: Azure Service Principal:
+ A reference to a Secret containing the password associated with the Service Principal.
+ If set, ClientID and TenantID must also be set.
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ environment:
+ description: name of the Azure environment (default AzurePublicCloud)
+ type: string
+ enum:
+ - AzurePublicCloud
+ - AzureChinaCloud
+ - AzureGermanCloud
+ - AzureUSGovernmentCloud
+ hostedZoneName:
+ description: name of the DNS zone that should be used
+ type: string
+ managedIdentity:
+ description: |-
+ Auth: Azure Workload Identity or Azure Managed Service Identity:
+ Settings to enable Azure Workload Identity or Azure Managed Service Identity
+ If set, ClientID, ClientSecret and TenantID must not be set.
+ type: object
+ properties:
+ clientID:
+ description: client ID of the managed identity, can not be used at the same time as resourceID
+ type: string
+ resourceID:
+ description: |-
+ resource ID of the managed identity, can not be used at the same time as clientID
+ Cannot be used for Azure Managed Service Identity
+ type: string
+ resourceGroupName:
+ description: resource group the DNS zone is located in
+ type: string
+ subscriptionID:
+ description: ID of the Azure subscription
+ type: string
+ tenantID:
+ description: |-
+ Auth: Azure Service Principal:
+ The TenantID of the Azure Service Principal used to authenticate with Azure DNS.
+ If set, ClientID and ClientSecret must also be set.
+ type: string
+ cloudDNS:
+ description: Use the Google Cloud DNS API to manage DNS01 challenge records.
+ type: object
+ required:
+ - project
+ properties:
+ hostedZoneName:
+ description: |-
+ HostedZoneName is an optional field that tells cert-manager in which
+ Cloud DNS zone the challenge record has to be created.
+ If left empty cert-manager will automatically choose a zone.
+ type: string
+ project:
+ type: string
+ serviceAccountSecretRef:
+ description: |-
+ A reference to a specific 'key' within a Secret resource.
+ In some instances, `key` is a required field.
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ cloudflare:
+ description: Use the Cloudflare API to manage DNS01 challenge records.
+ type: object
+ properties:
+ apiKeySecretRef:
+ description: |-
+ API key to use to authenticate with Cloudflare.
+ Note: using an API token to authenticate is now the recommended method
+ as it allows greater control of permissions.
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ apiTokenSecretRef:
+ description: API token used to authenticate with Cloudflare.
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ email:
+ description: Email of the account, only required when using API key based authentication.
+ type: string
+ cnameStrategy:
+ description: |-
+ CNAMEStrategy configures how the DNS01 provider should handle CNAME
+ records when found in DNS zones.
+ type: string
+ enum:
+ - None
+ - Follow
+ digitalocean:
+ description: Use the DigitalOcean DNS API to manage DNS01 challenge records.
+ type: object
+ required:
+ - tokenSecretRef
+ properties:
+ tokenSecretRef:
+ description: |-
+ A reference to a specific 'key' within a Secret resource.
+ In some instances, `key` is a required field.
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ rfc2136:
+ description: |-
+ Use RFC2136 ("Dynamic Updates in the Domain Name System") (https://datatracker.ietf.org/doc/rfc2136/)
+ to manage DNS01 challenge records.
+ type: object
+ required:
+ - nameserver
+ properties:
+ nameserver:
+ description: |-
+ The IP address or hostname of an authoritative DNS server supporting
+ RFC2136 in the form host:port. If the host is an IPv6 address it must be
+ enclosed in square brackets (e.g [2001:db8::1]) ; port is optional.
+ This field is required.
+ type: string
+ tsigAlgorithm:
+ description: |-
+ The TSIG Algorithm configured in the DNS supporting RFC2136. Used only
+ when ``tsigSecretSecretRef`` and ``tsigKeyName`` are defined.
+ Supported values are (case-insensitive): ``HMACMD5`` (default),
+ ``HMACSHA1``, ``HMACSHA256`` or ``HMACSHA512``.
+ type: string
+ tsigKeyName:
+ description: |-
+ The TSIG Key name configured in the DNS.
+ If ``tsigSecretSecretRef`` is defined, this field is required.
+ type: string
+ tsigSecretSecretRef:
+ description: |-
+ The name of the secret containing the TSIG value.
+ If ``tsigKeyName`` is defined, this field is required.
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ route53:
+ description: Use the AWS Route53 API to manage DNS01 challenge records.
+ type: object
+ properties:
+ accessKeyID:
+ description: |-
+ The AccessKeyID is used for authentication.
+ Cannot be set when SecretAccessKeyID is set.
+ If neither the Access Key nor Key ID are set, we fall-back to using env
+ vars, shared credentials file or AWS Instance metadata,
+ see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
+ type: string
+ accessKeyIDSecretRef:
+ description: |-
+ The SecretAccessKey is used for authentication. If set, pull the AWS
+ access key ID from a key within a Kubernetes Secret.
+ Cannot be set when AccessKeyID is set.
+ If neither the Access Key nor Key ID are set, we fall-back to using env
+ vars, shared credentials file or AWS Instance metadata,
+ see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ auth:
+ description: Auth configures how cert-manager authenticates.
+ type: object
+ required:
+ - kubernetes
+ properties:
+ kubernetes:
+ description: |-
+ Kubernetes authenticates with Route53 using AssumeRoleWithWebIdentity
+ by passing a bound ServiceAccount token.
+ type: object
+ required:
+ - serviceAccountRef
+ properties:
+ serviceAccountRef:
+ description: |-
+ A reference to a service account that will be used to request a bound
+ token (also known as "projected token"). To use this field, you must
+ configure an RBAC rule to let cert-manager request a token.
+ type: object
+ required:
+ - name
+ properties:
+ audiences:
+ description: |-
+ TokenAudiences is an optional list of audiences to include in the
+ token passed to AWS. The default token consisting of the issuer's namespace
+ and name is always included.
+ If unset the audience defaults to `sts.amazonaws.com`.
+ type: array
+ items:
+ type: string
+ name:
+ description: Name of the ServiceAccount used to request a token.
+ type: string
+ hostedZoneID:
+ description: If set, the provider will manage only this zone in Route53 and will not do a lookup using the route53:ListHostedZonesByName api call.
+ type: string
+ region:
+ description: |-
+ Override the AWS region.
+
+ Route53 is a global service and does not have regional endpoints but the
+ region specified here (or via environment variables) is used as a hint to
+ help compute the correct AWS credential scope and partition when it
+ connects to Route53. See:
+ - [Amazon Route 53 endpoints and quotas](https://docs.aws.amazon.com/general/latest/gr/r53.html)
+ - [Global services](https://docs.aws.amazon.com/whitepapers/latest/aws-fault-isolation-boundaries/global-services.html)
+
+ If you omit this region field, cert-manager will use the region from
+ AWS_REGION and AWS_DEFAULT_REGION environment variables, if they are set
+ in the cert-manager controller Pod.
+
+ The `region` field is not needed if you use [IAM Roles for Service Accounts (IRSA)](https://docs.aws.amazon.com/eks/latest/userguide/iam-roles-for-service-accounts.html).
+ Instead an AWS_REGION environment variable is added to the cert-manager controller Pod by:
+ [Amazon EKS Pod Identity Webhook](https://github.com/aws/amazon-eks-pod-identity-webhook).
+ In this case this `region` field value is ignored.
+
+ The `region` field is not needed if you use [EKS Pod Identities](https://docs.aws.amazon.com/eks/latest/userguide/pod-identities.html).
+ Instead an AWS_REGION environment variable is added to the cert-manager controller Pod by:
+ [Amazon EKS Pod Identity Agent](https://github.com/aws/eks-pod-identity-agent),
+ In this case this `region` field value is ignored.
+ type: string
+ role:
+ description: |-
+ Role is a Role ARN which the Route53 provider will assume using either the explicit credentials AccessKeyID/SecretAccessKey
+ or the inferred credentials from environment variables, shared credentials file or AWS Instance metadata
+ type: string
+ secretAccessKeySecretRef:
+ description: |-
+ The SecretAccessKey is used for authentication.
+ If neither the Access Key nor Key ID are set, we fall-back to using env
+ vars, shared credentials file or AWS Instance metadata,
+ see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ webhook:
+ description: |-
+ Configure an external webhook based DNS01 challenge solver to manage
+ DNS01 challenge records.
+ type: object
+ required:
+ - groupName
+ - solverName
+ properties:
+ config:
+ description: |-
+ Additional configuration that should be passed to the webhook apiserver
+ when challenges are processed.
+ This can contain arbitrary JSON data.
+ Secret values should not be specified in this stanza.
+ If secret values are needed (e.g. credentials for a DNS service), you
+ should use a SecretKeySelector to reference a Secret resource.
+ For details on the schema of this field, consult the webhook provider
+ implementation's documentation.
+ x-kubernetes-preserve-unknown-fields: true
+ groupName:
+ description: |-
+ The API group name that should be used when POSTing ChallengePayload
+ resources to the webhook apiserver.
+ This should be the same as the GroupName specified in the webhook
+ provider implementation.
+ type: string
+ solverName:
+ description: |-
+ The name of the solver to use, as defined in the webhook provider
+ implementation.
+ This will typically be the name of the provider, e.g. 'cloudflare'.
+ type: string
+ http01:
+ description: |-
+ Configures cert-manager to attempt to complete authorizations by
+ performing the HTTP01 challenge flow.
+ It is not possible to obtain certificates for wildcard domain names
+ (e.g. `*.example.com`) using the HTTP01 challenge mechanism.
+ type: object
+ properties:
+ gatewayHTTPRoute:
+ description: |-
+ The Gateway API is a sig-network community API that models service networking
+ in Kubernetes (https://gateway-api.sigs.k8s.io/). The Gateway solver will
+ create HTTPRoutes with the specified labels in the same namespace as the challenge.
+ This solver is experimental, and fields / behaviour may change in the future.
+ type: object
+ properties:
+ labels:
+ description: |-
+ Custom labels that will be applied to HTTPRoutes created by cert-manager
+ while solving HTTP-01 challenges.
+ type: object
+ additionalProperties:
+ type: string
+ parentRefs:
+ description: |-
+ When solving an HTTP-01 challenge, cert-manager creates an HTTPRoute.
+ cert-manager needs to know which parentRefs should be used when creating
+ the HTTPRoute. Usually, the parentRef references a Gateway. See:
+ https://gateway-api.sigs.k8s.io/api-types/httproute/#attaching-to-gateways
+ type: array
+ items:
+ description: |-
+ ParentReference identifies an API object (usually a Gateway) that can be considered
+ a parent of this resource (usually a route). There are two kinds of parent resources
+ with "Core" support:
+
+ * Gateway (Gateway conformance profile)
+ * Service (Mesh conformance profile, ClusterIP Services only)
+
+ This API may be extended in the future to support additional kinds of parent
+ resources.
+
+ The API object must be valid in the cluster; the Group and Kind must
+ be registered in the cluster for this reference to be valid.
+ type: object
+ required:
+ - name
+ properties:
+ group:
+ description: |-
+ Group is the group of the referent.
+ When unspecified, "gateway.networking.k8s.io" is inferred.
+ To set the core API group (such as for a "Service" kind referent),
+ Group must be explicitly set to "" (empty string).
+
+ Support: Core
+ type: string
+ default: gateway.networking.k8s.io
+ maxLength: 253
+ pattern: ^$|^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
+ kind:
+ description: |-
+ Kind is kind of the referent.
+
+ There are two kinds of parent resources with "Core" support:
+
+ * Gateway (Gateway conformance profile)
+ * Service (Mesh conformance profile, ClusterIP Services only)
+
+ Support for other resources is Implementation-Specific.
+ type: string
+ default: Gateway
+ maxLength: 63
+ minLength: 1
+ pattern: ^[a-zA-Z]([-a-zA-Z0-9]*[a-zA-Z0-9])?$
+ name:
+ description: |-
+ Name is the name of the referent.
+
+ Support: Core
+ type: string
+ maxLength: 253
+ minLength: 1
+ namespace:
+ description: |-
+ Namespace is the namespace of the referent. When unspecified, this refers
+ to the local namespace of the Route.
+
+ Note that there are specific rules for ParentRefs which cross namespace
+ boundaries. Cross-namespace references are only valid if they are explicitly
+ allowed by something in the namespace they are referring to. For example:
+ Gateway has the AllowedRoutes field, and ReferenceGrant provides a
+ generic way to enable any other kind of cross-namespace reference.
+
+
+ ParentRefs from a Route to a Service in the same namespace are "producer"
+ routes, which apply default routing rules to inbound connections from
+ any namespace to the Service.
+
+ ParentRefs from a Route to a Service in a different namespace are
+ "consumer" routes, and these routing rules are only applied to outbound
+ connections originating from the same namespace as the Route, for which
+ the intended destination of the connections are a Service targeted as a
+ ParentRef of the Route.
+
+
+ Support: Core
+ type: string
+ maxLength: 63
+ minLength: 1
+ pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
+ port:
+ description: |-
+ Port is the network port this Route targets. It can be interpreted
+ differently based on the type of parent resource.
+
+ When the parent resource is a Gateway, this targets all listeners
+ listening on the specified port that also support this kind of Route(and
+ select this Route). It's not recommended to set `Port` unless the
+ networking behaviors specified in a Route must apply to a specific port
+ as opposed to a listener(s) whose port(s) may be changed. When both Port
+ and SectionName are specified, the name and port of the selected listener
+ must match both specified values.
+
+
+ When the parent resource is a Service, this targets a specific port in the
+ Service spec. When both Port (experimental) and SectionName are specified,
+ the name and port of the selected port must match both specified values.
+
+
+ Implementations MAY choose to support other parent resources.
+ Implementations supporting other types of parent resources MUST clearly
+ document how/if Port is interpreted.
+
+ For the purpose of status, an attachment is considered successful as
+ long as the parent resource accepts it partially. For example, Gateway
+ listeners can restrict which Routes can attach to them by Route kind,
+ namespace, or hostname. If 1 of 2 Gateway listeners accept attachment
+ from the referencing Route, the Route MUST be considered successfully
+ attached. If no Gateway listeners accept attachment from this Route,
+ the Route MUST be considered detached from the Gateway.
+
+ Support: Extended
+ type: integer
+ format: int32
+ maximum: 65535
+ minimum: 1
+ sectionName:
+ description: |-
+ SectionName is the name of a section within the target resource. In the
+ following resources, SectionName is interpreted as the following:
+
+ * Gateway: Listener name. When both Port (experimental) and SectionName
+ are specified, the name and port of the selected listener must match
+ both specified values.
+ * Service: Port name. When both Port (experimental) and SectionName
+ are specified, the name and port of the selected listener must match
+ both specified values.
+
+ Implementations MAY choose to support attaching Routes to other resources.
+ If that is the case, they MUST clearly document how SectionName is
+ interpreted.
+
+ When unspecified (empty string), this will reference the entire resource.
+ For the purpose of status, an attachment is considered successful if at
+ least one section in the parent resource accepts it. For example, Gateway
+ listeners can restrict which Routes can attach to them by Route kind,
+ namespace, or hostname. If 1 of 2 Gateway listeners accept attachment from
+ the referencing Route, the Route MUST be considered successfully
+ attached. If no Gateway listeners accept attachment from this Route, the
+ Route MUST be considered detached from the Gateway.
+
+ Support: Core
+ type: string
+ maxLength: 253
+ minLength: 1
+ pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
+ podTemplate:
+ description: |-
+ Optional pod template used to configure the ACME challenge solver pods
+ used for HTTP01 challenges.
+ type: object
+ properties:
+ metadata:
+ description: |-
+ ObjectMeta overrides for the pod used to solve HTTP01 challenges.
+ Only the 'labels' and 'annotations' fields may be set.
+ If labels or annotations overlap with in-built values, the values here
+ will override the in-built values.
+ type: object
+ properties:
+ annotations:
+ description: Annotations that should be added to the created ACME HTTP01 solver pods.
+ type: object
+ additionalProperties:
+ type: string
+ labels:
+ description: Labels that should be added to the created ACME HTTP01 solver pods.
+ type: object
+ additionalProperties:
+ type: string
+ spec:
+ description: |-
+ PodSpec defines overrides for the HTTP01 challenge solver pod.
+ Check ACMEChallengeSolverHTTP01IngressPodSpec to find out currently supported fields.
+ All other fields will be ignored.
+ type: object
+ properties:
+ affinity:
+ description: If specified, the pod's scheduling constraints
+ type: object
+ properties:
+ nodeAffinity:
+ description: Describes node affinity scheduling rules for the pod.
+ type: object
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node matches the corresponding matchExpressions; the
+ node(s) with the highest sum are the most preferred.
+ type: array
+ items:
+ description: |-
+ An empty preferred scheduling term matches all objects with implicit weight 0
+ (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op).
+ type: object
+ required:
+ - preference
+ - weight
+ properties:
+ preference:
+ description: A node selector term, associated with the corresponding weight.
+ type: object
+ properties:
+ matchExpressions:
+ description: A list of node selector requirements by node's labels.
+ type: array
+ items:
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: The label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
+ type: string
+ values:
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchFields:
+ description: A list of node selector requirements by node's fields.
+ type: array
+ items:
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: The label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
+ type: string
+ values:
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ x-kubernetes-map-type: atomic
+ weight:
+ description: Weight associated with matching the corresponding nodeSelectorTerm, in the range 1-100.
+ type: integer
+ format: int32
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ If the affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to an update), the system
+ may or may not try to eventually evict the pod from its node.
+ type: object
+ required:
+ - nodeSelectorTerms
+ properties:
+ nodeSelectorTerms:
+ description: Required. A list of node selector terms. The terms are ORed.
+ type: array
+ items:
+ description: |-
+ A null or empty node selector term matches no objects. The requirements of
+ them are ANDed.
+ The TopologySelectorTerm type implements a subset of the NodeSelectorTerm.
+ type: object
+ properties:
+ matchExpressions:
+ description: A list of node selector requirements by node's labels.
+ type: array
+ items:
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: The label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
+ type: string
+ values:
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchFields:
+ description: A list of node selector requirements by node's fields.
+ type: array
+ items:
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: The label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
+ type: string
+ values:
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ x-kubernetes-map-type: atomic
+ x-kubernetes-list-type: atomic
+ x-kubernetes-map-type: atomic
+ podAffinity:
+ description: Describes pod affinity scheduling rules (e.g. co-locate this pod in the same node, zone, etc. as some other pod(s)).
+ type: object
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the
+ node(s) with the highest sum are the most preferred.
+ type: array
+ items:
+ description: The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)
+ type: object
+ required:
+ - podAffinityTerm
+ - weight
+ properties:
+ podAffinityTerm:
+ description: Required. A pod affinity term, associated with the corresponding weight.
+ type: object
+ required:
+ - topologyKey
+ properties:
+ labelSelector:
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
+ type: object
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
+ type: array
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: key is the label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ additionalProperties:
+ type: string
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both matchLabelKeys and labelSelector.
+ Also, matchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
+ Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
+ type: object
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
+ type: array
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: key is the label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ additionalProperties:
+ type: string
+ x-kubernetes-map-type: atomic
+ namespaces:
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
+ type: string
+ weight:
+ description: |-
+ weight associated with matching the corresponding podAffinityTerm,
+ in the range 1-100.
+ type: integer
+ format: int32
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ If the affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to a pod label update), the
+ system may or may not try to eventually evict the pod from its node.
+ When there are multiple elements, the lists of nodes corresponding to each
+ podAffinityTerm are intersected, i.e. all terms must be satisfied.
+ type: array
+ items:
+ description: |-
+ Defines a set of pods (namely those matching the labelSelector
+ relative to the given namespace(s)) that this pod should be
+ co-located (affinity) or not co-located (anti-affinity) with,
+ where co-located is defined as running on a node whose value of
+ the label with key matches that of any node on which
+ a pod of the set of pods is running
+ type: object
+ required:
+ - topologyKey
+ properties:
+ labelSelector:
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
+ type: object
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
+ type: array
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: key is the label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ additionalProperties:
+ type: string
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both matchLabelKeys and labelSelector.
+ Also, matchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
+ Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
+ type: object
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
+ type: array
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: key is the label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ additionalProperties:
+ type: string
+ x-kubernetes-map-type: atomic
+ namespaces:
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
+ type: string
+ x-kubernetes-list-type: atomic
+ podAntiAffinity:
+ description: Describes pod anti-affinity scheduling rules (e.g. avoid putting this pod in the same node, zone, etc. as some other pod(s)).
+ type: object
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the anti-affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling anti-affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the
+ node(s) with the highest sum are the most preferred.
+ type: array
+ items:
+ description: The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)
+ type: object
+ required:
+ - podAffinityTerm
+ - weight
+ properties:
+ podAffinityTerm:
+ description: Required. A pod affinity term, associated with the corresponding weight.
+ type: object
+ required:
+ - topologyKey
+ properties:
+ labelSelector:
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
+ type: object
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
+ type: array
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: key is the label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ additionalProperties:
+ type: string
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both matchLabelKeys and labelSelector.
+ Also, matchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
+ Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
+ type: object
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
+ type: array
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: key is the label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ additionalProperties:
+ type: string
+ x-kubernetes-map-type: atomic
+ namespaces:
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
+ type: string
+ weight:
+ description: |-
+ weight associated with matching the corresponding podAffinityTerm,
+ in the range 1-100.
+ type: integer
+ format: int32
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ If the anti-affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the anti-affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to a pod label update), the
+ system may or may not try to eventually evict the pod from its node.
+ When there are multiple elements, the lists of nodes corresponding to each
+ podAffinityTerm are intersected, i.e. all terms must be satisfied.
+ type: array
+ items:
+ description: |-
+ Defines a set of pods (namely those matching the labelSelector
+ relative to the given namespace(s)) that this pod should be
+ co-located (affinity) or not co-located (anti-affinity) with,
+ where co-located is defined as running on a node whose value of
+ the label with key matches that of any node on which
+ a pod of the set of pods is running
+ type: object
+ required:
+ - topologyKey
+ properties:
+ labelSelector:
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
+ type: object
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
+ type: array
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: key is the label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ additionalProperties:
+ type: string
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both matchLabelKeys and labelSelector.
+ Also, matchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
+ Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
+ type: object
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
+ type: array
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: key is the label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ additionalProperties:
+ type: string
+ x-kubernetes-map-type: atomic
+ namespaces:
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
+ type: string
+ x-kubernetes-list-type: atomic
+ imagePullSecrets:
+ description: If specified, the pod's imagePullSecrets
+ type: array
+ items:
+ description: |-
+ LocalObjectReference contains enough information to let you locate the
+ referenced object inside the same namespace.
+ type: object
+ properties:
+ name:
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ default: ""
+ x-kubernetes-map-type: atomic
+ nodeSelector:
+ description: |-
+ 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: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
+ type: object
+ additionalProperties:
+ type: string
+ priorityClassName:
+ description: If specified, the pod's priorityClassName.
+ type: string
+ securityContext:
+ description: If specified, the pod's security context
+ type: object
+ properties:
+ fsGroup:
+ description: |-
+ A special supplemental group that applies to all containers in a pod.
+ Some volume types allow the Kubelet to change the ownership of that volume
+ to be owned by the pod:
+
+ 1. The owning GID will be the FSGroup
+ 2. The setgid bit is set (new files created in the volume will be owned by FSGroup)
+ 3. The permission bits are OR'd with rw-rw----
+
+ If unset, the Kubelet will not modify the ownership and permissions of any volume.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: integer
+ format: int64
+ fsGroupChangePolicy:
+ description: |-
+ fsGroupChangePolicy defines behavior of changing ownership and permission of the volume
+ before being exposed inside Pod. This field will only apply to
+ volume types which support fsGroup based ownership(and permissions).
+ It will have no effect on ephemeral volume types such as: secret, configmaps
+ and emptydir.
+ Valid values are "OnRootMismatch" and "Always". If not specified, "Always" is used.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: string
+ runAsGroup:
+ description: |-
+ The GID to run the entrypoint of the container process.
+ Uses runtime default if unset.
+ May also be set in SecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence
+ for that container.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: integer
+ format: int64
+ runAsNonRoot:
+ description: |-
+ Indicates that the container must run as a non-root user.
+ If true, the Kubelet will validate the image at runtime to ensure that it
+ does not run as UID 0 (root) and fail to start the container if it does.
+ If unset or false, no such validation will be performed.
+ May also be set in SecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: boolean
+ runAsUser:
+ description: |-
+ The UID to run the entrypoint of the container process.
+ Defaults to user specified in image metadata if unspecified.
+ May also be set in SecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence
+ for that container.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: integer
+ format: int64
+ seLinuxOptions:
+ description: |-
+ The SELinux context to be applied to all containers.
+ If unspecified, the container runtime will allocate a random SELinux context for each
+ container. May also be set in SecurityContext. If set in
+ both SecurityContext and PodSecurityContext, the value specified in SecurityContext
+ takes precedence for that container.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: object
+ properties:
+ level:
+ description: Level is SELinux level label that applies to the container.
+ type: string
+ role:
+ description: Role is a SELinux role label that applies to the container.
+ type: string
+ type:
+ description: Type is a SELinux type label that applies to the container.
+ type: string
+ user:
+ description: User is a SELinux user label that applies to the container.
+ type: string
+ seccompProfile:
+ description: |-
+ The seccomp options to use by the containers in this pod.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: object
+ required:
+ - type
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile defined in a file on the node should be used.
+ The profile must be preconfigured on the node to work.
+ Must be a descending path, relative to the kubelet's configured seccomp profile location.
+ Must be set if type is "Localhost". Must NOT be set for any other type.
+ type: string
+ type:
+ description: |-
+ type indicates which kind of seccomp profile will be applied.
+ Valid options are:
+
+ Localhost - a profile defined in a file on the node should be used.
+ RuntimeDefault - the container runtime default profile should be used.
+ Unconfined - no profile should be applied.
+ type: string
+ supplementalGroups:
+ description: |-
+ A list of groups applied to the first process run in each container, in addition
+ to the container's primary GID, the fsGroup (if specified), and group memberships
+ defined in the container image for the uid of the container process. If unspecified,
+ no additional groups are added to any container. Note that group memberships
+ defined in the container image for the uid of the container process are still effective,
+ even if they are not included in this list.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: array
+ items:
+ type: integer
+ format: int64
+ sysctls:
+ description: |-
+ Sysctls hold a list of namespaced sysctls used for the pod. Pods with unsupported
+ sysctls (by the container runtime) might fail to launch.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: array
+ items:
+ description: Sysctl defines a kernel parameter to be set
+ type: object
+ required:
+ - name
+ - value
+ properties:
+ name:
+ description: Name of a property to set
+ type: string
+ value:
+ description: Value of a property to set
+ type: string
+ serviceAccountName:
+ description: If specified, the pod's service account
+ type: string
+ tolerations:
+ description: If specified, the pod's tolerations.
+ type: array
+ items:
+ description: |-
+ The pod this Toleration is attached to tolerates any taint that matches
+ the triple using the matching operator .
+ type: object
+ properties:
+ effect:
+ description: |-
+ Effect indicates the taint effect to match. Empty means match all taint effects.
+ When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute.
+ type: string
+ key:
+ description: |-
+ Key is the taint key that the toleration applies to. Empty means match all taint keys.
+ If the key is empty, operator must be Exists; this combination means to match all values and all keys.
+ type: string
+ operator:
+ description: |-
+ Operator represents a key's relationship to the value.
+ Valid operators are Exists and Equal. Defaults to Equal.
+ Exists is equivalent to wildcard for value, so that a pod can
+ tolerate all taints of a particular category.
+ type: string
+ tolerationSeconds:
+ description: |-
+ TolerationSeconds represents the period of time the toleration (which must be
+ of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default,
+ it is not set, which means tolerate the taint forever (do not evict). Zero and
+ negative values will be treated as 0 (evict immediately) by the system.
+ type: integer
+ format: int64
+ value:
+ description: |-
+ Value is the taint value the toleration matches to.
+ If the operator is Exists, the value should be empty, otherwise just a regular string.
+ type: string
+ serviceType:
+ description: |-
+ Optional service type for Kubernetes solver service. Supported values
+ are NodePort or ClusterIP. If unset, defaults to NodePort.
+ type: string
+ ingress:
+ description: |-
+ The ingress based HTTP01 challenge solver will solve challenges by
+ creating or modifying Ingress resources in order to route requests for
+ '/.well-known/acme-challenge/XYZ' to 'challenge solver' pods that are
+ provisioned by cert-manager for each Challenge to be completed.
+ type: object
+ properties:
+ class:
+ description: |-
+ This field configures the annotation `kubernetes.io/ingress.class` when
+ creating Ingress resources to solve ACME challenges that use this
+ challenge solver. Only one of `class`, `name` or `ingressClassName` may
+ be specified.
+ type: string
+ ingressClassName:
+ description: |-
+ This field configures the field `ingressClassName` on the created Ingress
+ resources used to solve ACME challenges that use this challenge solver.
+ This is the recommended way of configuring the ingress class. Only one of
+ `class`, `name` or `ingressClassName` may be specified.
+ type: string
+ ingressTemplate:
+ description: |-
+ Optional ingress template used to configure the ACME challenge solver
+ ingress used for HTTP01 challenges.
+ type: object
+ properties:
+ metadata:
+ description: |-
+ ObjectMeta overrides for the ingress used to solve HTTP01 challenges.
+ Only the 'labels' and 'annotations' fields may be set.
+ If labels or annotations overlap with in-built values, the values here
+ will override the in-built values.
+ type: object
+ properties:
+ annotations:
+ description: Annotations that should be added to the created ACME HTTP01 solver ingress.
+ type: object
+ additionalProperties:
+ type: string
+ labels:
+ description: Labels that should be added to the created ACME HTTP01 solver ingress.
+ type: object
+ additionalProperties:
+ type: string
+ name:
+ description: |-
+ The name of the ingress resource that should have ACME challenge solving
+ routes inserted into it in order to solve HTTP01 challenges.
+ This is typically used in conjunction with ingress controllers like
+ ingress-gce, which maintains a 1:1 mapping between external IPs and
+ ingress resources. Only one of `class`, `name` or `ingressClassName` may
+ be specified.
+ type: string
+ podTemplate:
+ description: |-
+ Optional pod template used to configure the ACME challenge solver pods
+ used for HTTP01 challenges.
+ type: object
+ properties:
+ metadata:
+ description: |-
+ ObjectMeta overrides for the pod used to solve HTTP01 challenges.
+ Only the 'labels' and 'annotations' fields may be set.
+ If labels or annotations overlap with in-built values, the values here
+ will override the in-built values.
+ type: object
+ properties:
+ annotations:
+ description: Annotations that should be added to the created ACME HTTP01 solver pods.
+ type: object
+ additionalProperties:
+ type: string
+ labels:
+ description: Labels that should be added to the created ACME HTTP01 solver pods.
+ type: object
+ additionalProperties:
+ type: string
+ spec:
+ description: |-
+ PodSpec defines overrides for the HTTP01 challenge solver pod.
+ Check ACMEChallengeSolverHTTP01IngressPodSpec to find out currently supported fields.
+ All other fields will be ignored.
+ type: object
+ properties:
+ affinity:
+ description: If specified, the pod's scheduling constraints
+ type: object
+ properties:
+ nodeAffinity:
+ description: Describes node affinity scheduling rules for the pod.
+ type: object
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node matches the corresponding matchExpressions; the
+ node(s) with the highest sum are the most preferred.
+ type: array
+ items:
+ description: |-
+ An empty preferred scheduling term matches all objects with implicit weight 0
+ (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op).
+ type: object
+ required:
+ - preference
+ - weight
+ properties:
+ preference:
+ description: A node selector term, associated with the corresponding weight.
+ type: object
+ properties:
+ matchExpressions:
+ description: A list of node selector requirements by node's labels.
+ type: array
+ items:
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: The label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
+ type: string
+ values:
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchFields:
+ description: A list of node selector requirements by node's fields.
+ type: array
+ items:
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: The label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
+ type: string
+ values:
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ x-kubernetes-map-type: atomic
+ weight:
+ description: Weight associated with matching the corresponding nodeSelectorTerm, in the range 1-100.
+ type: integer
+ format: int32
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ If the affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to an update), the system
+ may or may not try to eventually evict the pod from its node.
+ type: object
+ required:
+ - nodeSelectorTerms
+ properties:
+ nodeSelectorTerms:
+ description: Required. A list of node selector terms. The terms are ORed.
+ type: array
+ items:
+ description: |-
+ A null or empty node selector term matches no objects. The requirements of
+ them are ANDed.
+ The TopologySelectorTerm type implements a subset of the NodeSelectorTerm.
+ type: object
+ properties:
+ matchExpressions:
+ description: A list of node selector requirements by node's labels.
+ type: array
+ items:
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: The label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
+ type: string
+ values:
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchFields:
+ description: A list of node selector requirements by node's fields.
+ type: array
+ items:
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: The label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
+ type: string
+ values:
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ x-kubernetes-map-type: atomic
+ x-kubernetes-list-type: atomic
+ x-kubernetes-map-type: atomic
+ podAffinity:
+ description: Describes pod affinity scheduling rules (e.g. co-locate this pod in the same node, zone, etc. as some other pod(s)).
+ type: object
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the
+ node(s) with the highest sum are the most preferred.
+ type: array
+ items:
+ description: The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)
+ type: object
+ required:
+ - podAffinityTerm
+ - weight
+ properties:
+ podAffinityTerm:
+ description: Required. A pod affinity term, associated with the corresponding weight.
+ type: object
+ required:
+ - topologyKey
+ properties:
+ labelSelector:
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
+ type: object
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
+ type: array
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: key is the label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ additionalProperties:
+ type: string
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both matchLabelKeys and labelSelector.
+ Also, matchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
+ Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
+ type: object
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
+ type: array
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: key is the label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ additionalProperties:
+ type: string
+ x-kubernetes-map-type: atomic
+ namespaces:
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
+ type: string
+ weight:
+ description: |-
+ weight associated with matching the corresponding podAffinityTerm,
+ in the range 1-100.
+ type: integer
+ format: int32
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ If the affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to a pod label update), the
+ system may or may not try to eventually evict the pod from its node.
+ When there are multiple elements, the lists of nodes corresponding to each
+ podAffinityTerm are intersected, i.e. all terms must be satisfied.
+ type: array
+ items:
+ description: |-
+ Defines a set of pods (namely those matching the labelSelector
+ relative to the given namespace(s)) that this pod should be
+ co-located (affinity) or not co-located (anti-affinity) with,
+ where co-located is defined as running on a node whose value of
+ the label with key matches that of any node on which
+ a pod of the set of pods is running
+ type: object
+ required:
+ - topologyKey
+ properties:
+ labelSelector:
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
+ type: object
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
+ type: array
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: key is the label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ additionalProperties:
+ type: string
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both matchLabelKeys and labelSelector.
+ Also, matchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
+ Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
+ type: object
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
+ type: array
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: key is the label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ additionalProperties:
+ type: string
+ x-kubernetes-map-type: atomic
+ namespaces:
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
+ type: string
+ x-kubernetes-list-type: atomic
+ podAntiAffinity:
+ description: Describes pod anti-affinity scheduling rules (e.g. avoid putting this pod in the same node, zone, etc. as some other pod(s)).
+ type: object
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the anti-affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling anti-affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the
+ node(s) with the highest sum are the most preferred.
+ type: array
+ items:
+ description: The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)
+ type: object
+ required:
+ - podAffinityTerm
+ - weight
+ properties:
+ podAffinityTerm:
+ description: Required. A pod affinity term, associated with the corresponding weight.
+ type: object
+ required:
+ - topologyKey
+ properties:
+ labelSelector:
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
+ type: object
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
+ type: array
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: key is the label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ additionalProperties:
+ type: string
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both matchLabelKeys and labelSelector.
+ Also, matchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
+ Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
+ type: object
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
+ type: array
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: key is the label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ additionalProperties:
+ type: string
+ x-kubernetes-map-type: atomic
+ namespaces:
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
+ type: string
+ weight:
+ description: |-
+ weight associated with matching the corresponding podAffinityTerm,
+ in the range 1-100.
+ type: integer
+ format: int32
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ If the anti-affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the anti-affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to a pod label update), the
+ system may or may not try to eventually evict the pod from its node.
+ When there are multiple elements, the lists of nodes corresponding to each
+ podAffinityTerm are intersected, i.e. all terms must be satisfied.
+ type: array
+ items:
+ description: |-
+ Defines a set of pods (namely those matching the labelSelector
+ relative to the given namespace(s)) that this pod should be
+ co-located (affinity) or not co-located (anti-affinity) with,
+ where co-located is defined as running on a node whose value of
+ the label with key matches that of any node on which
+ a pod of the set of pods is running
+ type: object
+ required:
+ - topologyKey
+ properties:
+ labelSelector:
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
+ type: object
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
+ type: array
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: key is the label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ additionalProperties:
+ type: string
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both matchLabelKeys and labelSelector.
+ Also, matchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
+ Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
+ type: object
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
+ type: array
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: key is the label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ additionalProperties:
+ type: string
+ x-kubernetes-map-type: atomic
+ namespaces:
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
+ type: string
+ x-kubernetes-list-type: atomic
+ imagePullSecrets:
+ description: If specified, the pod's imagePullSecrets
+ type: array
+ items:
+ description: |-
+ LocalObjectReference contains enough information to let you locate the
+ referenced object inside the same namespace.
+ type: object
+ properties:
+ name:
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ default: ""
+ x-kubernetes-map-type: atomic
+ nodeSelector:
+ description: |-
+ 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: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
+ type: object
+ additionalProperties:
+ type: string
+ priorityClassName:
+ description: If specified, the pod's priorityClassName.
+ type: string
+ securityContext:
+ description: If specified, the pod's security context
+ type: object
+ properties:
+ fsGroup:
+ description: |-
+ A special supplemental group that applies to all containers in a pod.
+ Some volume types allow the Kubelet to change the ownership of that volume
+ to be owned by the pod:
+
+ 1. The owning GID will be the FSGroup
+ 2. The setgid bit is set (new files created in the volume will be owned by FSGroup)
+ 3. The permission bits are OR'd with rw-rw----
+
+ If unset, the Kubelet will not modify the ownership and permissions of any volume.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: integer
+ format: int64
+ fsGroupChangePolicy:
+ description: |-
+ fsGroupChangePolicy defines behavior of changing ownership and permission of the volume
+ before being exposed inside Pod. This field will only apply to
+ volume types which support fsGroup based ownership(and permissions).
+ It will have no effect on ephemeral volume types such as: secret, configmaps
+ and emptydir.
+ Valid values are "OnRootMismatch" and "Always". If not specified, "Always" is used.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: string
+ runAsGroup:
+ description: |-
+ The GID to run the entrypoint of the container process.
+ Uses runtime default if unset.
+ May also be set in SecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence
+ for that container.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: integer
+ format: int64
+ runAsNonRoot:
+ description: |-
+ Indicates that the container must run as a non-root user.
+ If true, the Kubelet will validate the image at runtime to ensure that it
+ does not run as UID 0 (root) and fail to start the container if it does.
+ If unset or false, no such validation will be performed.
+ May also be set in SecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: boolean
+ runAsUser:
+ description: |-
+ The UID to run the entrypoint of the container process.
+ Defaults to user specified in image metadata if unspecified.
+ May also be set in SecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence
+ for that container.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: integer
+ format: int64
+ seLinuxOptions:
+ description: |-
+ The SELinux context to be applied to all containers.
+ If unspecified, the container runtime will allocate a random SELinux context for each
+ container. May also be set in SecurityContext. If set in
+ both SecurityContext and PodSecurityContext, the value specified in SecurityContext
+ takes precedence for that container.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: object
+ properties:
+ level:
+ description: Level is SELinux level label that applies to the container.
+ type: string
+ role:
+ description: Role is a SELinux role label that applies to the container.
+ type: string
+ type:
+ description: Type is a SELinux type label that applies to the container.
+ type: string
+ user:
+ description: User is a SELinux user label that applies to the container.
+ type: string
+ seccompProfile:
+ description: |-
+ The seccomp options to use by the containers in this pod.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: object
+ required:
+ - type
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile defined in a file on the node should be used.
+ The profile must be preconfigured on the node to work.
+ Must be a descending path, relative to the kubelet's configured seccomp profile location.
+ Must be set if type is "Localhost". Must NOT be set for any other type.
+ type: string
+ type:
+ description: |-
+ type indicates which kind of seccomp profile will be applied.
+ Valid options are:
+
+ Localhost - a profile defined in a file on the node should be used.
+ RuntimeDefault - the container runtime default profile should be used.
+ Unconfined - no profile should be applied.
+ type: string
+ supplementalGroups:
+ description: |-
+ A list of groups applied to the first process run in each container, in addition
+ to the container's primary GID, the fsGroup (if specified), and group memberships
+ defined in the container image for the uid of the container process. If unspecified,
+ no additional groups are added to any container. Note that group memberships
+ defined in the container image for the uid of the container process are still effective,
+ even if they are not included in this list.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: array
+ items:
+ type: integer
+ format: int64
+ sysctls:
+ description: |-
+ Sysctls hold a list of namespaced sysctls used for the pod. Pods with unsupported
+ sysctls (by the container runtime) might fail to launch.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: array
+ items:
+ description: Sysctl defines a kernel parameter to be set
+ type: object
+ required:
+ - name
+ - value
+ properties:
+ name:
+ description: Name of a property to set
+ type: string
+ value:
+ description: Value of a property to set
+ type: string
+ serviceAccountName:
+ description: If specified, the pod's service account
+ type: string
+ tolerations:
+ description: If specified, the pod's tolerations.
+ type: array
+ items:
+ description: |-
+ The pod this Toleration is attached to tolerates any taint that matches
+ the triple using the matching operator .
+ type: object
+ properties:
+ effect:
+ description: |-
+ Effect indicates the taint effect to match. Empty means match all taint effects.
+ When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute.
+ type: string
+ key:
+ description: |-
+ Key is the taint key that the toleration applies to. Empty means match all taint keys.
+ If the key is empty, operator must be Exists; this combination means to match all values and all keys.
+ type: string
+ operator:
+ description: |-
+ Operator represents a key's relationship to the value.
+ Valid operators are Exists and Equal. Defaults to Equal.
+ Exists is equivalent to wildcard for value, so that a pod can
+ tolerate all taints of a particular category.
+ type: string
+ tolerationSeconds:
+ description: |-
+ TolerationSeconds represents the period of time the toleration (which must be
+ of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default,
+ it is not set, which means tolerate the taint forever (do not evict). Zero and
+ negative values will be treated as 0 (evict immediately) by the system.
+ type: integer
+ format: int64
+ value:
+ description: |-
+ Value is the taint value the toleration matches to.
+ If the operator is Exists, the value should be empty, otherwise just a regular string.
+ type: string
+ serviceType:
+ description: |-
+ Optional service type for Kubernetes solver service. Supported values
+ are NodePort or ClusterIP. If unset, defaults to NodePort.
+ type: string
+ selector:
+ description: |-
+ Selector selects a set of DNSNames on the Certificate resource that
+ should be solved using this challenge solver.
+ If not specified, the solver will be treated as the 'default' solver
+ with the lowest priority, i.e. if any other solver has a more specific
+ match, it will be used instead.
+ type: object
+ properties:
+ dnsNames:
+ description: |-
+ List of DNSNames that this solver will be used to solve.
+ If specified and a match is found, a dnsNames selector will take
+ precedence over a dnsZones selector.
+ If multiple solvers match with the same dnsNames value, the solver
+ with the most matching labels in matchLabels will be selected.
+ If neither has more matches, the solver defined earlier in the list
+ will be selected.
+ type: array
+ items:
+ type: string
+ dnsZones:
+ description: |-
+ List of DNSZones that this solver will be used to solve.
+ The most specific DNS zone match specified here will take precedence
+ over other DNS zone matches, so a solver specifying sys.example.com
+ will be selected over one specifying example.com for the domain
+ www.sys.example.com.
+ If multiple solvers match with the same dnsZones value, the solver
+ with the most matching labels in matchLabels will be selected.
+ If neither has more matches, the solver defined earlier in the list
+ will be selected.
+ type: array
+ items:
+ type: string
+ matchLabels:
+ description: |-
+ A label selector that is used to refine the set of certificate's that
+ this challenge solver will apply to.
+ type: object
+ additionalProperties:
+ type: string
+ ca:
+ description: |-
+ CA configures this issuer to sign certificates using a signing CA keypair
+ stored in a Secret resource.
+ This is used to build internal PKIs that are managed by cert-manager.
+ type: object
+ required:
+ - secretName
+ properties:
+ crlDistributionPoints:
+ description: |-
+ The CRL distribution points is an X.509 v3 certificate extension which identifies
+ the location of the CRL from which the revocation of this certificate can be checked.
+ If not set, certificates will be issued without distribution points set.
+ type: array
+ items:
+ type: string
+ issuingCertificateURLs:
+ description: |-
+ IssuingCertificateURLs is a list of URLs which this issuer should embed into certificates
+ it creates. See https://www.rfc-editor.org/rfc/rfc5280#section-4.2.2.1 for more details.
+ As an example, such a URL might be "http://ca.domain.com/ca.crt".
+ type: array
+ items:
+ type: string
+ ocspServers:
+ description: |-
+ The OCSP server list is an X.509 v3 extension that defines a list of
+ URLs of OCSP responders. The OCSP responders can be queried for the
+ revocation status of an issued certificate. If not set, the
+ certificate will be issued with no OCSP servers set. For example, an
+ OCSP server URL could be "http://ocsp.int-x3.letsencrypt.org".
+ type: array
+ items:
+ type: string
+ secretName:
+ description: |-
+ SecretName is the name of the secret used to sign Certificates issued
+ by this Issuer.
+ type: string
+ selfSigned:
+ description: |-
+ SelfSigned configures this issuer to 'self sign' certificates using the
+ private key used to create the CertificateRequest object.
+ type: object
+ properties:
+ crlDistributionPoints:
+ description: |-
+ The CRL distribution points is an X.509 v3 certificate extension which identifies
+ the location of the CRL from which the revocation of this certificate can be checked.
+ If not set certificate will be issued without CDP. Values are strings.
+ type: array
+ items:
+ type: string
+ vault:
+ description: |-
+ Vault configures this issuer to sign certificates using a HashiCorp Vault
+ PKI backend.
+ type: object
+ required:
+ - auth
+ - path
+ - server
+ properties:
+ auth:
+ description: Auth configures how cert-manager authenticates with the Vault server.
+ type: object
+ properties:
+ appRole:
+ description: |-
+ AppRole authenticates with Vault using the App Role auth mechanism,
+ with the role and secret stored in a Kubernetes Secret resource.
+ type: object
+ required:
+ - path
+ - roleId
+ - secretRef
+ properties:
+ path:
+ description: |-
+ Path where the App Role authentication backend is mounted in Vault, e.g:
+ "approle"
+ type: string
+ roleId:
+ description: |-
+ RoleID configured in the App Role authentication backend when setting
+ up the authentication backend in Vault.
+ type: string
+ secretRef:
+ description: |-
+ Reference to a key in a Secret that contains the App Role secret used
+ to authenticate with Vault.
+ The `key` field must be specified and denotes which entry within the Secret
+ resource is used as the app role secret.
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ clientCertificate:
+ description: |-
+ ClientCertificate authenticates with Vault by presenting a client
+ certificate during the request's TLS handshake.
+ Works only when using HTTPS protocol.
+ type: object
+ properties:
+ mountPath:
+ description: |-
+ The Vault mountPath here is the mount path to use when authenticating with
+ Vault. For example, setting a value to `/v1/auth/foo`, will use the path
+ `/v1/auth/foo/login` to authenticate with Vault. If unspecified, the
+ default value "/v1/auth/cert" will be used.
+ type: string
+ name:
+ description: |-
+ Name of the certificate role to authenticate against.
+ If not set, matching any certificate role, if available.
+ type: string
+ secretName:
+ description: |-
+ Reference to Kubernetes Secret of type "kubernetes.io/tls" (hence containing
+ tls.crt and tls.key) used to authenticate to Vault using TLS client
+ authentication.
+ type: string
+ kubernetes:
+ description: |-
+ Kubernetes authenticates with Vault by passing the ServiceAccount
+ token stored in the named Secret resource to the Vault server.
+ type: object
+ required:
+ - role
+ properties:
+ mountPath:
+ description: |-
+ The Vault mountPath here is the mount path to use when authenticating with
+ Vault. For example, setting a value to `/v1/auth/foo`, will use the path
+ `/v1/auth/foo/login` to authenticate with Vault. If unspecified, the
+ default value "/v1/auth/kubernetes" will be used.
+ type: string
+ role:
+ description: |-
+ A required field containing the Vault Role to assume. A Role binds a
+ Kubernetes ServiceAccount with a set of Vault policies.
+ type: string
+ secretRef:
+ description: |-
+ The required Secret field containing a Kubernetes ServiceAccount JWT used
+ for authenticating with Vault. Use of 'ambient credentials' is not
+ supported.
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ serviceAccountRef:
+ description: |-
+ A reference to a service account that will be used to request a bound
+ token (also known as "projected token"). Compared to using "secretRef",
+ using this field means that you don't rely on statically bound tokens. To
+ use this field, you must configure an RBAC rule to let cert-manager
+ request a token.
+ type: object
+ required:
+ - name
+ properties:
+ audiences:
+ description: |-
+ TokenAudiences is an optional list of extra audiences to include in the token passed to Vault. The default token
+ consisting of the issuer's namespace and name is always included.
+ type: array
+ items:
+ type: string
+ name:
+ description: Name of the ServiceAccount used to request a token.
+ type: string
+ tokenSecretRef:
+ description: TokenSecretRef authenticates with Vault by presenting a token.
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ caBundle:
+ description: |-
+ Base64-encoded bundle of PEM CAs which will be used to validate the certificate
+ chain presented by Vault. Only used if using HTTPS to connect to Vault and
+ ignored for HTTP connections.
+ Mutually exclusive with CABundleSecretRef.
+ If neither CABundle nor CABundleSecretRef are defined, the certificate bundle in
+ the cert-manager controller container is used to validate the TLS connection.
+ type: string
+ format: byte
+ caBundleSecretRef:
+ description: |-
+ Reference to a Secret containing a bundle of PEM-encoded CAs to use when
+ verifying the certificate chain presented by Vault when using HTTPS.
+ Mutually exclusive with CABundle.
+ If neither CABundle nor CABundleSecretRef are defined, the certificate bundle in
+ the cert-manager controller container is used to validate the TLS connection.
+ If no key for the Secret is specified, cert-manager will default to 'ca.crt'.
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ clientCertSecretRef:
+ description: |-
+ Reference to a Secret containing a PEM-encoded Client Certificate to use when the
+ Vault server requires mTLS.
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ clientKeySecretRef:
+ description: |-
+ Reference to a Secret containing a PEM-encoded Client Private Key to use when the
+ Vault server requires mTLS.
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ namespace:
+ description: |-
+ Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows Vault environments to support Secure Multi-tenancy. e.g: "ns1"
+ More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
+ type: string
+ path:
+ description: |-
+ Path is the mount path of the Vault PKI backend's `sign` endpoint, e.g:
+ "my_pki_mount/sign/my-role-name".
+ type: string
+ server:
+ description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
+ type: string
+ venafi:
+ description: |-
+ Venafi configures this issuer to sign certificates using a Venafi TPP
+ or Venafi Cloud policy zone.
+ type: object
+ required:
+ - zone
+ properties:
+ cloud:
+ description: |-
+ Cloud specifies the Venafi cloud configuration settings.
+ Only one of TPP or Cloud may be specified.
+ type: object
+ required:
+ - apiTokenSecretRef
+ properties:
+ apiTokenSecretRef:
+ description: APITokenSecretRef is a secret key selector for the Venafi Cloud API token.
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ url:
+ description: |-
+ URL is the base URL for Venafi Cloud.
+ Defaults to "https://api.venafi.cloud/v1".
+ type: string
+ tpp:
+ description: |-
+ TPP specifies Trust Protection Platform configuration settings.
+ Only one of TPP or Cloud may be specified.
+ type: object
+ required:
+ - credentialsRef
+ - url
+ properties:
+ caBundle:
+ description: |-
+ Base64-encoded bundle of PEM CAs which will be used to validate the certificate
+ chain presented by the TPP server. Only used if using HTTPS; ignored for HTTP.
+ If undefined, the certificate bundle in the cert-manager controller container
+ is used to validate the chain.
+ type: string
+ format: byte
+ caBundleSecretRef:
+ description: |-
+ Reference to a Secret containing a base64-encoded bundle of PEM CAs
+ which will be used to validate the certificate chain presented by the TPP server.
+ Only used if using HTTPS; ignored for HTTP. Mutually exclusive with CABundle.
+ If neither CABundle nor CABundleSecretRef is defined, the certificate bundle in
+ the cert-manager controller container is used to validate the TLS connection.
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ credentialsRef:
+ description: |-
+ CredentialsRef is a reference to a Secret containing the Venafi TPP API credentials.
+ The secret must contain the key 'access-token' for the Access Token Authentication,
+ or two keys, 'username' and 'password' for the API Keys Authentication.
+ type: object
+ required:
+ - name
+ properties:
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ url:
+ description: |-
+ URL is the base URL for the vedsdk endpoint of the Venafi TPP instance,
+ for example: "https://tpp.example.com/vedsdk".
+ type: string
+ zone:
+ description: |-
+ Zone is the Venafi Policy Zone to use for this issuer.
+ All requests made to the Venafi platform will be restricted by the named
+ zone policy.
+ This field is required.
+ type: string
+ status:
+ description: Status of the ClusterIssuer. This is set and managed automatically.
+ type: object
+ properties:
+ acme:
+ description: |-
+ ACME specific status options.
+ This field should only be set if the Issuer is configured to use an ACME
+ server to issue certificates.
+ type: object
+ properties:
+ lastPrivateKeyHash:
+ description: |-
+ LastPrivateKeyHash is a hash of the private key associated with the latest
+ registered ACME account, in order to track changes made to registered account
+ associated with the Issuer
+ type: string
+ lastRegisteredEmail:
+ description: |-
+ LastRegisteredEmail is the email associated with the latest registered
+ ACME account, in order to track changes made to registered account
+ associated with the Issuer
+ type: string
+ uri:
+ description: |-
+ URI is the unique account identifier, which can also be used to retrieve
+ account details from the CA
+ type: string
+ conditions:
+ description: |-
+ List of status conditions to indicate the status of a CertificateRequest.
+ Known condition types are `Ready`.
+ type: array
+ items:
+ description: IssuerCondition contains condition information for an Issuer.
+ type: object
+ required:
+ - status
+ - type
+ properties:
+ lastTransitionTime:
+ description: |-
+ LastTransitionTime is the timestamp corresponding to the last status
+ change of this condition.
+ type: string
+ format: date-time
+ message:
+ description: |-
+ Message is a human readable description of the details of the last
+ transition, complementing reason.
+ type: string
+ observedGeneration:
+ description: |-
+ If set, this represents the .metadata.generation that the condition was
+ set based upon.
+ For instance, if .metadata.generation is currently 12, but the
+ .status.condition[x].observedGeneration is 9, the condition is out of date
+ with respect to the current state of the Issuer.
+ type: integer
+ format: int64
+ reason:
+ description: |-
+ Reason is a brief machine readable explanation for the condition's last
+ transition.
+ type: string
+ status:
+ description: Status of the condition, one of (`True`, `False`, `Unknown`).
+ type: string
+ enum:
+ - "True"
+ - "False"
+ - Unknown
+ type:
+ description: Type of the condition, known values are (`Ready`).
+ type: string
+ x-kubernetes-list-map-keys:
+ - type
+ x-kubernetes-list-type: map
+ served: true
+ storage: true
+
+# END crd
+---
+# Source: cert-manager/templates/crds.yaml
+# START crd
+apiVersion: apiextensions.k8s.io/v1
+kind: CustomResourceDefinition
+metadata:
+ name: issuers.cert-manager.io
+ # START annotations
+ annotations:
+ helm.sh/resource-policy: keep
+ # END annotations
+ labels:
+ app: 'cert-manager'
+ app.kubernetes.io/name: 'cert-manager'
+ app.kubernetes.io/instance: 'cert-manager'
+ app.kubernetes.io/component: "crds"
+ # Generated labels
+ app.kubernetes.io/version: "v1.16.1"
+spec:
+ group: cert-manager.io
+ names:
+ kind: Issuer
+ listKind: IssuerList
+ plural: issuers
+ singular: issuer
+ categories:
+ - cert-manager
+ scope: Namespaced
+ versions:
+ - name: v1
+ subresources:
+ status: {}
+ additionalPrinterColumns:
+ - jsonPath: .status.conditions[?(@.type=="Ready")].status
+ name: Ready
+ type: string
+ - jsonPath: .status.conditions[?(@.type=="Ready")].message
+ name: Status
+ priority: 1
+ type: string
+ - jsonPath: .metadata.creationTimestamp
+ description: CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC.
+ name: Age
+ type: date
+ schema:
+ openAPIV3Schema:
+ description: |-
+ An Issuer represents a certificate issuing authority which can be
+ referenced as part of `issuerRef` fields.
+ It is scoped to a single namespace and can therefore only be referenced by
+ resources within the same namespace.
+ type: object
+ required:
+ - spec
+ properties:
+ apiVersion:
+ description: |-
+ APIVersion defines the versioned schema of this representation of an object.
+ Servers should convert recognized schemas to the latest internal value, and
+ may reject unrecognized values.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
+ type: string
+ kind:
+ description: |-
+ Kind is a string value representing the REST resource this object represents.
+ Servers may infer this from the endpoint the client submits requests to.
+ Cannot be updated.
+ In CamelCase.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
+ type: string
+ metadata:
+ type: object
+ spec:
+ description: Desired state of the Issuer resource.
+ type: object
+ properties:
+ acme:
+ description: |-
+ ACME configures this issuer to communicate with a RFC8555 (ACME) server
+ to obtain signed x509 certificates.
+ type: object
+ required:
+ - privateKeySecretRef
+ - server
+ properties:
+ caBundle:
+ description: |-
+ Base64-encoded bundle of PEM CAs which can be used to validate the certificate
+ chain presented by the ACME server.
+ Mutually exclusive with SkipTLSVerify; prefer using CABundle to prevent various
+ kinds of security vulnerabilities.
+ If CABundle and SkipTLSVerify are unset, the system certificate bundle inside
+ the container is used to validate the TLS connection.
+ type: string
+ format: byte
+ disableAccountKeyGeneration:
+ description: |-
+ Enables or disables generating a new ACME account key.
+ If true, the Issuer resource will *not* request a new account but will expect
+ the account key to be supplied via an existing secret.
+ If false, the cert-manager system will generate a new ACME account key
+ for the Issuer.
+ Defaults to false.
+ type: boolean
+ email:
+ description: |-
+ Email is the email address to be associated with the ACME account.
+ This field is optional, but it is strongly recommended to be set.
+ It will be used to contact you in case of issues with your account or
+ certificates, including expiry notification emails.
+ This field may be updated after the account is initially registered.
+ type: string
+ enableDurationFeature:
+ description: |-
+ Enables requesting a Not After date on certificates that matches the
+ duration of the certificate. This is not supported by all ACME servers
+ like Let's Encrypt. If set to true when the ACME server does not support
+ it, it will create an error on the Order.
+ Defaults to false.
+ type: boolean
+ externalAccountBinding:
+ description: |-
+ ExternalAccountBinding is a reference to a CA external account of the ACME
+ server.
+ If set, upon registration cert-manager will attempt to associate the given
+ external account credentials with the registered ACME account.
+ type: object
+ required:
+ - keyID
+ - keySecretRef
+ properties:
+ keyAlgorithm:
+ description: |-
+ Deprecated: keyAlgorithm field exists for historical compatibility
+ reasons and should not be used. The algorithm is now hardcoded to HS256
+ in golang/x/crypto/acme.
+ type: string
+ enum:
+ - HS256
+ - HS384
+ - HS512
+ keyID:
+ description: keyID is the ID of the CA key that the External Account is bound to.
+ type: string
+ keySecretRef:
+ description: |-
+ keySecretRef is a Secret Key Selector referencing a data item in a Kubernetes
+ Secret which holds the symmetric MAC key of the External Account Binding.
+ The `key` is the index string that is paired with the key data in the
+ Secret and should not be confused with the key data itself, or indeed with
+ the External Account Binding keyID above.
+ The secret key stored in the Secret **must** be un-padded, base64 URL
+ encoded data.
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ preferredChain:
+ description: |-
+ PreferredChain is the chain to use if the ACME server outputs multiple.
+ PreferredChain is no guarantee that this one gets delivered by the ACME
+ endpoint.
+ For example, for Let's Encrypt's DST crosssign you would use:
+ "DST Root CA X3" or "ISRG Root X1" for the newer Let's Encrypt root CA.
+ This value picks the first certificate bundle in the combined set of
+ ACME default and alternative chains that has a root-most certificate with
+ this value as its issuer's commonname.
+ type: string
+ maxLength: 64
+ privateKeySecretRef:
+ description: |-
+ PrivateKey is the name of a Kubernetes Secret resource that will be used to
+ store the automatically generated ACME account private key.
+ Optionally, a `key` may be specified to select a specific entry within
+ the named Secret resource.
+ If `key` is not specified, a default of `tls.key` will be used.
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ server:
+ description: |-
+ Server is the URL used to access the ACME server's 'directory' endpoint.
+ For example, for Let's Encrypt's staging endpoint, you would use:
+ "https://acme-staging-v02.api.letsencrypt.org/directory".
+ Only ACME v2 endpoints (i.e. RFC 8555) are supported.
+ type: string
+ skipTLSVerify:
+ description: |-
+ INSECURE: Enables or disables validation of the ACME server TLS certificate.
+ If true, requests to the ACME server will not have the TLS certificate chain
+ validated.
+ Mutually exclusive with CABundle; prefer using CABundle to prevent various
+ kinds of security vulnerabilities.
+ Only enable this option in development environments.
+ If CABundle and SkipTLSVerify are unset, the system certificate bundle inside
+ the container is used to validate the TLS connection.
+ Defaults to false.
+ type: boolean
+ solvers:
+ description: |-
+ Solvers is a list of challenge solvers that will be used to solve
+ ACME challenges for the matching domains.
+ Solver configurations must be provided in order to obtain certificates
+ from an ACME server.
+ For more information, see: https://cert-manager.io/docs/configuration/acme/
+ type: array
+ items:
+ description: |-
+ An ACMEChallengeSolver describes how to solve ACME challenges for the issuer it is part of.
+ A selector may be provided to use different solving strategies for different DNS names.
+ Only one of HTTP01 or DNS01 must be provided.
+ type: object
+ properties:
+ dns01:
+ description: |-
+ Configures cert-manager to attempt to complete authorizations by
+ performing the DNS01 challenge flow.
+ type: object
+ properties:
+ acmeDNS:
+ description: |-
+ Use the 'ACME DNS' (https://github.com/joohoi/acme-dns) API to manage
+ DNS01 challenge records.
+ type: object
+ required:
+ - accountSecretRef
+ - host
+ properties:
+ accountSecretRef:
+ description: |-
+ A reference to a specific 'key' within a Secret resource.
+ In some instances, `key` is a required field.
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ host:
+ type: string
+ akamai:
+ description: Use the Akamai DNS zone management API to manage DNS01 challenge records.
+ type: object
+ required:
+ - accessTokenSecretRef
+ - clientSecretSecretRef
+ - clientTokenSecretRef
+ - serviceConsumerDomain
+ properties:
+ accessTokenSecretRef:
+ description: |-
+ A reference to a specific 'key' within a Secret resource.
+ In some instances, `key` is a required field.
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ clientSecretSecretRef:
+ description: |-
+ A reference to a specific 'key' within a Secret resource.
+ In some instances, `key` is a required field.
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ clientTokenSecretRef:
+ description: |-
+ A reference to a specific 'key' within a Secret resource.
+ In some instances, `key` is a required field.
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ serviceConsumerDomain:
+ type: string
+ azureDNS:
+ description: Use the Microsoft Azure DNS API to manage DNS01 challenge records.
+ type: object
+ required:
+ - resourceGroupName
+ - subscriptionID
+ properties:
+ clientID:
+ description: |-
+ Auth: Azure Service Principal:
+ The ClientID of the Azure Service Principal used to authenticate with Azure DNS.
+ If set, ClientSecret and TenantID must also be set.
+ type: string
+ clientSecretSecretRef:
+ description: |-
+ Auth: Azure Service Principal:
+ A reference to a Secret containing the password associated with the Service Principal.
+ If set, ClientID and TenantID must also be set.
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ environment:
+ description: name of the Azure environment (default AzurePublicCloud)
+ type: string
+ enum:
+ - AzurePublicCloud
+ - AzureChinaCloud
+ - AzureGermanCloud
+ - AzureUSGovernmentCloud
+ hostedZoneName:
+ description: name of the DNS zone that should be used
+ type: string
+ managedIdentity:
+ description: |-
+ Auth: Azure Workload Identity or Azure Managed Service Identity:
+ Settings to enable Azure Workload Identity or Azure Managed Service Identity
+ If set, ClientID, ClientSecret and TenantID must not be set.
+ type: object
+ properties:
+ clientID:
+ description: client ID of the managed identity, can not be used at the same time as resourceID
+ type: string
+ resourceID:
+ description: |-
+ resource ID of the managed identity, can not be used at the same time as clientID
+ Cannot be used for Azure Managed Service Identity
+ type: string
+ resourceGroupName:
+ description: resource group the DNS zone is located in
+ type: string
+ subscriptionID:
+ description: ID of the Azure subscription
+ type: string
+ tenantID:
+ description: |-
+ Auth: Azure Service Principal:
+ The TenantID of the Azure Service Principal used to authenticate with Azure DNS.
+ If set, ClientID and ClientSecret must also be set.
+ type: string
+ cloudDNS:
+ description: Use the Google Cloud DNS API to manage DNS01 challenge records.
+ type: object
+ required:
+ - project
+ properties:
+ hostedZoneName:
+ description: |-
+ HostedZoneName is an optional field that tells cert-manager in which
+ Cloud DNS zone the challenge record has to be created.
+ If left empty cert-manager will automatically choose a zone.
+ type: string
+ project:
+ type: string
+ serviceAccountSecretRef:
+ description: |-
+ A reference to a specific 'key' within a Secret resource.
+ In some instances, `key` is a required field.
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ cloudflare:
+ description: Use the Cloudflare API to manage DNS01 challenge records.
+ type: object
+ properties:
+ apiKeySecretRef:
+ description: |-
+ API key to use to authenticate with Cloudflare.
+ Note: using an API token to authenticate is now the recommended method
+ as it allows greater control of permissions.
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ apiTokenSecretRef:
+ description: API token used to authenticate with Cloudflare.
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ email:
+ description: Email of the account, only required when using API key based authentication.
+ type: string
+ cnameStrategy:
+ description: |-
+ CNAMEStrategy configures how the DNS01 provider should handle CNAME
+ records when found in DNS zones.
+ type: string
+ enum:
+ - None
+ - Follow
+ digitalocean:
+ description: Use the DigitalOcean DNS API to manage DNS01 challenge records.
+ type: object
+ required:
+ - tokenSecretRef
+ properties:
+ tokenSecretRef:
+ description: |-
+ A reference to a specific 'key' within a Secret resource.
+ In some instances, `key` is a required field.
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ rfc2136:
+ description: |-
+ Use RFC2136 ("Dynamic Updates in the Domain Name System") (https://datatracker.ietf.org/doc/rfc2136/)
+ to manage DNS01 challenge records.
+ type: object
+ required:
+ - nameserver
+ properties:
+ nameserver:
+ description: |-
+ The IP address or hostname of an authoritative DNS server supporting
+ RFC2136 in the form host:port. If the host is an IPv6 address it must be
+ enclosed in square brackets (e.g [2001:db8::1]) ; port is optional.
+ This field is required.
+ type: string
+ tsigAlgorithm:
+ description: |-
+ The TSIG Algorithm configured in the DNS supporting RFC2136. Used only
+ when ``tsigSecretSecretRef`` and ``tsigKeyName`` are defined.
+ Supported values are (case-insensitive): ``HMACMD5`` (default),
+ ``HMACSHA1``, ``HMACSHA256`` or ``HMACSHA512``.
+ type: string
+ tsigKeyName:
+ description: |-
+ The TSIG Key name configured in the DNS.
+ If ``tsigSecretSecretRef`` is defined, this field is required.
+ type: string
+ tsigSecretSecretRef:
+ description: |-
+ The name of the secret containing the TSIG value.
+ If ``tsigKeyName`` is defined, this field is required.
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ route53:
+ description: Use the AWS Route53 API to manage DNS01 challenge records.
+ type: object
+ properties:
+ accessKeyID:
+ description: |-
+ The AccessKeyID is used for authentication.
+ Cannot be set when SecretAccessKeyID is set.
+ If neither the Access Key nor Key ID are set, we fall-back to using env
+ vars, shared credentials file or AWS Instance metadata,
+ see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
+ type: string
+ accessKeyIDSecretRef:
+ description: |-
+ The SecretAccessKey is used for authentication. If set, pull the AWS
+ access key ID from a key within a Kubernetes Secret.
+ Cannot be set when AccessKeyID is set.
+ If neither the Access Key nor Key ID are set, we fall-back to using env
+ vars, shared credentials file or AWS Instance metadata,
+ see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ auth:
+ description: Auth configures how cert-manager authenticates.
+ type: object
+ required:
+ - kubernetes
+ properties:
+ kubernetes:
+ description: |-
+ Kubernetes authenticates with Route53 using AssumeRoleWithWebIdentity
+ by passing a bound ServiceAccount token.
+ type: object
+ required:
+ - serviceAccountRef
+ properties:
+ serviceAccountRef:
+ description: |-
+ A reference to a service account that will be used to request a bound
+ token (also known as "projected token"). To use this field, you must
+ configure an RBAC rule to let cert-manager request a token.
+ type: object
+ required:
+ - name
+ properties:
+ audiences:
+ description: |-
+ TokenAudiences is an optional list of audiences to include in the
+ token passed to AWS. The default token consisting of the issuer's namespace
+ and name is always included.
+ If unset the audience defaults to `sts.amazonaws.com`.
+ type: array
+ items:
+ type: string
+ name:
+ description: Name of the ServiceAccount used to request a token.
+ type: string
+ hostedZoneID:
+ description: If set, the provider will manage only this zone in Route53 and will not do a lookup using the route53:ListHostedZonesByName api call.
+ type: string
+ region:
+ description: |-
+ Override the AWS region.
+
+ Route53 is a global service and does not have regional endpoints but the
+ region specified here (or via environment variables) is used as a hint to
+ help compute the correct AWS credential scope and partition when it
+ connects to Route53. See:
+ - [Amazon Route 53 endpoints and quotas](https://docs.aws.amazon.com/general/latest/gr/r53.html)
+ - [Global services](https://docs.aws.amazon.com/whitepapers/latest/aws-fault-isolation-boundaries/global-services.html)
+
+ If you omit this region field, cert-manager will use the region from
+ AWS_REGION and AWS_DEFAULT_REGION environment variables, if they are set
+ in the cert-manager controller Pod.
+
+ The `region` field is not needed if you use [IAM Roles for Service Accounts (IRSA)](https://docs.aws.amazon.com/eks/latest/userguide/iam-roles-for-service-accounts.html).
+ Instead an AWS_REGION environment variable is added to the cert-manager controller Pod by:
+ [Amazon EKS Pod Identity Webhook](https://github.com/aws/amazon-eks-pod-identity-webhook).
+ In this case this `region` field value is ignored.
+
+ The `region` field is not needed if you use [EKS Pod Identities](https://docs.aws.amazon.com/eks/latest/userguide/pod-identities.html).
+ Instead an AWS_REGION environment variable is added to the cert-manager controller Pod by:
+ [Amazon EKS Pod Identity Agent](https://github.com/aws/eks-pod-identity-agent),
+ In this case this `region` field value is ignored.
+ type: string
+ role:
+ description: |-
+ Role is a Role ARN which the Route53 provider will assume using either the explicit credentials AccessKeyID/SecretAccessKey
+ or the inferred credentials from environment variables, shared credentials file or AWS Instance metadata
+ type: string
+ secretAccessKeySecretRef:
+ description: |-
+ The SecretAccessKey is used for authentication.
+ If neither the Access Key nor Key ID are set, we fall-back to using env
+ vars, shared credentials file or AWS Instance metadata,
+ see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ webhook:
+ description: |-
+ Configure an external webhook based DNS01 challenge solver to manage
+ DNS01 challenge records.
+ type: object
+ required:
+ - groupName
+ - solverName
+ properties:
+ config:
+ description: |-
+ Additional configuration that should be passed to the webhook apiserver
+ when challenges are processed.
+ This can contain arbitrary JSON data.
+ Secret values should not be specified in this stanza.
+ If secret values are needed (e.g. credentials for a DNS service), you
+ should use a SecretKeySelector to reference a Secret resource.
+ For details on the schema of this field, consult the webhook provider
+ implementation's documentation.
+ x-kubernetes-preserve-unknown-fields: true
+ groupName:
+ description: |-
+ The API group name that should be used when POSTing ChallengePayload
+ resources to the webhook apiserver.
+ This should be the same as the GroupName specified in the webhook
+ provider implementation.
+ type: string
+ solverName:
+ description: |-
+ The name of the solver to use, as defined in the webhook provider
+ implementation.
+ This will typically be the name of the provider, e.g. 'cloudflare'.
+ type: string
+ http01:
+ description: |-
+ Configures cert-manager to attempt to complete authorizations by
+ performing the HTTP01 challenge flow.
+ It is not possible to obtain certificates for wildcard domain names
+ (e.g. `*.example.com`) using the HTTP01 challenge mechanism.
+ type: object
+ properties:
+ gatewayHTTPRoute:
+ description: |-
+ The Gateway API is a sig-network community API that models service networking
+ in Kubernetes (https://gateway-api.sigs.k8s.io/). The Gateway solver will
+ create HTTPRoutes with the specified labels in the same namespace as the challenge.
+ This solver is experimental, and fields / behaviour may change in the future.
+ type: object
+ properties:
+ labels:
+ description: |-
+ Custom labels that will be applied to HTTPRoutes created by cert-manager
+ while solving HTTP-01 challenges.
+ type: object
+ additionalProperties:
+ type: string
+ parentRefs:
+ description: |-
+ When solving an HTTP-01 challenge, cert-manager creates an HTTPRoute.
+ cert-manager needs to know which parentRefs should be used when creating
+ the HTTPRoute. Usually, the parentRef references a Gateway. See:
+ https://gateway-api.sigs.k8s.io/api-types/httproute/#attaching-to-gateways
+ type: array
+ items:
+ description: |-
+ ParentReference identifies an API object (usually a Gateway) that can be considered
+ a parent of this resource (usually a route). There are two kinds of parent resources
+ with "Core" support:
+
+ * Gateway (Gateway conformance profile)
+ * Service (Mesh conformance profile, ClusterIP Services only)
+
+ This API may be extended in the future to support additional kinds of parent
+ resources.
+
+ The API object must be valid in the cluster; the Group and Kind must
+ be registered in the cluster for this reference to be valid.
+ type: object
+ required:
+ - name
+ properties:
+ group:
+ description: |-
+ Group is the group of the referent.
+ When unspecified, "gateway.networking.k8s.io" is inferred.
+ To set the core API group (such as for a "Service" kind referent),
+ Group must be explicitly set to "" (empty string).
+
+ Support: Core
+ type: string
+ default: gateway.networking.k8s.io
+ maxLength: 253
+ pattern: ^$|^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
+ kind:
+ description: |-
+ Kind is kind of the referent.
+
+ There are two kinds of parent resources with "Core" support:
+
+ * Gateway (Gateway conformance profile)
+ * Service (Mesh conformance profile, ClusterIP Services only)
+
+ Support for other resources is Implementation-Specific.
+ type: string
+ default: Gateway
+ maxLength: 63
+ minLength: 1
+ pattern: ^[a-zA-Z]([-a-zA-Z0-9]*[a-zA-Z0-9])?$
+ name:
+ description: |-
+ Name is the name of the referent.
+
+ Support: Core
+ type: string
+ maxLength: 253
+ minLength: 1
+ namespace:
+ description: |-
+ Namespace is the namespace of the referent. When unspecified, this refers
+ to the local namespace of the Route.
+
+ Note that there are specific rules for ParentRefs which cross namespace
+ boundaries. Cross-namespace references are only valid if they are explicitly
+ allowed by something in the namespace they are referring to. For example:
+ Gateway has the AllowedRoutes field, and ReferenceGrant provides a
+ generic way to enable any other kind of cross-namespace reference.
+
+
+ ParentRefs from a Route to a Service in the same namespace are "producer"
+ routes, which apply default routing rules to inbound connections from
+ any namespace to the Service.
+
+ ParentRefs from a Route to a Service in a different namespace are
+ "consumer" routes, and these routing rules are only applied to outbound
+ connections originating from the same namespace as the Route, for which
+ the intended destination of the connections are a Service targeted as a
+ ParentRef of the Route.
+
+
+ Support: Core
+ type: string
+ maxLength: 63
+ minLength: 1
+ pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
+ port:
+ description: |-
+ Port is the network port this Route targets. It can be interpreted
+ differently based on the type of parent resource.
+
+ When the parent resource is a Gateway, this targets all listeners
+ listening on the specified port that also support this kind of Route(and
+ select this Route). It's not recommended to set `Port` unless the
+ networking behaviors specified in a Route must apply to a specific port
+ as opposed to a listener(s) whose port(s) may be changed. When both Port
+ and SectionName are specified, the name and port of the selected listener
+ must match both specified values.
+
+
+ When the parent resource is a Service, this targets a specific port in the
+ Service spec. When both Port (experimental) and SectionName are specified,
+ the name and port of the selected port must match both specified values.
+
+
+ Implementations MAY choose to support other parent resources.
+ Implementations supporting other types of parent resources MUST clearly
+ document how/if Port is interpreted.
+
+ For the purpose of status, an attachment is considered successful as
+ long as the parent resource accepts it partially. For example, Gateway
+ listeners can restrict which Routes can attach to them by Route kind,
+ namespace, or hostname. If 1 of 2 Gateway listeners accept attachment
+ from the referencing Route, the Route MUST be considered successfully
+ attached. If no Gateway listeners accept attachment from this Route,
+ the Route MUST be considered detached from the Gateway.
+
+ Support: Extended
+ type: integer
+ format: int32
+ maximum: 65535
+ minimum: 1
+ sectionName:
+ description: |-
+ SectionName is the name of a section within the target resource. In the
+ following resources, SectionName is interpreted as the following:
+
+ * Gateway: Listener name. When both Port (experimental) and SectionName
+ are specified, the name and port of the selected listener must match
+ both specified values.
+ * Service: Port name. When both Port (experimental) and SectionName
+ are specified, the name and port of the selected listener must match
+ both specified values.
+
+ Implementations MAY choose to support attaching Routes to other resources.
+ If that is the case, they MUST clearly document how SectionName is
+ interpreted.
+
+ When unspecified (empty string), this will reference the entire resource.
+ For the purpose of status, an attachment is considered successful if at
+ least one section in the parent resource accepts it. For example, Gateway
+ listeners can restrict which Routes can attach to them by Route kind,
+ namespace, or hostname. If 1 of 2 Gateway listeners accept attachment from
+ the referencing Route, the Route MUST be considered successfully
+ attached. If no Gateway listeners accept attachment from this Route, the
+ Route MUST be considered detached from the Gateway.
+
+ Support: Core
+ type: string
+ maxLength: 253
+ minLength: 1
+ pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
+ podTemplate:
+ description: |-
+ Optional pod template used to configure the ACME challenge solver pods
+ used for HTTP01 challenges.
+ type: object
+ properties:
+ metadata:
+ description: |-
+ ObjectMeta overrides for the pod used to solve HTTP01 challenges.
+ Only the 'labels' and 'annotations' fields may be set.
+ If labels or annotations overlap with in-built values, the values here
+ will override the in-built values.
+ type: object
+ properties:
+ annotations:
+ description: Annotations that should be added to the created ACME HTTP01 solver pods.
+ type: object
+ additionalProperties:
+ type: string
+ labels:
+ description: Labels that should be added to the created ACME HTTP01 solver pods.
+ type: object
+ additionalProperties:
+ type: string
+ spec:
+ description: |-
+ PodSpec defines overrides for the HTTP01 challenge solver pod.
+ Check ACMEChallengeSolverHTTP01IngressPodSpec to find out currently supported fields.
+ All other fields will be ignored.
+ type: object
+ properties:
+ affinity:
+ description: If specified, the pod's scheduling constraints
+ type: object
+ properties:
+ nodeAffinity:
+ description: Describes node affinity scheduling rules for the pod.
+ type: object
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node matches the corresponding matchExpressions; the
+ node(s) with the highest sum are the most preferred.
+ type: array
+ items:
+ description: |-
+ An empty preferred scheduling term matches all objects with implicit weight 0
+ (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op).
+ type: object
+ required:
+ - preference
+ - weight
+ properties:
+ preference:
+ description: A node selector term, associated with the corresponding weight.
+ type: object
+ properties:
+ matchExpressions:
+ description: A list of node selector requirements by node's labels.
+ type: array
+ items:
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: The label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
+ type: string
+ values:
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchFields:
+ description: A list of node selector requirements by node's fields.
+ type: array
+ items:
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: The label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
+ type: string
+ values:
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ x-kubernetes-map-type: atomic
+ weight:
+ description: Weight associated with matching the corresponding nodeSelectorTerm, in the range 1-100.
+ type: integer
+ format: int32
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ If the affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to an update), the system
+ may or may not try to eventually evict the pod from its node.
+ type: object
+ required:
+ - nodeSelectorTerms
+ properties:
+ nodeSelectorTerms:
+ description: Required. A list of node selector terms. The terms are ORed.
+ type: array
+ items:
+ description: |-
+ A null or empty node selector term matches no objects. The requirements of
+ them are ANDed.
+ The TopologySelectorTerm type implements a subset of the NodeSelectorTerm.
+ type: object
+ properties:
+ matchExpressions:
+ description: A list of node selector requirements by node's labels.
+ type: array
+ items:
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: The label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
+ type: string
+ values:
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchFields:
+ description: A list of node selector requirements by node's fields.
+ type: array
+ items:
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: The label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
+ type: string
+ values:
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ x-kubernetes-map-type: atomic
+ x-kubernetes-list-type: atomic
+ x-kubernetes-map-type: atomic
+ podAffinity:
+ description: Describes pod affinity scheduling rules (e.g. co-locate this pod in the same node, zone, etc. as some other pod(s)).
+ type: object
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the
+ node(s) with the highest sum are the most preferred.
+ type: array
+ items:
+ description: The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)
+ type: object
+ required:
+ - podAffinityTerm
+ - weight
+ properties:
+ podAffinityTerm:
+ description: Required. A pod affinity term, associated with the corresponding weight.
+ type: object
+ required:
+ - topologyKey
+ properties:
+ labelSelector:
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
+ type: object
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
+ type: array
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: key is the label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ additionalProperties:
+ type: string
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both matchLabelKeys and labelSelector.
+ Also, matchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
+ Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
+ type: object
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
+ type: array
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: key is the label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ additionalProperties:
+ type: string
+ x-kubernetes-map-type: atomic
+ namespaces:
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
+ type: string
+ weight:
+ description: |-
+ weight associated with matching the corresponding podAffinityTerm,
+ in the range 1-100.
+ type: integer
+ format: int32
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ If the affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to a pod label update), the
+ system may or may not try to eventually evict the pod from its node.
+ When there are multiple elements, the lists of nodes corresponding to each
+ podAffinityTerm are intersected, i.e. all terms must be satisfied.
+ type: array
+ items:
+ description: |-
+ Defines a set of pods (namely those matching the labelSelector
+ relative to the given namespace(s)) that this pod should be
+ co-located (affinity) or not co-located (anti-affinity) with,
+ where co-located is defined as running on a node whose value of
+ the label with key matches that of any node on which
+ a pod of the set of pods is running
+ type: object
+ required:
+ - topologyKey
+ properties:
+ labelSelector:
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
+ type: object
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
+ type: array
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: key is the label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ additionalProperties:
+ type: string
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both matchLabelKeys and labelSelector.
+ Also, matchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
+ Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
+ type: object
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
+ type: array
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: key is the label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ additionalProperties:
+ type: string
+ x-kubernetes-map-type: atomic
+ namespaces:
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
+ type: string
+ x-kubernetes-list-type: atomic
+ podAntiAffinity:
+ description: Describes pod anti-affinity scheduling rules (e.g. avoid putting this pod in the same node, zone, etc. as some other pod(s)).
+ type: object
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the anti-affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling anti-affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the
+ node(s) with the highest sum are the most preferred.
+ type: array
+ items:
+ description: The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)
+ type: object
+ required:
+ - podAffinityTerm
+ - weight
+ properties:
+ podAffinityTerm:
+ description: Required. A pod affinity term, associated with the corresponding weight.
+ type: object
+ required:
+ - topologyKey
+ properties:
+ labelSelector:
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
+ type: object
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
+ type: array
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: key is the label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ additionalProperties:
+ type: string
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both matchLabelKeys and labelSelector.
+ Also, matchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
+ Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
+ type: object
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
+ type: array
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: key is the label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ additionalProperties:
+ type: string
+ x-kubernetes-map-type: atomic
+ namespaces:
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
+ type: string
+ weight:
+ description: |-
+ weight associated with matching the corresponding podAffinityTerm,
+ in the range 1-100.
+ type: integer
+ format: int32
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ If the anti-affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the anti-affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to a pod label update), the
+ system may or may not try to eventually evict the pod from its node.
+ When there are multiple elements, the lists of nodes corresponding to each
+ podAffinityTerm are intersected, i.e. all terms must be satisfied.
+ type: array
+ items:
+ description: |-
+ Defines a set of pods (namely those matching the labelSelector
+ relative to the given namespace(s)) that this pod should be
+ co-located (affinity) or not co-located (anti-affinity) with,
+ where co-located is defined as running on a node whose value of
+ the label with key matches that of any node on which
+ a pod of the set of pods is running
+ type: object
+ required:
+ - topologyKey
+ properties:
+ labelSelector:
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
+ type: object
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
+ type: array
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: key is the label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ additionalProperties:
+ type: string
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both matchLabelKeys and labelSelector.
+ Also, matchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
+ Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
+ type: object
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
+ type: array
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: key is the label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ additionalProperties:
+ type: string
+ x-kubernetes-map-type: atomic
+ namespaces:
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
+ type: string
+ x-kubernetes-list-type: atomic
+ imagePullSecrets:
+ description: If specified, the pod's imagePullSecrets
+ type: array
+ items:
+ description: |-
+ LocalObjectReference contains enough information to let you locate the
+ referenced object inside the same namespace.
+ type: object
+ properties:
+ name:
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ default: ""
+ x-kubernetes-map-type: atomic
+ nodeSelector:
+ description: |-
+ 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: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
+ type: object
+ additionalProperties:
+ type: string
+ priorityClassName:
+ description: If specified, the pod's priorityClassName.
+ type: string
+ securityContext:
+ description: If specified, the pod's security context
+ type: object
+ properties:
+ fsGroup:
+ description: |-
+ A special supplemental group that applies to all containers in a pod.
+ Some volume types allow the Kubelet to change the ownership of that volume
+ to be owned by the pod:
+
+ 1. The owning GID will be the FSGroup
+ 2. The setgid bit is set (new files created in the volume will be owned by FSGroup)
+ 3. The permission bits are OR'd with rw-rw----
+
+ If unset, the Kubelet will not modify the ownership and permissions of any volume.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: integer
+ format: int64
+ fsGroupChangePolicy:
+ description: |-
+ fsGroupChangePolicy defines behavior of changing ownership and permission of the volume
+ before being exposed inside Pod. This field will only apply to
+ volume types which support fsGroup based ownership(and permissions).
+ It will have no effect on ephemeral volume types such as: secret, configmaps
+ and emptydir.
+ Valid values are "OnRootMismatch" and "Always". If not specified, "Always" is used.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: string
+ runAsGroup:
+ description: |-
+ The GID to run the entrypoint of the container process.
+ Uses runtime default if unset.
+ May also be set in SecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence
+ for that container.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: integer
+ format: int64
+ runAsNonRoot:
+ description: |-
+ Indicates that the container must run as a non-root user.
+ If true, the Kubelet will validate the image at runtime to ensure that it
+ does not run as UID 0 (root) and fail to start the container if it does.
+ If unset or false, no such validation will be performed.
+ May also be set in SecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: boolean
+ runAsUser:
+ description: |-
+ The UID to run the entrypoint of the container process.
+ Defaults to user specified in image metadata if unspecified.
+ May also be set in SecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence
+ for that container.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: integer
+ format: int64
+ seLinuxOptions:
+ description: |-
+ The SELinux context to be applied to all containers.
+ If unspecified, the container runtime will allocate a random SELinux context for each
+ container. May also be set in SecurityContext. If set in
+ both SecurityContext and PodSecurityContext, the value specified in SecurityContext
+ takes precedence for that container.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: object
+ properties:
+ level:
+ description: Level is SELinux level label that applies to the container.
+ type: string
+ role:
+ description: Role is a SELinux role label that applies to the container.
+ type: string
+ type:
+ description: Type is a SELinux type label that applies to the container.
+ type: string
+ user:
+ description: User is a SELinux user label that applies to the container.
+ type: string
+ seccompProfile:
+ description: |-
+ The seccomp options to use by the containers in this pod.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: object
+ required:
+ - type
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile defined in a file on the node should be used.
+ The profile must be preconfigured on the node to work.
+ Must be a descending path, relative to the kubelet's configured seccomp profile location.
+ Must be set if type is "Localhost". Must NOT be set for any other type.
+ type: string
+ type:
+ description: |-
+ type indicates which kind of seccomp profile will be applied.
+ Valid options are:
+
+ Localhost - a profile defined in a file on the node should be used.
+ RuntimeDefault - the container runtime default profile should be used.
+ Unconfined - no profile should be applied.
+ type: string
+ supplementalGroups:
+ description: |-
+ A list of groups applied to the first process run in each container, in addition
+ to the container's primary GID, the fsGroup (if specified), and group memberships
+ defined in the container image for the uid of the container process. If unspecified,
+ no additional groups are added to any container. Note that group memberships
+ defined in the container image for the uid of the container process are still effective,
+ even if they are not included in this list.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: array
+ items:
+ type: integer
+ format: int64
+ sysctls:
+ description: |-
+ Sysctls hold a list of namespaced sysctls used for the pod. Pods with unsupported
+ sysctls (by the container runtime) might fail to launch.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: array
+ items:
+ description: Sysctl defines a kernel parameter to be set
+ type: object
+ required:
+ - name
+ - value
+ properties:
+ name:
+ description: Name of a property to set
+ type: string
+ value:
+ description: Value of a property to set
+ type: string
+ serviceAccountName:
+ description: If specified, the pod's service account
+ type: string
+ tolerations:
+ description: If specified, the pod's tolerations.
+ type: array
+ items:
+ description: |-
+ The pod this Toleration is attached to tolerates any taint that matches
+ the triple using the matching operator .
+ type: object
+ properties:
+ effect:
+ description: |-
+ Effect indicates the taint effect to match. Empty means match all taint effects.
+ When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute.
+ type: string
+ key:
+ description: |-
+ Key is the taint key that the toleration applies to. Empty means match all taint keys.
+ If the key is empty, operator must be Exists; this combination means to match all values and all keys.
+ type: string
+ operator:
+ description: |-
+ Operator represents a key's relationship to the value.
+ Valid operators are Exists and Equal. Defaults to Equal.
+ Exists is equivalent to wildcard for value, so that a pod can
+ tolerate all taints of a particular category.
+ type: string
+ tolerationSeconds:
+ description: |-
+ TolerationSeconds represents the period of time the toleration (which must be
+ of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default,
+ it is not set, which means tolerate the taint forever (do not evict). Zero and
+ negative values will be treated as 0 (evict immediately) by the system.
+ type: integer
+ format: int64
+ value:
+ description: |-
+ Value is the taint value the toleration matches to.
+ If the operator is Exists, the value should be empty, otherwise just a regular string.
+ type: string
+ serviceType:
+ description: |-
+ Optional service type for Kubernetes solver service. Supported values
+ are NodePort or ClusterIP. If unset, defaults to NodePort.
+ type: string
+ ingress:
+ description: |-
+ The ingress based HTTP01 challenge solver will solve challenges by
+ creating or modifying Ingress resources in order to route requests for
+ '/.well-known/acme-challenge/XYZ' to 'challenge solver' pods that are
+ provisioned by cert-manager for each Challenge to be completed.
+ type: object
+ properties:
+ class:
+ description: |-
+ This field configures the annotation `kubernetes.io/ingress.class` when
+ creating Ingress resources to solve ACME challenges that use this
+ challenge solver. Only one of `class`, `name` or `ingressClassName` may
+ be specified.
+ type: string
+ ingressClassName:
+ description: |-
+ This field configures the field `ingressClassName` on the created Ingress
+ resources used to solve ACME challenges that use this challenge solver.
+ This is the recommended way of configuring the ingress class. Only one of
+ `class`, `name` or `ingressClassName` may be specified.
+ type: string
+ ingressTemplate:
+ description: |-
+ Optional ingress template used to configure the ACME challenge solver
+ ingress used for HTTP01 challenges.
+ type: object
+ properties:
+ metadata:
+ description: |-
+ ObjectMeta overrides for the ingress used to solve HTTP01 challenges.
+ Only the 'labels' and 'annotations' fields may be set.
+ If labels or annotations overlap with in-built values, the values here
+ will override the in-built values.
+ type: object
+ properties:
+ annotations:
+ description: Annotations that should be added to the created ACME HTTP01 solver ingress.
+ type: object
+ additionalProperties:
+ type: string
+ labels:
+ description: Labels that should be added to the created ACME HTTP01 solver ingress.
+ type: object
+ additionalProperties:
+ type: string
+ name:
+ description: |-
+ The name of the ingress resource that should have ACME challenge solving
+ routes inserted into it in order to solve HTTP01 challenges.
+ This is typically used in conjunction with ingress controllers like
+ ingress-gce, which maintains a 1:1 mapping between external IPs and
+ ingress resources. Only one of `class`, `name` or `ingressClassName` may
+ be specified.
+ type: string
+ podTemplate:
+ description: |-
+ Optional pod template used to configure the ACME challenge solver pods
+ used for HTTP01 challenges.
+ type: object
+ properties:
+ metadata:
+ description: |-
+ ObjectMeta overrides for the pod used to solve HTTP01 challenges.
+ Only the 'labels' and 'annotations' fields may be set.
+ If labels or annotations overlap with in-built values, the values here
+ will override the in-built values.
+ type: object
+ properties:
+ annotations:
+ description: Annotations that should be added to the created ACME HTTP01 solver pods.
+ type: object
+ additionalProperties:
+ type: string
+ labels:
+ description: Labels that should be added to the created ACME HTTP01 solver pods.
+ type: object
+ additionalProperties:
+ type: string
+ spec:
+ description: |-
+ PodSpec defines overrides for the HTTP01 challenge solver pod.
+ Check ACMEChallengeSolverHTTP01IngressPodSpec to find out currently supported fields.
+ All other fields will be ignored.
+ type: object
+ properties:
+ affinity:
+ description: If specified, the pod's scheduling constraints
+ type: object
+ properties:
+ nodeAffinity:
+ description: Describes node affinity scheduling rules for the pod.
+ type: object
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node matches the corresponding matchExpressions; the
+ node(s) with the highest sum are the most preferred.
+ type: array
+ items:
+ description: |-
+ An empty preferred scheduling term matches all objects with implicit weight 0
+ (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op).
+ type: object
+ required:
+ - preference
+ - weight
+ properties:
+ preference:
+ description: A node selector term, associated with the corresponding weight.
+ type: object
+ properties:
+ matchExpressions:
+ description: A list of node selector requirements by node's labels.
+ type: array
+ items:
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: The label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
+ type: string
+ values:
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchFields:
+ description: A list of node selector requirements by node's fields.
+ type: array
+ items:
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: The label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
+ type: string
+ values:
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ x-kubernetes-map-type: atomic
+ weight:
+ description: Weight associated with matching the corresponding nodeSelectorTerm, in the range 1-100.
+ type: integer
+ format: int32
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ If the affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to an update), the system
+ may or may not try to eventually evict the pod from its node.
+ type: object
+ required:
+ - nodeSelectorTerms
+ properties:
+ nodeSelectorTerms:
+ description: Required. A list of node selector terms. The terms are ORed.
+ type: array
+ items:
+ description: |-
+ A null or empty node selector term matches no objects. The requirements of
+ them are ANDed.
+ The TopologySelectorTerm type implements a subset of the NodeSelectorTerm.
+ type: object
+ properties:
+ matchExpressions:
+ description: A list of node selector requirements by node's labels.
+ type: array
+ items:
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: The label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
+ type: string
+ values:
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchFields:
+ description: A list of node selector requirements by node's fields.
+ type: array
+ items:
+ description: |-
+ A node selector requirement is a selector that contains values, a key, and an operator
+ that relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: The label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ Represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
+ type: string
+ values:
+ description: |-
+ An array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. If the operator is Gt or Lt, the values
+ array must have a single element, which will be interpreted as an integer.
+ This array is replaced during a strategic merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ x-kubernetes-map-type: atomic
+ x-kubernetes-list-type: atomic
+ x-kubernetes-map-type: atomic
+ podAffinity:
+ description: Describes pod affinity scheduling rules (e.g. co-locate this pod in the same node, zone, etc. as some other pod(s)).
+ type: object
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the
+ node(s) with the highest sum are the most preferred.
+ type: array
+ items:
+ description: The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)
+ type: object
+ required:
+ - podAffinityTerm
+ - weight
+ properties:
+ podAffinityTerm:
+ description: Required. A pod affinity term, associated with the corresponding weight.
+ type: object
+ required:
+ - topologyKey
+ properties:
+ labelSelector:
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
+ type: object
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
+ type: array
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: key is the label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ additionalProperties:
+ type: string
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both matchLabelKeys and labelSelector.
+ Also, matchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
+ Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
+ type: object
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
+ type: array
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: key is the label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ additionalProperties:
+ type: string
+ x-kubernetes-map-type: atomic
+ namespaces:
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
+ type: string
+ weight:
+ description: |-
+ weight associated with matching the corresponding podAffinityTerm,
+ in the range 1-100.
+ type: integer
+ format: int32
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ If the affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to a pod label update), the
+ system may or may not try to eventually evict the pod from its node.
+ When there are multiple elements, the lists of nodes corresponding to each
+ podAffinityTerm are intersected, i.e. all terms must be satisfied.
+ type: array
+ items:
+ description: |-
+ Defines a set of pods (namely those matching the labelSelector
+ relative to the given namespace(s)) that this pod should be
+ co-located (affinity) or not co-located (anti-affinity) with,
+ where co-located is defined as running on a node whose value of
+ the label with key matches that of any node on which
+ a pod of the set of pods is running
+ type: object
+ required:
+ - topologyKey
+ properties:
+ labelSelector:
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
+ type: object
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
+ type: array
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: key is the label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ additionalProperties:
+ type: string
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both matchLabelKeys and labelSelector.
+ Also, matchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
+ Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
+ type: object
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
+ type: array
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: key is the label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ additionalProperties:
+ type: string
+ x-kubernetes-map-type: atomic
+ namespaces:
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
+ type: string
+ x-kubernetes-list-type: atomic
+ podAntiAffinity:
+ description: Describes pod anti-affinity scheduling rules (e.g. avoid putting this pod in the same node, zone, etc. as some other pod(s)).
+ type: object
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ The scheduler will prefer to schedule pods to nodes that satisfy
+ the anti-affinity expressions specified by this field, but it may choose
+ a node that violates one or more of the expressions. The node that is
+ most preferred is the one with the greatest sum of weights, i.e.
+ for each node that meets all of the scheduling requirements (resource
+ request, requiredDuringScheduling anti-affinity expressions, etc.),
+ compute a sum by iterating through the elements of this field and adding
+ "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the
+ node(s) with the highest sum are the most preferred.
+ type: array
+ items:
+ description: The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)
+ type: object
+ required:
+ - podAffinityTerm
+ - weight
+ properties:
+ podAffinityTerm:
+ description: Required. A pod affinity term, associated with the corresponding weight.
+ type: object
+ required:
+ - topologyKey
+ properties:
+ labelSelector:
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
+ type: object
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
+ type: array
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: key is the label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ additionalProperties:
+ type: string
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both matchLabelKeys and labelSelector.
+ Also, matchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
+ Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
+ type: object
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
+ type: array
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: key is the label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ additionalProperties:
+ type: string
+ x-kubernetes-map-type: atomic
+ namespaces:
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
+ type: string
+ weight:
+ description: |-
+ weight associated with matching the corresponding podAffinityTerm,
+ in the range 1-100.
+ type: integer
+ format: int32
+ x-kubernetes-list-type: atomic
+ requiredDuringSchedulingIgnoredDuringExecution:
+ description: |-
+ If the anti-affinity requirements specified by this field are not met at
+ scheduling time, the pod will not be scheduled onto the node.
+ If the anti-affinity requirements specified by this field cease to be met
+ at some point during pod execution (e.g. due to a pod label update), the
+ system may or may not try to eventually evict the pod from its node.
+ When there are multiple elements, the lists of nodes corresponding to each
+ podAffinityTerm are intersected, i.e. all terms must be satisfied.
+ type: array
+ items:
+ description: |-
+ Defines a set of pods (namely those matching the labelSelector
+ relative to the given namespace(s)) that this pod should be
+ co-located (affinity) or not co-located (anti-affinity) with,
+ where co-located is defined as running on a node whose value of
+ the label with key matches that of any node on which
+ a pod of the set of pods is running
+ type: object
+ required:
+ - topologyKey
+ properties:
+ labelSelector:
+ description: |-
+ A label query over a set of resources, in this case pods.
+ If it's null, this PodAffinityTerm matches with no Pods.
+ type: object
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
+ type: array
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: key is the label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ additionalProperties:
+ type: string
+ x-kubernetes-map-type: atomic
+ matchLabelKeys:
+ description: |-
+ MatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both matchLabelKeys and labelSelector.
+ Also, matchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ mismatchLabelKeys:
+ description: |-
+ MismatchLabelKeys is a set of pod label keys to select which pods will
+ be taken into consideration. The keys are used to lookup values from the
+ incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
+ to select the group of existing pods which pods will be taken into consideration
+ for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
+ pod labels will be ignored. The default value is empty.
+ The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
+ Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
+ This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ namespaceSelector:
+ description: |-
+ A label query over the set of namespaces that the term applies to.
+ The term is applied to the union of the namespaces selected by this field
+ and the ones listed in the namespaces field.
+ null selector and null or empty namespaces list means "this pod's namespace".
+ An empty selector ({}) matches all namespaces.
+ type: object
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
+ type: array
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ type: object
+ required:
+ - key
+ - operator
+ properties:
+ key:
+ description: key is the label key that the selector applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ additionalProperties:
+ type: string
+ x-kubernetes-map-type: atomic
+ namespaces:
+ description: |-
+ namespaces specifies a static list of namespace names that the term applies to.
+ The term is applied to the union of the namespaces listed in this field
+ and the ones selected by namespaceSelector.
+ null or empty namespaces list and null namespaceSelector means "this pod's namespace".
+ type: array
+ items:
+ type: string
+ x-kubernetes-list-type: atomic
+ topologyKey:
+ description: |-
+ This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
+ the labelSelector in the specified namespaces, where co-located is defined as running on a node
+ whose value of the label with key topologyKey matches that of any node on which any of the
+ selected pods is running.
+ Empty topologyKey is not allowed.
+ type: string
+ x-kubernetes-list-type: atomic
+ imagePullSecrets:
+ description: If specified, the pod's imagePullSecrets
+ type: array
+ items:
+ description: |-
+ LocalObjectReference contains enough information to let you locate the
+ referenced object inside the same namespace.
+ type: object
+ properties:
+ name:
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ default: ""
+ x-kubernetes-map-type: atomic
+ nodeSelector:
+ description: |-
+ 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: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
+ type: object
+ additionalProperties:
+ type: string
+ priorityClassName:
+ description: If specified, the pod's priorityClassName.
+ type: string
+ securityContext:
+ description: If specified, the pod's security context
+ type: object
+ properties:
+ fsGroup:
+ description: |-
+ A special supplemental group that applies to all containers in a pod.
+ Some volume types allow the Kubelet to change the ownership of that volume
+ to be owned by the pod:
+
+ 1. The owning GID will be the FSGroup
+ 2. The setgid bit is set (new files created in the volume will be owned by FSGroup)
+ 3. The permission bits are OR'd with rw-rw----
+
+ If unset, the Kubelet will not modify the ownership and permissions of any volume.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: integer
+ format: int64
+ fsGroupChangePolicy:
+ description: |-
+ fsGroupChangePolicy defines behavior of changing ownership and permission of the volume
+ before being exposed inside Pod. This field will only apply to
+ volume types which support fsGroup based ownership(and permissions).
+ It will have no effect on ephemeral volume types such as: secret, configmaps
+ and emptydir.
+ Valid values are "OnRootMismatch" and "Always". If not specified, "Always" is used.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: string
+ runAsGroup:
+ description: |-
+ The GID to run the entrypoint of the container process.
+ Uses runtime default if unset.
+ May also be set in SecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence
+ for that container.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: integer
+ format: int64
+ runAsNonRoot:
+ description: |-
+ Indicates that the container must run as a non-root user.
+ If true, the Kubelet will validate the image at runtime to ensure that it
+ does not run as UID 0 (root) and fail to start the container if it does.
+ If unset or false, no such validation will be performed.
+ May also be set in SecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence.
+ type: boolean
+ runAsUser:
+ description: |-
+ The UID to run the entrypoint of the container process.
+ Defaults to user specified in image metadata if unspecified.
+ May also be set in SecurityContext. If set in both SecurityContext and
+ PodSecurityContext, the value specified in SecurityContext takes precedence
+ for that container.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: integer
+ format: int64
+ seLinuxOptions:
+ description: |-
+ The SELinux context to be applied to all containers.
+ If unspecified, the container runtime will allocate a random SELinux context for each
+ container. May also be set in SecurityContext. If set in
+ both SecurityContext and PodSecurityContext, the value specified in SecurityContext
+ takes precedence for that container.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: object
+ properties:
+ level:
+ description: Level is SELinux level label that applies to the container.
+ type: string
+ role:
+ description: Role is a SELinux role label that applies to the container.
+ type: string
+ type:
+ description: Type is a SELinux type label that applies to the container.
+ type: string
+ user:
+ description: User is a SELinux user label that applies to the container.
+ type: string
+ seccompProfile:
+ description: |-
+ The seccomp options to use by the containers in this pod.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: object
+ required:
+ - type
+ properties:
+ localhostProfile:
+ description: |-
+ localhostProfile indicates a profile defined in a file on the node should be used.
+ The profile must be preconfigured on the node to work.
+ Must be a descending path, relative to the kubelet's configured seccomp profile location.
+ Must be set if type is "Localhost". Must NOT be set for any other type.
+ type: string
+ type:
+ description: |-
+ type indicates which kind of seccomp profile will be applied.
+ Valid options are:
+
+ Localhost - a profile defined in a file on the node should be used.
+ RuntimeDefault - the container runtime default profile should be used.
+ Unconfined - no profile should be applied.
+ type: string
+ supplementalGroups:
+ description: |-
+ A list of groups applied to the first process run in each container, in addition
+ to the container's primary GID, the fsGroup (if specified), and group memberships
+ defined in the container image for the uid of the container process. If unspecified,
+ no additional groups are added to any container. Note that group memberships
+ defined in the container image for the uid of the container process are still effective,
+ even if they are not included in this list.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: array
+ items:
+ type: integer
+ format: int64
+ sysctls:
+ description: |-
+ Sysctls hold a list of namespaced sysctls used for the pod. Pods with unsupported
+ sysctls (by the container runtime) might fail to launch.
+ Note that this field cannot be set when spec.os.name is windows.
+ type: array
+ items:
+ description: Sysctl defines a kernel parameter to be set
+ type: object
+ required:
+ - name
+ - value
+ properties:
+ name:
+ description: Name of a property to set
+ type: string
+ value:
+ description: Value of a property to set
+ type: string
+ serviceAccountName:
+ description: If specified, the pod's service account
+ type: string
+ tolerations:
+ description: If specified, the pod's tolerations.
+ type: array
+ items:
+ description: |-
+ The pod this Toleration is attached to tolerates any taint that matches
+ the triple using the matching operator .
+ type: object
+ properties:
+ effect:
+ description: |-
+ Effect indicates the taint effect to match. Empty means match all taint effects.
+ When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute.
+ type: string
+ key:
+ description: |-
+ Key is the taint key that the toleration applies to. Empty means match all taint keys.
+ If the key is empty, operator must be Exists; this combination means to match all values and all keys.
+ type: string
+ operator:
+ description: |-
+ Operator represents a key's relationship to the value.
+ Valid operators are Exists and Equal. Defaults to Equal.
+ Exists is equivalent to wildcard for value, so that a pod can
+ tolerate all taints of a particular category.
+ type: string
+ tolerationSeconds:
+ description: |-
+ TolerationSeconds represents the period of time the toleration (which must be
+ of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default,
+ it is not set, which means tolerate the taint forever (do not evict). Zero and
+ negative values will be treated as 0 (evict immediately) by the system.
+ type: integer
+ format: int64
+ value:
+ description: |-
+ Value is the taint value the toleration matches to.
+ If the operator is Exists, the value should be empty, otherwise just a regular string.
+ type: string
+ serviceType:
+ description: |-
+ Optional service type for Kubernetes solver service. Supported values
+ are NodePort or ClusterIP. If unset, defaults to NodePort.
+ type: string
+ selector:
+ description: |-
+ Selector selects a set of DNSNames on the Certificate resource that
+ should be solved using this challenge solver.
+ If not specified, the solver will be treated as the 'default' solver
+ with the lowest priority, i.e. if any other solver has a more specific
+ match, it will be used instead.
+ type: object
+ properties:
+ dnsNames:
+ description: |-
+ List of DNSNames that this solver will be used to solve.
+ If specified and a match is found, a dnsNames selector will take
+ precedence over a dnsZones selector.
+ If multiple solvers match with the same dnsNames value, the solver
+ with the most matching labels in matchLabels will be selected.
+ If neither has more matches, the solver defined earlier in the list
+ will be selected.
+ type: array
+ items:
+ type: string
+ dnsZones:
+ description: |-
+ List of DNSZones that this solver will be used to solve.
+ The most specific DNS zone match specified here will take precedence
+ over other DNS zone matches, so a solver specifying sys.example.com
+ will be selected over one specifying example.com for the domain
+ www.sys.example.com.
+ If multiple solvers match with the same dnsZones value, the solver
+ with the most matching labels in matchLabels will be selected.
+ If neither has more matches, the solver defined earlier in the list
+ will be selected.
+ type: array
+ items:
+ type: string
+ matchLabels:
+ description: |-
+ A label selector that is used to refine the set of certificate's that
+ this challenge solver will apply to.
+ type: object
+ additionalProperties:
+ type: string
+ ca:
+ description: |-
+ CA configures this issuer to sign certificates using a signing CA keypair
+ stored in a Secret resource.
+ This is used to build internal PKIs that are managed by cert-manager.
+ type: object
+ required:
+ - secretName
+ properties:
+ crlDistributionPoints:
+ description: |-
+ The CRL distribution points is an X.509 v3 certificate extension which identifies
+ the location of the CRL from which the revocation of this certificate can be checked.
+ If not set, certificates will be issued without distribution points set.
+ type: array
+ items:
+ type: string
+ issuingCertificateURLs:
+ description: |-
+ IssuingCertificateURLs is a list of URLs which this issuer should embed into certificates
+ it creates. See https://www.rfc-editor.org/rfc/rfc5280#section-4.2.2.1 for more details.
+ As an example, such a URL might be "http://ca.domain.com/ca.crt".
+ type: array
+ items:
+ type: string
+ ocspServers:
+ description: |-
+ The OCSP server list is an X.509 v3 extension that defines a list of
+ URLs of OCSP responders. The OCSP responders can be queried for the
+ revocation status of an issued certificate. If not set, the
+ certificate will be issued with no OCSP servers set. For example, an
+ OCSP server URL could be "http://ocsp.int-x3.letsencrypt.org".
+ type: array
+ items:
+ type: string
+ secretName:
+ description: |-
+ SecretName is the name of the secret used to sign Certificates issued
+ by this Issuer.
+ type: string
+ selfSigned:
+ description: |-
+ SelfSigned configures this issuer to 'self sign' certificates using the
+ private key used to create the CertificateRequest object.
+ type: object
+ properties:
+ crlDistributionPoints:
+ description: |-
+ The CRL distribution points is an X.509 v3 certificate extension which identifies
+ the location of the CRL from which the revocation of this certificate can be checked.
+ If not set certificate will be issued without CDP. Values are strings.
+ type: array
+ items:
+ type: string
+ vault:
+ description: |-
+ Vault configures this issuer to sign certificates using a HashiCorp Vault
+ PKI backend.
+ type: object
+ required:
+ - auth
+ - path
+ - server
+ properties:
+ auth:
+ description: Auth configures how cert-manager authenticates with the Vault server.
+ type: object
+ properties:
+ appRole:
+ description: |-
+ AppRole authenticates with Vault using the App Role auth mechanism,
+ with the role and secret stored in a Kubernetes Secret resource.
+ type: object
+ required:
+ - path
+ - roleId
+ - secretRef
+ properties:
+ path:
+ description: |-
+ Path where the App Role authentication backend is mounted in Vault, e.g:
+ "approle"
+ type: string
+ roleId:
+ description: |-
+ RoleID configured in the App Role authentication backend when setting
+ up the authentication backend in Vault.
+ type: string
+ secretRef:
+ description: |-
+ Reference to a key in a Secret that contains the App Role secret used
+ to authenticate with Vault.
+ The `key` field must be specified and denotes which entry within the Secret
+ resource is used as the app role secret.
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ clientCertificate:
+ description: |-
+ ClientCertificate authenticates with Vault by presenting a client
+ certificate during the request's TLS handshake.
+ Works only when using HTTPS protocol.
+ type: object
+ properties:
+ mountPath:
+ description: |-
+ The Vault mountPath here is the mount path to use when authenticating with
+ Vault. For example, setting a value to `/v1/auth/foo`, will use the path
+ `/v1/auth/foo/login` to authenticate with Vault. If unspecified, the
+ default value "/v1/auth/cert" will be used.
+ type: string
+ name:
+ description: |-
+ Name of the certificate role to authenticate against.
+ If not set, matching any certificate role, if available.
+ type: string
+ secretName:
+ description: |-
+ Reference to Kubernetes Secret of type "kubernetes.io/tls" (hence containing
+ tls.crt and tls.key) used to authenticate to Vault using TLS client
+ authentication.
+ type: string
+ kubernetes:
+ description: |-
+ Kubernetes authenticates with Vault by passing the ServiceAccount
+ token stored in the named Secret resource to the Vault server.
+ type: object
+ required:
+ - role
+ properties:
+ mountPath:
+ description: |-
+ The Vault mountPath here is the mount path to use when authenticating with
+ Vault. For example, setting a value to `/v1/auth/foo`, will use the path
+ `/v1/auth/foo/login` to authenticate with Vault. If unspecified, the
+ default value "/v1/auth/kubernetes" will be used.
+ type: string
+ role:
+ description: |-
+ A required field containing the Vault Role to assume. A Role binds a
+ Kubernetes ServiceAccount with a set of Vault policies.
+ type: string
+ secretRef:
+ description: |-
+ The required Secret field containing a Kubernetes ServiceAccount JWT used
+ for authenticating with Vault. Use of 'ambient credentials' is not
+ supported.
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ serviceAccountRef:
+ description: |-
+ A reference to a service account that will be used to request a bound
+ token (also known as "projected token"). Compared to using "secretRef",
+ using this field means that you don't rely on statically bound tokens. To
+ use this field, you must configure an RBAC rule to let cert-manager
+ request a token.
+ type: object
+ required:
+ - name
+ properties:
+ audiences:
+ description: |-
+ TokenAudiences is an optional list of extra audiences to include in the token passed to Vault. The default token
+ consisting of the issuer's namespace and name is always included.
+ type: array
+ items:
+ type: string
+ name:
+ description: Name of the ServiceAccount used to request a token.
+ type: string
+ tokenSecretRef:
+ description: TokenSecretRef authenticates with Vault by presenting a token.
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ caBundle:
+ description: |-
+ Base64-encoded bundle of PEM CAs which will be used to validate the certificate
+ chain presented by Vault. Only used if using HTTPS to connect to Vault and
+ ignored for HTTP connections.
+ Mutually exclusive with CABundleSecretRef.
+ If neither CABundle nor CABundleSecretRef are defined, the certificate bundle in
+ the cert-manager controller container is used to validate the TLS connection.
+ type: string
+ format: byte
+ caBundleSecretRef:
+ description: |-
+ Reference to a Secret containing a bundle of PEM-encoded CAs to use when
+ verifying the certificate chain presented by Vault when using HTTPS.
+ Mutually exclusive with CABundle.
+ If neither CABundle nor CABundleSecretRef are defined, the certificate bundle in
+ the cert-manager controller container is used to validate the TLS connection.
+ If no key for the Secret is specified, cert-manager will default to 'ca.crt'.
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ clientCertSecretRef:
+ description: |-
+ Reference to a Secret containing a PEM-encoded Client Certificate to use when the
+ Vault server requires mTLS.
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ clientKeySecretRef:
+ description: |-
+ Reference to a Secret containing a PEM-encoded Client Private Key to use when the
+ Vault server requires mTLS.
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ namespace:
+ description: |-
+ Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows Vault environments to support Secure Multi-tenancy. e.g: "ns1"
+ More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
+ type: string
+ path:
+ description: |-
+ Path is the mount path of the Vault PKI backend's `sign` endpoint, e.g:
+ "my_pki_mount/sign/my-role-name".
+ type: string
+ server:
+ description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
+ type: string
+ venafi:
+ description: |-
+ Venafi configures this issuer to sign certificates using a Venafi TPP
+ or Venafi Cloud policy zone.
+ type: object
+ required:
+ - zone
+ properties:
+ cloud:
+ description: |-
+ Cloud specifies the Venafi cloud configuration settings.
+ Only one of TPP or Cloud may be specified.
+ type: object
+ required:
+ - apiTokenSecretRef
+ properties:
+ apiTokenSecretRef:
+ description: APITokenSecretRef is a secret key selector for the Venafi Cloud API token.
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ url:
+ description: |-
+ URL is the base URL for Venafi Cloud.
+ Defaults to "https://api.venafi.cloud/v1".
+ type: string
+ tpp:
+ description: |-
+ TPP specifies Trust Protection Platform configuration settings.
+ Only one of TPP or Cloud may be specified.
+ type: object
+ required:
+ - credentialsRef
+ - url
+ properties:
+ caBundle:
+ description: |-
+ Base64-encoded bundle of PEM CAs which will be used to validate the certificate
+ chain presented by the TPP server. Only used if using HTTPS; ignored for HTTP.
+ If undefined, the certificate bundle in the cert-manager controller container
+ is used to validate the chain.
+ type: string
+ format: byte
+ caBundleSecretRef:
+ description: |-
+ Reference to a Secret containing a base64-encoded bundle of PEM CAs
+ which will be used to validate the certificate chain presented by the TPP server.
+ Only used if using HTTPS; ignored for HTTP. Mutually exclusive with CABundle.
+ If neither CABundle nor CABundleSecretRef is defined, the certificate bundle in
+ the cert-manager controller container is used to validate the TLS connection.
+ type: object
+ required:
+ - name
+ properties:
+ key:
+ description: |-
+ The key of the entry in the Secret resource's `data` field to be used.
+ Some instances of this field may be defaulted, in others it may be
+ required.
+ type: string
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ credentialsRef:
+ description: |-
+ CredentialsRef is a reference to a Secret containing the Venafi TPP API credentials.
+ The secret must contain the key 'access-token' for the Access Token Authentication,
+ or two keys, 'username' and 'password' for the API Keys Authentication.
+ type: object
+ required:
+ - name
+ properties:
+ name:
+ description: |-
+ Name of the resource being referred to.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ url:
+ description: |-
+ URL is the base URL for the vedsdk endpoint of the Venafi TPP instance,
+ for example: "https://tpp.example.com/vedsdk".
+ type: string
+ zone:
+ description: |-
+ Zone is the Venafi Policy Zone to use for this issuer.
+ All requests made to the Venafi platform will be restricted by the named
+ zone policy.
+ This field is required.
+ type: string
+ status:
+ description: Status of the Issuer. This is set and managed automatically.
+ type: object
+ properties:
+ acme:
+ description: |-
+ ACME specific status options.
+ This field should only be set if the Issuer is configured to use an ACME
+ server to issue certificates.
+ type: object
+ properties:
+ lastPrivateKeyHash:
+ description: |-
+ LastPrivateKeyHash is a hash of the private key associated with the latest
+ registered ACME account, in order to track changes made to registered account
+ associated with the Issuer
+ type: string
+ lastRegisteredEmail:
+ description: |-
+ LastRegisteredEmail is the email associated with the latest registered
+ ACME account, in order to track changes made to registered account
+ associated with the Issuer
+ type: string
+ uri:
+ description: |-
+ URI is the unique account identifier, which can also be used to retrieve
+ account details from the CA
+ type: string
+ conditions:
+ description: |-
+ List of status conditions to indicate the status of a CertificateRequest.
+ Known condition types are `Ready`.
+ type: array
+ items:
+ description: IssuerCondition contains condition information for an Issuer.
+ type: object
+ required:
+ - status
+ - type
+ properties:
+ lastTransitionTime:
+ description: |-
+ LastTransitionTime is the timestamp corresponding to the last status
+ change of this condition.
+ type: string
+ format: date-time
+ message:
+ description: |-
+ Message is a human readable description of the details of the last
+ transition, complementing reason.
+ type: string
+ observedGeneration:
+ description: |-
+ If set, this represents the .metadata.generation that the condition was
+ set based upon.
+ For instance, if .metadata.generation is currently 12, but the
+ .status.condition[x].observedGeneration is 9, the condition is out of date
+ with respect to the current state of the Issuer.
+ type: integer
+ format: int64
+ reason:
+ description: |-
+ Reason is a brief machine readable explanation for the condition's last
+ transition.
+ type: string
+ status:
+ description: Status of the condition, one of (`True`, `False`, `Unknown`).
+ type: string
+ enum:
+ - "True"
+ - "False"
+ - Unknown
+ type:
+ description: Type of the condition, known values are (`Ready`).
+ type: string
+ x-kubernetes-list-map-keys:
+ - type
+ x-kubernetes-list-type: map
+ served: true
+ storage: true
+
+# END crd
+---
+# Source: cert-manager/templates/crds.yaml
+# START crd
+apiVersion: apiextensions.k8s.io/v1
+kind: CustomResourceDefinition
+metadata:
+ name: orders.acme.cert-manager.io
+ # START annotations
+ annotations:
+ helm.sh/resource-policy: keep
+ # END annotations
+ labels:
+ app: 'cert-manager'
+ app.kubernetes.io/name: 'cert-manager'
+ app.kubernetes.io/instance: 'cert-manager'
+ app.kubernetes.io/component: "crds"
+ # Generated labels
+ app.kubernetes.io/version: "v1.16.1"
+spec:
+ group: acme.cert-manager.io
+ names:
+ kind: Order
+ listKind: OrderList
+ plural: orders
+ singular: order
+ categories:
+ - cert-manager
+ - cert-manager-acme
+ scope: Namespaced
+ versions:
+ - name: v1
+ subresources:
+ status: {}
+ additionalPrinterColumns:
+ - jsonPath: .status.state
+ name: State
+ type: string
+ - jsonPath: .spec.issuerRef.name
+ name: Issuer
+ priority: 1
+ type: string
+ - jsonPath: .status.reason
+ name: Reason
+ priority: 1
+ type: string
+ - jsonPath: .metadata.creationTimestamp
+ description: CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC.
+ name: Age
+ type: date
+ schema:
+ openAPIV3Schema:
+ description: Order is a type to represent an Order with an ACME server
+ type: object
+ required:
+ - metadata
+ - spec
+ properties:
+ apiVersion:
+ description: |-
+ APIVersion defines the versioned schema of this representation of an object.
+ Servers should convert recognized schemas to the latest internal value, and
+ may reject unrecognized values.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
+ type: string
+ kind:
+ description: |-
+ Kind is a string value representing the REST resource this object represents.
+ Servers may infer this from the endpoint the client submits requests to.
+ Cannot be updated.
+ In CamelCase.
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
+ type: string
+ metadata:
+ type: object
+ spec:
+ type: object
+ required:
+ - issuerRef
+ - request
+ properties:
+ commonName:
+ description: |-
+ CommonName is the common name as specified on the DER encoded CSR.
+ If specified, this value must also be present in `dnsNames` or `ipAddresses`.
+ This field must match the corresponding field on the DER encoded CSR.
+ type: string
+ dnsNames:
+ description: |-
+ DNSNames is a list of DNS names that should be included as part of the Order
+ validation process.
+ This field must match the corresponding field on the DER encoded CSR.
+ type: array
+ items:
+ type: string
+ duration:
+ description: |-
+ Duration is the duration for the not after date for the requested certificate.
+ this is set on order creation as pe the ACME spec.
+ type: string
+ ipAddresses:
+ description: |-
+ IPAddresses is a list of IP addresses that should be included as part of the Order
+ validation process.
+ This field must match the corresponding field on the DER encoded CSR.
+ type: array
+ items:
+ type: string
+ issuerRef:
+ description: |-
+ IssuerRef references a properly configured ACME-type Issuer which should
+ be used to create this Order.
+ If the Issuer does not exist, processing will be retried.
+ If the Issuer is not an 'ACME' Issuer, an error will be returned and the
+ Order will be marked as failed.
+ type: object
+ required:
+ - name
+ properties:
+ group:
+ description: Group of the resource being referred to.
+ type: string
+ kind:
+ description: Kind of the resource being referred to.
+ type: string
+ name:
+ description: Name of the resource being referred to.
+ type: string
+ request:
+ description: |-
+ Certificate signing request bytes in DER encoding.
+ This will be used when finalizing the order.
+ This field must be set on the order.
+ type: string
+ format: byte
+ status:
+ type: object
+ properties:
+ authorizations:
+ description: |-
+ Authorizations contains data returned from the ACME server on what
+ authorizations must be completed in order to validate the DNS names
+ specified on the Order.
+ type: array
+ items:
+ description: |-
+ ACMEAuthorization contains data returned from the ACME server on an
+ authorization that must be completed in order validate a DNS name on an ACME
+ Order resource.
+ type: object
+ required:
+ - url
+ properties:
+ challenges:
+ description: |-
+ Challenges specifies the challenge types offered by the ACME server.
+ One of these challenge types will be selected when validating the DNS
+ name and an appropriate Challenge resource will be created to perform
+ the ACME challenge process.
+ type: array
+ items:
+ description: |-
+ Challenge specifies a challenge offered by the ACME server for an Order.
+ An appropriate Challenge resource can be created to perform the ACME
+ challenge process.
+ type: object
+ required:
+ - token
+ - type
+ - url
+ properties:
+ token:
+ description: |-
+ Token is the token that must be presented for this challenge.
+ This is used to compute the 'key' that must also be presented.
+ type: string
+ type:
+ description: |-
+ Type is the type of challenge being offered, e.g. 'http-01', 'dns-01',
+ 'tls-sni-01', etc.
+ This is the raw value retrieved from the ACME server.
+ Only 'http-01' and 'dns-01' are supported by cert-manager, other values
+ will be ignored.
+ type: string
+ url:
+ description: |-
+ URL is the URL of this challenge. It can be used to retrieve additional
+ metadata about the Challenge from the ACME server.
+ type: string
+ identifier:
+ description: Identifier is the DNS name to be validated as part of this authorization
+ type: string
+ initialState:
+ description: |-
+ InitialState is the initial state of the ACME authorization when first
+ fetched from the ACME server.
+ If an Authorization is already 'valid', the Order controller will not
+ create a Challenge resource for the authorization. This will occur when
+ working with an ACME server that enables 'authz reuse' (such as Let's
+ Encrypt's production endpoint).
+ If not set and 'identifier' is set, the state is assumed to be pending
+ and a Challenge will be created.
+ type: string
+ enum:
+ - valid
+ - ready
+ - pending
+ - processing
+ - invalid
+ - expired
+ - errored
+ url:
+ description: URL is the URL of the Authorization that must be completed
+ type: string
+ wildcard:
+ description: |-
+ Wildcard will be true if this authorization is for a wildcard DNS name.
+ If this is true, the identifier will be the *non-wildcard* version of
+ the DNS name.
+ For example, if '*.example.com' is the DNS name being validated, this
+ field will be 'true' and the 'identifier' field will be 'example.com'.
+ type: boolean
+ certificate:
+ description: |-
+ Certificate is a copy of the PEM encoded certificate for this Order.
+ This field will be populated after the order has been successfully
+ finalized with the ACME server, and the order has transitioned to the
+ 'valid' state.
+ type: string
+ format: byte
+ failureTime:
+ description: |-
+ FailureTime stores the time that this order failed.
+ This is used to influence garbage collection and back-off.
+ type: string
+ format: date-time
+ finalizeURL:
+ description: |-
+ FinalizeURL of the Order.
+ This is used to obtain certificates for this order once it has been completed.
+ type: string
+ reason:
+ description: |-
+ Reason optionally provides more information about a why the order is in
+ the current state.
+ type: string
+ state:
+ description: |-
+ State contains the current state of this Order resource.
+ States 'success' and 'expired' are 'final'
+ type: string
+ enum:
+ - valid
+ - ready
+ - pending
+ - processing
+ - invalid
+ - expired
+ - errored
+ url:
+ description: |-
+ URL of the Order.
+ This will initially be empty when the resource is first created.
+ The Order controller will populate this field when the Order is first processed.
+ This field will be immutable after it is initially set.
+ type: string
+ served: true
+ storage: true
+
+# END crd
+
+---
+# Source: cert-manager/templates/cainjector-serviceaccount.yaml
+apiVersion: v1
+kind: ServiceAccount
+automountServiceAccountToken: true
+metadata:
+ name: cert-manager-cainjector
+ namespace: cert-manager
+ labels:
+ app: cainjector
+ app.kubernetes.io/name: cainjector
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "cainjector"
+ app.kubernetes.io/version: "v1.16.1"
+---
+# Source: cert-manager/templates/serviceaccount.yaml
+apiVersion: v1
+kind: ServiceAccount
+automountServiceAccountToken: true
+metadata:
+ name: cert-manager
+ namespace: cert-manager
+ labels:
+ app: cert-manager
+ app.kubernetes.io/name: cert-manager
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "controller"
+ app.kubernetes.io/version: "v1.16.1"
+---
+# Source: cert-manager/templates/webhook-serviceaccount.yaml
+apiVersion: v1
+kind: ServiceAccount
+automountServiceAccountToken: true
+metadata:
+ name: cert-manager-webhook
+ namespace: cert-manager
+ labels:
+ app: webhook
+ app.kubernetes.io/name: webhook
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "webhook"
+ app.kubernetes.io/version: "v1.16.1"
+---
+# Source: cert-manager/templates/cainjector-rbac.yaml
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
+metadata:
+ name: cert-manager-cainjector
+ labels:
+ app: cainjector
+ app.kubernetes.io/name: cainjector
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "cainjector"
+ app.kubernetes.io/version: "v1.16.1"
+rules:
+ - apiGroups: ["cert-manager.io"]
+ resources: ["certificates"]
+ verbs: ["get", "list", "watch"]
+ - apiGroups: [""]
+ resources: ["secrets"]
+ verbs: ["get", "list", "watch"]
+ - apiGroups: [""]
+ resources: ["events"]
+ verbs: ["get", "create", "update", "patch"]
+ - apiGroups: ["admissionregistration.k8s.io"]
+ resources: ["validatingwebhookconfigurations", "mutatingwebhookconfigurations"]
+ verbs: ["get", "list", "watch", "update", "patch"]
+ - apiGroups: ["apiregistration.k8s.io"]
+ resources: ["apiservices"]
+ verbs: ["get", "list", "watch", "update", "patch"]
+ - apiGroups: ["apiextensions.k8s.io"]
+ resources: ["customresourcedefinitions"]
+ verbs: ["get", "list", "watch", "update", "patch"]
+---
+# Source: cert-manager/templates/rbac.yaml
+# Issuer controller role
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
+metadata:
+ name: cert-manager-controller-issuers
+ labels:
+ app: cert-manager
+ app.kubernetes.io/name: cert-manager
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "controller"
+ app.kubernetes.io/version: "v1.16.1"
+rules:
+ - apiGroups: ["cert-manager.io"]
+ resources: ["issuers", "issuers/status"]
+ verbs: ["update", "patch"]
+ - apiGroups: ["cert-manager.io"]
+ resources: ["issuers"]
+ verbs: ["get", "list", "watch"]
+ - apiGroups: [""]
+ resources: ["secrets"]
+ verbs: ["get", "list", "watch", "create", "update", "delete"]
+ - apiGroups: [""]
+ resources: ["events"]
+ verbs: ["create", "patch"]
+---
+# Source: cert-manager/templates/rbac.yaml
+# ClusterIssuer controller role
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
+metadata:
+ name: cert-manager-controller-clusterissuers
+ labels:
+ app: cert-manager
+ app.kubernetes.io/name: cert-manager
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "controller"
+ app.kubernetes.io/version: "v1.16.1"
+rules:
+ - apiGroups: ["cert-manager.io"]
+ resources: ["clusterissuers", "clusterissuers/status"]
+ verbs: ["update", "patch"]
+ - apiGroups: ["cert-manager.io"]
+ resources: ["clusterissuers"]
+ verbs: ["get", "list", "watch"]
+ - apiGroups: [""]
+ resources: ["secrets"]
+ verbs: ["get", "list", "watch", "create", "update", "delete"]
+ - apiGroups: [""]
+ resources: ["events"]
+ verbs: ["create", "patch"]
+---
+# Source: cert-manager/templates/rbac.yaml
+# Certificates controller role
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
+metadata:
+ name: cert-manager-controller-certificates
+ labels:
+ app: cert-manager
+ app.kubernetes.io/name: cert-manager
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "controller"
+ app.kubernetes.io/version: "v1.16.1"
+rules:
+ - apiGroups: ["cert-manager.io"]
+ resources: ["certificates", "certificates/status", "certificaterequests", "certificaterequests/status"]
+ verbs: ["update", "patch"]
+ - apiGroups: ["cert-manager.io"]
+ resources: ["certificates", "certificaterequests", "clusterissuers", "issuers"]
+ verbs: ["get", "list", "watch"]
+ # We require these rules to support users with the OwnerReferencesPermissionEnforcement
+ # admission controller enabled:
+ # https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/#ownerreferencespermissionenforcement
+ - apiGroups: ["cert-manager.io"]
+ resources: ["certificates/finalizers", "certificaterequests/finalizers"]
+ verbs: ["update"]
+ - apiGroups: ["acme.cert-manager.io"]
+ resources: ["orders"]
+ verbs: ["create", "delete", "get", "list", "watch"]
+ - apiGroups: [""]
+ resources: ["secrets"]
+ verbs: ["get", "list", "watch", "create", "update", "delete", "patch"]
+ - apiGroups: [""]
+ resources: ["events"]
+ verbs: ["create", "patch"]
+---
+# Source: cert-manager/templates/rbac.yaml
+# Orders controller role
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
+metadata:
+ name: cert-manager-controller-orders
+ labels:
+ app: cert-manager
+ app.kubernetes.io/name: cert-manager
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "controller"
+ app.kubernetes.io/version: "v1.16.1"
+rules:
+ - apiGroups: ["acme.cert-manager.io"]
+ resources: ["orders", "orders/status"]
+ verbs: ["update", "patch"]
+ - apiGroups: ["acme.cert-manager.io"]
+ resources: ["orders", "challenges"]
+ verbs: ["get", "list", "watch"]
+ - apiGroups: ["cert-manager.io"]
+ resources: ["clusterissuers", "issuers"]
+ verbs: ["get", "list", "watch"]
+ - apiGroups: ["acme.cert-manager.io"]
+ resources: ["challenges"]
+ verbs: ["create", "delete"]
+ # We require these rules to support users with the OwnerReferencesPermissionEnforcement
+ # admission controller enabled:
+ # https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/#ownerreferencespermissionenforcement
+ - apiGroups: ["acme.cert-manager.io"]
+ resources: ["orders/finalizers"]
+ verbs: ["update"]
+ - apiGroups: [""]
+ resources: ["secrets"]
+ verbs: ["get", "list", "watch"]
+ - apiGroups: [""]
+ resources: ["events"]
+ verbs: ["create", "patch"]
+---
+# Source: cert-manager/templates/rbac.yaml
+# Challenges controller role
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
+metadata:
+ name: cert-manager-controller-challenges
+ labels:
+ app: cert-manager
+ app.kubernetes.io/name: cert-manager
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "controller"
+ app.kubernetes.io/version: "v1.16.1"
+rules:
+ # Use to update challenge resource status
+ - apiGroups: ["acme.cert-manager.io"]
+ resources: ["challenges", "challenges/status"]
+ verbs: ["update", "patch"]
+ # Used to watch challenge resources
+ - apiGroups: ["acme.cert-manager.io"]
+ resources: ["challenges"]
+ verbs: ["get", "list", "watch"]
+ # Used to watch challenges, issuer and clusterissuer resources
+ - apiGroups: ["cert-manager.io"]
+ resources: ["issuers", "clusterissuers"]
+ verbs: ["get", "list", "watch"]
+ # Need to be able to retrieve ACME account private key to complete challenges
+ - apiGroups: [""]
+ resources: ["secrets"]
+ verbs: ["get", "list", "watch"]
+ # Used to create events
+ - apiGroups: [""]
+ resources: ["events"]
+ verbs: ["create", "patch"]
+ # HTTP01 rules
+ - apiGroups: [""]
+ resources: ["pods", "services"]
+ verbs: ["get", "list", "watch", "create", "delete"]
+ - apiGroups: ["networking.k8s.io"]
+ resources: ["ingresses"]
+ verbs: ["get", "list", "watch", "create", "delete", "update"]
+ - apiGroups: [ "gateway.networking.k8s.io" ]
+ resources: [ "httproutes" ]
+ verbs: ["get", "list", "watch", "create", "delete", "update"]
+ # We require the ability to specify a custom hostname when we are creating
+ # new ingress resources.
+ # See: https://github.com/openshift/origin/blob/21f191775636f9acadb44fa42beeb4f75b255532/pkg/route/apiserver/admission/ingress_admission.go#L84-L148
+ - apiGroups: ["route.openshift.io"]
+ resources: ["routes/custom-host"]
+ verbs: ["create"]
+ # We require these rules to support users with the OwnerReferencesPermissionEnforcement
+ # admission controller enabled:
+ # https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/#ownerreferencespermissionenforcement
+ - apiGroups: ["acme.cert-manager.io"]
+ resources: ["challenges/finalizers"]
+ verbs: ["update"]
+ # DNS01 rules (duplicated above)
+ - apiGroups: [""]
+ resources: ["secrets"]
+ verbs: ["get", "list", "watch"]
+---
+# Source: cert-manager/templates/rbac.yaml
+# ingress-shim controller role
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
+metadata:
+ name: cert-manager-controller-ingress-shim
+ labels:
+ app: cert-manager
+ app.kubernetes.io/name: cert-manager
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "controller"
+ app.kubernetes.io/version: "v1.16.1"
+rules:
+ - apiGroups: ["cert-manager.io"]
+ resources: ["certificates", "certificaterequests"]
+ verbs: ["create", "update", "delete"]
+ - apiGroups: ["cert-manager.io"]
+ resources: ["certificates", "certificaterequests", "issuers", "clusterissuers"]
+ verbs: ["get", "list", "watch"]
+ - apiGroups: ["networking.k8s.io"]
+ resources: ["ingresses"]
+ verbs: ["get", "list", "watch"]
+ # We require these rules to support users with the OwnerReferencesPermissionEnforcement
+ # admission controller enabled:
+ # https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/#ownerreferencespermissionenforcement
+ - apiGroups: ["networking.k8s.io"]
+ resources: ["ingresses/finalizers"]
+ verbs: ["update"]
+ - apiGroups: ["gateway.networking.k8s.io"]
+ resources: ["gateways", "httproutes"]
+ verbs: ["get", "list", "watch"]
+ - apiGroups: ["gateway.networking.k8s.io"]
+ resources: ["gateways/finalizers", "httproutes/finalizers"]
+ verbs: ["update"]
+ - apiGroups: [""]
+ resources: ["events"]
+ verbs: ["create", "patch"]
+---
+# Source: cert-manager/templates/rbac.yaml
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
+metadata:
+ name: cert-manager-cluster-view
+ labels:
+ app: cert-manager
+ app.kubernetes.io/name: cert-manager
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "controller"
+ app.kubernetes.io/version: "v1.16.1"
+ rbac.authorization.k8s.io/aggregate-to-cluster-reader: "true"
+rules:
+ - apiGroups: ["cert-manager.io"]
+ resources: ["clusterissuers"]
+ verbs: ["get", "list", "watch"]
+---
+# Source: cert-manager/templates/rbac.yaml
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
+metadata:
+ name: cert-manager-view
+ labels:
+ app: cert-manager
+ app.kubernetes.io/name: cert-manager
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "controller"
+ app.kubernetes.io/version: "v1.16.1"
+ rbac.authorization.k8s.io/aggregate-to-view: "true"
+ rbac.authorization.k8s.io/aggregate-to-edit: "true"
+ rbac.authorization.k8s.io/aggregate-to-admin: "true"
+ rbac.authorization.k8s.io/aggregate-to-cluster-reader: "true"
+rules:
+ - apiGroups: ["cert-manager.io"]
+ resources: ["certificates", "certificaterequests", "issuers"]
+ verbs: ["get", "list", "watch"]
+ - apiGroups: ["acme.cert-manager.io"]
+ resources: ["challenges", "orders"]
+ verbs: ["get", "list", "watch"]
+---
+# Source: cert-manager/templates/rbac.yaml
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
+metadata:
+ name: cert-manager-edit
+ labels:
+ app: cert-manager
+ app.kubernetes.io/name: cert-manager
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "controller"
+ app.kubernetes.io/version: "v1.16.1"
+ rbac.authorization.k8s.io/aggregate-to-edit: "true"
+ rbac.authorization.k8s.io/aggregate-to-admin: "true"
+rules:
+ - apiGroups: ["cert-manager.io"]
+ resources: ["certificates", "certificaterequests", "issuers"]
+ verbs: ["create", "delete", "deletecollection", "patch", "update"]
+ - apiGroups: ["cert-manager.io"]
+ resources: ["certificates/status"]
+ verbs: ["update"]
+ - apiGroups: ["acme.cert-manager.io"]
+ resources: ["challenges", "orders"]
+ verbs: ["create", "delete", "deletecollection", "patch", "update"]
+---
+# Source: cert-manager/templates/rbac.yaml
+# Permission to approve CertificateRequests referencing cert-manager.io Issuers and ClusterIssuers
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
+metadata:
+ name: cert-manager-controller-approve:cert-manager-io
+ labels:
+ app: cert-manager
+ app.kubernetes.io/name: cert-manager
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "cert-manager"
+ app.kubernetes.io/version: "v1.16.1"
+rules:
+ - apiGroups: ["cert-manager.io"]
+ resources: ["signers"]
+ verbs: ["approve"]
+ resourceNames:
+ - "issuers.cert-manager.io/*"
+ - "clusterissuers.cert-manager.io/*"
+---
+# Source: cert-manager/templates/rbac.yaml
+# Permission to:
+# - Update and sign CertificateSigningRequests referencing cert-manager.io Issuers and ClusterIssuers
+# - Perform SubjectAccessReviews to test whether users are able to reference Namespaced Issuers
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
+metadata:
+ name: cert-manager-controller-certificatesigningrequests
+ labels:
+ app: cert-manager
+ app.kubernetes.io/name: cert-manager
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "cert-manager"
+ app.kubernetes.io/version: "v1.16.1"
+rules:
+ - apiGroups: ["certificates.k8s.io"]
+ resources: ["certificatesigningrequests"]
+ verbs: ["get", "list", "watch", "update"]
+ - apiGroups: ["certificates.k8s.io"]
+ resources: ["certificatesigningrequests/status"]
+ verbs: ["update", "patch"]
+ - apiGroups: ["certificates.k8s.io"]
+ resources: ["signers"]
+ resourceNames: ["issuers.cert-manager.io/*", "clusterissuers.cert-manager.io/*"]
+ verbs: ["sign"]
+ - apiGroups: ["authorization.k8s.io"]
+ resources: ["subjectaccessreviews"]
+ verbs: ["create"]
+---
+# Source: cert-manager/templates/webhook-rbac.yaml
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
+metadata:
+ name: cert-manager-webhook:subjectaccessreviews
+ labels:
+ app: webhook
+ app.kubernetes.io/name: webhook
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "webhook"
+ app.kubernetes.io/version: "v1.16.1"
+rules:
+- apiGroups: ["authorization.k8s.io"]
+ resources: ["subjectaccessreviews"]
+ verbs: ["create"]
+---
+# Source: cert-manager/templates/cainjector-rbac.yaml
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRoleBinding
+metadata:
+ name: cert-manager-cainjector
+ labels:
+ app: cainjector
+ app.kubernetes.io/name: cainjector
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "cainjector"
+ app.kubernetes.io/version: "v1.16.1"
+roleRef:
+ apiGroup: rbac.authorization.k8s.io
+ kind: ClusterRole
+ name: cert-manager-cainjector
+subjects:
+ - name: cert-manager-cainjector
+ namespace: cert-manager
+ kind: ServiceAccount
+---
+# Source: cert-manager/templates/rbac.yaml
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRoleBinding
+metadata:
+ name: cert-manager-controller-issuers
+ labels:
+ app: cert-manager
+ app.kubernetes.io/name: cert-manager
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "controller"
+ app.kubernetes.io/version: "v1.16.1"
+roleRef:
+ apiGroup: rbac.authorization.k8s.io
+ kind: ClusterRole
+ name: cert-manager-controller-issuers
+subjects:
+ - name: cert-manager
+ namespace: cert-manager
+ kind: ServiceAccount
+---
+# Source: cert-manager/templates/rbac.yaml
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRoleBinding
+metadata:
+ name: cert-manager-controller-clusterissuers
+ labels:
+ app: cert-manager
+ app.kubernetes.io/name: cert-manager
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "controller"
+ app.kubernetes.io/version: "v1.16.1"
+roleRef:
+ apiGroup: rbac.authorization.k8s.io
+ kind: ClusterRole
+ name: cert-manager-controller-clusterissuers
+subjects:
+ - name: cert-manager
+ namespace: cert-manager
+ kind: ServiceAccount
+---
+# Source: cert-manager/templates/rbac.yaml
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRoleBinding
+metadata:
+ name: cert-manager-controller-certificates
+ labels:
+ app: cert-manager
+ app.kubernetes.io/name: cert-manager
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "controller"
+ app.kubernetes.io/version: "v1.16.1"
+roleRef:
+ apiGroup: rbac.authorization.k8s.io
+ kind: ClusterRole
+ name: cert-manager-controller-certificates
+subjects:
+ - name: cert-manager
+ namespace: cert-manager
+ kind: ServiceAccount
+---
+# Source: cert-manager/templates/rbac.yaml
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRoleBinding
+metadata:
+ name: cert-manager-controller-orders
+ labels:
+ app: cert-manager
+ app.kubernetes.io/name: cert-manager
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "controller"
+ app.kubernetes.io/version: "v1.16.1"
+roleRef:
+ apiGroup: rbac.authorization.k8s.io
+ kind: ClusterRole
+ name: cert-manager-controller-orders
+subjects:
+ - name: cert-manager
+ namespace: cert-manager
+ kind: ServiceAccount
+---
+# Source: cert-manager/templates/rbac.yaml
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRoleBinding
+metadata:
+ name: cert-manager-controller-challenges
+ labels:
+ app: cert-manager
+ app.kubernetes.io/name: cert-manager
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "controller"
+ app.kubernetes.io/version: "v1.16.1"
+roleRef:
+ apiGroup: rbac.authorization.k8s.io
+ kind: ClusterRole
+ name: cert-manager-controller-challenges
+subjects:
+ - name: cert-manager
+ namespace: cert-manager
+ kind: ServiceAccount
+---
+# Source: cert-manager/templates/rbac.yaml
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRoleBinding
+metadata:
+ name: cert-manager-controller-ingress-shim
+ labels:
+ app: cert-manager
+ app.kubernetes.io/name: cert-manager
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "controller"
+ app.kubernetes.io/version: "v1.16.1"
+roleRef:
+ apiGroup: rbac.authorization.k8s.io
+ kind: ClusterRole
+ name: cert-manager-controller-ingress-shim
+subjects:
+ - name: cert-manager
+ namespace: cert-manager
+ kind: ServiceAccount
+---
+# Source: cert-manager/templates/rbac.yaml
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRoleBinding
+metadata:
+ name: cert-manager-controller-approve:cert-manager-io
+ labels:
+ app: cert-manager
+ app.kubernetes.io/name: cert-manager
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "cert-manager"
+ app.kubernetes.io/version: "v1.16.1"
+roleRef:
+ apiGroup: rbac.authorization.k8s.io
+ kind: ClusterRole
+ name: cert-manager-controller-approve:cert-manager-io
+subjects:
+ - name: cert-manager
+ namespace: cert-manager
+ kind: ServiceAccount
+---
+# Source: cert-manager/templates/rbac.yaml
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRoleBinding
+metadata:
+ name: cert-manager-controller-certificatesigningrequests
+ labels:
+ app: cert-manager
+ app.kubernetes.io/name: cert-manager
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "cert-manager"
+ app.kubernetes.io/version: "v1.16.1"
+roleRef:
+ apiGroup: rbac.authorization.k8s.io
+ kind: ClusterRole
+ name: cert-manager-controller-certificatesigningrequests
+subjects:
+ - name: cert-manager
+ namespace: cert-manager
+ kind: ServiceAccount
+---
+# Source: cert-manager/templates/webhook-rbac.yaml
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRoleBinding
+metadata:
+ name: cert-manager-webhook:subjectaccessreviews
+ labels:
+ app: webhook
+ app.kubernetes.io/name: webhook
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "webhook"
+ app.kubernetes.io/version: "v1.16.1"
+roleRef:
+ apiGroup: rbac.authorization.k8s.io
+ kind: ClusterRole
+ name: cert-manager-webhook:subjectaccessreviews
+subjects:
+- kind: ServiceAccount
+ name: cert-manager-webhook
+ namespace: cert-manager
+---
+# Source: cert-manager/templates/cainjector-rbac.yaml
+# leader election rules
+apiVersion: rbac.authorization.k8s.io/v1
+kind: Role
+metadata:
+ name: cert-manager-cainjector:leaderelection
+ namespace: kube-system
+ labels:
+ app: cainjector
+ app.kubernetes.io/name: cainjector
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "cainjector"
+ app.kubernetes.io/version: "v1.16.1"
+rules:
+ # Used for leader election by the controller
+ # cert-manager-cainjector-leader-election is used by the CertificateBased injector controller
+ # see cmd/cainjector/start.go#L113
+ # cert-manager-cainjector-leader-election-core is used by the SecretBased injector controller
+ # see cmd/cainjector/start.go#L137
+ - apiGroups: ["coordination.k8s.io"]
+ resources: ["leases"]
+ resourceNames: ["cert-manager-cainjector-leader-election", "cert-manager-cainjector-leader-election-core"]
+ verbs: ["get", "update", "patch"]
+ - apiGroups: ["coordination.k8s.io"]
+ resources: ["leases"]
+ verbs: ["create"]
+---
+# Source: cert-manager/templates/rbac.yaml
+apiVersion: rbac.authorization.k8s.io/v1
+kind: Role
+metadata:
+ name: cert-manager:leaderelection
+ namespace: kube-system
+ labels:
+ app: cert-manager
+ app.kubernetes.io/name: cert-manager
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "controller"
+ app.kubernetes.io/version: "v1.16.1"
+rules:
+ - apiGroups: ["coordination.k8s.io"]
+ resources: ["leases"]
+ resourceNames: ["cert-manager-controller"]
+ verbs: ["get", "update", "patch"]
+ - apiGroups: ["coordination.k8s.io"]
+ resources: ["leases"]
+ verbs: ["create"]
+---
+# Source: cert-manager/templates/rbac.yaml
+apiVersion: rbac.authorization.k8s.io/v1
+kind: Role
+metadata:
+ name: cert-manager-tokenrequest
+ namespace: cert-manager
+ labels:
+ app: cert-manager
+ app.kubernetes.io/name: cert-manager
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "controller"
+ app.kubernetes.io/version: "v1.16.1"
+rules:
+ - apiGroups: [""]
+ resources: ["serviceaccounts/token"]
+ resourceNames: ["cert-manager"]
+ verbs: ["create"]
+---
+# Source: cert-manager/templates/webhook-rbac.yaml
+apiVersion: rbac.authorization.k8s.io/v1
+kind: Role
+metadata:
+ name: cert-manager-webhook:dynamic-serving
+ namespace: cert-manager
+ labels:
+ app: webhook
+ app.kubernetes.io/name: webhook
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "webhook"
+ app.kubernetes.io/version: "v1.16.1"
+rules:
+- apiGroups: [""]
+ resources: ["secrets"]
+ resourceNames:
+ - 'cert-manager-webhook-ca'
+ verbs: ["get", "list", "watch", "update"]
+# It's not possible to grant CREATE permission on a single resourceName.
+- apiGroups: [""]
+ resources: ["secrets"]
+ verbs: ["create"]
+---
+# Source: cert-manager/templates/cainjector-rbac.yaml
+# grant cert-manager permission to manage the leaderelection configmap in the
+# leader election namespace
+apiVersion: rbac.authorization.k8s.io/v1
+kind: RoleBinding
+metadata:
+ name: cert-manager-cainjector:leaderelection
+ namespace: kube-system
+ labels:
+ app: cainjector
+ app.kubernetes.io/name: cainjector
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "cainjector"
+ app.kubernetes.io/version: "v1.16.1"
+roleRef:
+ apiGroup: rbac.authorization.k8s.io
+ kind: Role
+ name: cert-manager-cainjector:leaderelection
+subjects:
+ - kind: ServiceAccount
+ name: cert-manager-cainjector
+ namespace: cert-manager
+---
+# Source: cert-manager/templates/rbac.yaml
+# grant cert-manager permission to manage the leaderelection configmap in the
+# leader election namespace
+apiVersion: rbac.authorization.k8s.io/v1
+kind: RoleBinding
+metadata:
+ name: cert-manager:leaderelection
+ namespace: kube-system
+ labels:
+ app: cert-manager
+ app.kubernetes.io/name: cert-manager
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "controller"
+ app.kubernetes.io/version: "v1.16.1"
+roleRef:
+ apiGroup: rbac.authorization.k8s.io
+ kind: Role
+ name: cert-manager:leaderelection
+subjects:
+ - kind: ServiceAccount
+ name: cert-manager
+ namespace: cert-manager
+---
+# Source: cert-manager/templates/rbac.yaml
+# grant cert-manager permission to create tokens for the serviceaccount
+apiVersion: rbac.authorization.k8s.io/v1
+kind: RoleBinding
+metadata:
+ name: cert-manager-cert-manager-tokenrequest
+ namespace: cert-manager
+ labels:
+ app: cert-manager
+ app.kubernetes.io/name: cert-manager
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "controller"
+ app.kubernetes.io/version: "v1.16.1"
+roleRef:
+ apiGroup: rbac.authorization.k8s.io
+ kind: Role
+ name: cert-manager-tokenrequest
+subjects:
+ - kind: ServiceAccount
+ name: cert-manager
+ namespace: cert-manager
+---
+# Source: cert-manager/templates/webhook-rbac.yaml
+apiVersion: rbac.authorization.k8s.io/v1
+kind: RoleBinding
+metadata:
+ name: cert-manager-webhook:dynamic-serving
+ namespace: cert-manager
+ labels:
+ app: webhook
+ app.kubernetes.io/name: webhook
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "webhook"
+ app.kubernetes.io/version: "v1.16.1"
+roleRef:
+ apiGroup: rbac.authorization.k8s.io
+ kind: Role
+ name: cert-manager-webhook:dynamic-serving
+subjects:
+- kind: ServiceAccount
+ name: cert-manager-webhook
+ namespace: cert-manager
+---
+# Source: cert-manager/templates/cainjector-service.yaml
+apiVersion: v1
+kind: Service
+metadata:
+ name: cert-manager-cainjector
+ namespace: cert-manager
+ labels:
+ app: cainjector
+ app.kubernetes.io/name: cainjector
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "cainjector"
+ app.kubernetes.io/version: "v1.16.1"
+spec:
+ type: ClusterIP
+ ports:
+ - protocol: TCP
+ port: 9402
+ name: http-metrics
+ selector:
+ app.kubernetes.io/name: cainjector
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "cainjector"
+---
+# Source: cert-manager/templates/service.yaml
+apiVersion: v1
+kind: Service
+metadata:
+ name: cert-manager
+ namespace: cert-manager
+ labels:
+ app: cert-manager
+ app.kubernetes.io/name: cert-manager
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "controller"
+ app.kubernetes.io/version: "v1.16.1"
+spec:
+ type: ClusterIP
+ ports:
+ - protocol: TCP
+ port: 9402
+ name: tcp-prometheus-servicemonitor
+ targetPort: 9402
+ selector:
+ app.kubernetes.io/name: cert-manager
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "controller"
+---
+# Source: cert-manager/templates/webhook-service.yaml
+apiVersion: v1
+kind: Service
+metadata:
+ name: cert-manager-webhook
+ namespace: cert-manager
+ labels:
+ app: webhook
+ app.kubernetes.io/name: webhook
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "webhook"
+ app.kubernetes.io/version: "v1.16.1"
+spec:
+ type: ClusterIP
+ ports:
+ - name: https
+ port: 443
+ protocol: TCP
+ targetPort: "https"
+ - name: metrics
+ port: 9402
+ protocol: TCP
+ targetPort: "http-metrics"
+ selector:
+ app.kubernetes.io/name: webhook
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "webhook"
+---
+# Source: cert-manager/templates/cainjector-deployment.yaml
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+ name: cert-manager-cainjector
+ namespace: cert-manager
+ labels:
+ app: cainjector
+ app.kubernetes.io/name: cainjector
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "cainjector"
+ app.kubernetes.io/version: "v1.16.1"
+spec:
+ replicas: 1
+ selector:
+ matchLabels:
+ app.kubernetes.io/name: cainjector
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "cainjector"
+ template:
+ metadata:
+ labels:
+ app: cainjector
+ app.kubernetes.io/name: cainjector
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "cainjector"
+ app.kubernetes.io/version: "v1.16.1"
+ annotations:
+ prometheus.io/path: "/metrics"
+ prometheus.io/scrape: 'true'
+ prometheus.io/port: '9402'
+ spec:
+ serviceAccountName: cert-manager-cainjector
+ enableServiceLinks: false
+ securityContext:
+ runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
+ containers:
+ - name: cert-manager-cainjector
+ image: "quay.io/jetstack/cert-manager-cainjector:v1.16.1"
+ imagePullPolicy: IfNotPresent
+ args:
+ - --v=2
+ - --leader-election-namespace=kube-system
+ ports:
+ - containerPort: 9402
+ name: http-metrics
+ protocol: TCP
+ env:
+ - name: POD_NAMESPACE
+ valueFrom:
+ fieldRef:
+ fieldPath: metadata.namespace
+ securityContext:
+ allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ readOnlyRootFilesystem: true
+ nodeSelector:
+ kubernetes.io/os: linux
+---
+# Source: cert-manager/templates/deployment.yaml
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+ name: cert-manager
+ namespace: cert-manager
+ labels:
+ app: cert-manager
+ app.kubernetes.io/name: cert-manager
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "controller"
+ app.kubernetes.io/version: "v1.16.1"
+spec:
+ replicas: 1
+ selector:
+ matchLabels:
+ app.kubernetes.io/name: cert-manager
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "controller"
+ template:
+ metadata:
+ labels:
+ app: cert-manager
+ app.kubernetes.io/name: cert-manager
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "controller"
+ app.kubernetes.io/version: "v1.16.1"
+ annotations:
+ prometheus.io/path: "/metrics"
+ prometheus.io/scrape: 'true'
+ prometheus.io/port: '9402'
+ spec:
+ serviceAccountName: cert-manager
+ enableServiceLinks: false
+ securityContext:
+ runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
+ containers:
+ - name: cert-manager-controller
+ image: "quay.io/jetstack/cert-manager-controller:v1.16.1"
+ imagePullPolicy: IfNotPresent
+ args:
+ - --v=2
+ - --cluster-resource-namespace=$(POD_NAMESPACE)
+ - --leader-election-namespace=kube-system
+ - --acme-http01-solver-image=quay.io/jetstack/cert-manager-acmesolver:v1.16.1
+ - --max-concurrent-challenges=60
+ ports:
+ - containerPort: 9402
+ name: http-metrics
+ protocol: TCP
+ - containerPort: 9403
+ name: http-healthz
+ protocol: TCP
+ securityContext:
+ allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ readOnlyRootFilesystem: true
+ env:
+ - name: POD_NAMESPACE
+ valueFrom:
+ fieldRef:
+ fieldPath: metadata.namespace
+ # LivenessProbe settings are based on those used for the Kubernetes
+ # controller-manager. See:
+ # https://github.com/kubernetes/kubernetes/blob/806b30170c61a38fedd54cc9ede4cd6275a1ad3b/cmd/kubeadm/app/util/staticpod/utils.go#L241-L245
+ livenessProbe:
+ httpGet:
+ port: http-healthz
+ path: /livez
+ scheme: HTTP
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ timeoutSeconds: 15
+ successThreshold: 1
+ failureThreshold: 8
+ nodeSelector:
+ kubernetes.io/os: linux
+---
+# Source: cert-manager/templates/webhook-deployment.yaml
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+ name: cert-manager-webhook
+ namespace: cert-manager
+ labels:
+ app: webhook
+ app.kubernetes.io/name: webhook
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "webhook"
+ app.kubernetes.io/version: "v1.16.1"
+spec:
+ replicas: 1
+ selector:
+ matchLabels:
+ app.kubernetes.io/name: webhook
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "webhook"
+ template:
+ metadata:
+ labels:
+ app: webhook
+ app.kubernetes.io/name: webhook
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "webhook"
+ app.kubernetes.io/version: "v1.16.1"
+ annotations:
+ prometheus.io/path: "/metrics"
+ prometheus.io/scrape: 'true'
+ prometheus.io/port: '9402'
+ spec:
+ serviceAccountName: cert-manager-webhook
+ enableServiceLinks: false
+ securityContext:
+ runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
+ containers:
+ - name: cert-manager-webhook
+ image: "quay.io/jetstack/cert-manager-webhook:v1.16.1"
+ imagePullPolicy: IfNotPresent
+ args:
+ - --v=2
+ - --secure-port=10250
+ - --dynamic-serving-ca-secret-namespace=$(POD_NAMESPACE)
+ - --dynamic-serving-ca-secret-name=cert-manager-webhook-ca
+ - --dynamic-serving-dns-names=cert-manager-webhook
+ - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE)
+ - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE).svc
+
+ ports:
+ - name: https
+ protocol: TCP
+ containerPort: 10250
+ - name: healthcheck
+ protocol: TCP
+ containerPort: 6080
+ - containerPort: 9402
+ name: http-metrics
+ protocol: TCP
+ livenessProbe:
+ httpGet:
+ path: /livez
+ port: 6080
+ scheme: HTTP
+ initialDelaySeconds: 60
+ periodSeconds: 10
+ timeoutSeconds: 1
+ successThreshold: 1
+ failureThreshold: 3
+ readinessProbe:
+ httpGet:
+ path: /healthz
+ port: 6080
+ scheme: HTTP
+ initialDelaySeconds: 5
+ periodSeconds: 5
+ timeoutSeconds: 1
+ successThreshold: 1
+ failureThreshold: 3
+ securityContext:
+ allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ readOnlyRootFilesystem: true
+ env:
+ - name: POD_NAMESPACE
+ valueFrom:
+ fieldRef:
+ fieldPath: metadata.namespace
+ nodeSelector:
+ kubernetes.io/os: linux
+---
+# Source: cert-manager/templates/crds.yaml
+#
+# START crd
+---
+# Source: cert-manager/templates/crds.yaml
+# START crd
+---
+# Source: cert-manager/templates/crds.yaml
+# START crd
+---
+# Source: cert-manager/templates/crds.yaml
+# START crd
+---
+# Source: cert-manager/templates/crds.yaml
+# START crd
+---
+# Source: cert-manager/templates/crds.yaml
+# START crd
+---
+# Source: cert-manager/templates/webhook-mutating-webhook.yaml
+apiVersion: admissionregistration.k8s.io/v1
+kind: MutatingWebhookConfiguration
+metadata:
+ name: cert-manager-webhook
+ labels:
+ app: webhook
+ app.kubernetes.io/name: webhook
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "webhook"
+ app.kubernetes.io/version: "v1.16.1"
+ annotations:
+ cert-manager.io/inject-ca-from-secret: "cert-manager/cert-manager-webhook-ca"
+webhooks:
+ - name: webhook.cert-manager.io
+ rules:
+ - apiGroups:
+ - "cert-manager.io"
+ apiVersions:
+ - "v1"
+ operations:
+ - CREATE
+ resources:
+ - "certificaterequests"
+ admissionReviewVersions: ["v1"]
+ # This webhook only accepts v1 cert-manager resources.
+ # Equivalent matchPolicy ensures that non-v1 resource requests are sent to
+ # this webhook (after the resources have been converted to v1).
+ matchPolicy: Equivalent
+ timeoutSeconds: 30
+ failurePolicy: Fail
+ # Only include 'sideEffects' field in Kubernetes 1.12+
+ sideEffects: None
+ clientConfig:
+ service:
+ name: cert-manager-webhook
+ namespace: cert-manager
+ path: /mutate
+---
+# Source: cert-manager/templates/webhook-validating-webhook.yaml
+apiVersion: admissionregistration.k8s.io/v1
+kind: ValidatingWebhookConfiguration
+metadata:
+ name: cert-manager-webhook
+ labels:
+ app: webhook
+ app.kubernetes.io/name: webhook
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "webhook"
+ app.kubernetes.io/version: "v1.16.1"
+ annotations:
+ cert-manager.io/inject-ca-from-secret: "cert-manager/cert-manager-webhook-ca"
+webhooks:
+ - name: webhook.cert-manager.io
+ namespaceSelector:
+ matchExpressions:
+ - key: cert-manager.io/disable-validation
+ operator: NotIn
+ values:
+ - "true"
+ rules:
+ - apiGroups:
+ - "cert-manager.io"
+ - "acme.cert-manager.io"
+ apiVersions:
+ - "v1"
+ operations:
+ - CREATE
+ - UPDATE
+ resources:
+ - "*/*"
+ admissionReviewVersions: ["v1"]
+ # This webhook only accepts v1 cert-manager resources.
+ # Equivalent matchPolicy ensures that non-v1 resource requests are sent to
+ # this webhook (after the resources have been converted to v1).
+ matchPolicy: Equivalent
+ timeoutSeconds: 30
+ failurePolicy: Fail
+ sideEffects: None
+ clientConfig:
+ service:
+ name: cert-manager-webhook
+ namespace: cert-manager
+ path: /validate
diff --git a/charts/kubeflow/common/cert-manager/cert-manager/base/cert-manager.yaml b/charts/kubeflow/common/cert-manager/cert-manager/base/cert-manager.yaml
deleted file mode 100644
index 3cbd60b..0000000
--- a/charts/kubeflow/common/cert-manager/cert-manager/base/cert-manager.yaml
+++ /dev/null
@@ -1,5837 +0,0 @@
-# Copyright 2022 The cert-manager Authors.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: Namespace
-metadata:
- name: cert-manager
----
-# Source: cert-manager/templates/crds.yaml
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- name: certificaterequests.cert-manager.io
- labels:
- app: 'cert-manager'
- app.kubernetes.io/name: 'cert-manager'
- app.kubernetes.io/instance: 'cert-manager'
- # Generated labels
- app.kubernetes.io/version: "v1.14.5"
-spec:
- group: cert-manager.io
- names:
- kind: CertificateRequest
- listKind: CertificateRequestList
- plural: certificaterequests
- shortNames:
- - cr
- - crs
- singular: certificaterequest
- categories:
- - cert-manager
- scope: Namespaced
- versions:
- - name: v1
- subresources:
- status: {}
- additionalPrinterColumns:
- - jsonPath: .status.conditions[?(@.type=="Approved")].status
- name: Approved
- type: string
- - jsonPath: .status.conditions[?(@.type=="Denied")].status
- name: Denied
- type: string
- - jsonPath: .status.conditions[?(@.type=="Ready")].status
- name: Ready
- type: string
- - jsonPath: .spec.issuerRef.name
- name: Issuer
- type: string
- - jsonPath: .spec.username
- name: Requestor
- type: string
- - jsonPath: .status.conditions[?(@.type=="Ready")].message
- name: Status
- priority: 1
- type: string
- - jsonPath: .metadata.creationTimestamp
- description: CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC.
- name: Age
- type: date
- schema:
- openAPIV3Schema:
- description: "A CertificateRequest is used to request a signed certificate from one of the configured issuers. \n All fields within the CertificateRequest's `spec` are immutable after creation. A CertificateRequest will either succeed or fail, as denoted by its `Ready` status condition and its `status.failureTime` field. \n A CertificateRequest is a one-shot resource, meaning it represents a single point in time request for a certificate and cannot be re-used."
- type: object
- properties:
- apiVersion:
- description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
- type: string
- kind:
- description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
- type: string
- metadata:
- type: object
- spec:
- description: Specification of the desired state of the CertificateRequest resource. https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
- type: object
- required:
- - issuerRef
- - request
- properties:
- duration:
- description: Requested 'duration' (i.e. lifetime) of the Certificate. Note that the issuer may choose to ignore the requested duration, just like any other requested attribute.
- type: string
- extra:
- description: Extra contains extra attributes of the user that created the CertificateRequest. Populated by the cert-manager webhook on creation and immutable.
- type: object
- additionalProperties:
- type: array
- items:
- type: string
- groups:
- description: Groups contains group membership of the user that created the CertificateRequest. Populated by the cert-manager webhook on creation and immutable.
- type: array
- items:
- type: string
- x-kubernetes-list-type: atomic
- isCA:
- description: "Requested basic constraints isCA value. Note that the issuer may choose to ignore the requested isCA value, just like any other requested attribute. \n NOTE: If the CSR in the `Request` field has a BasicConstraints extension, it must have the same isCA value as specified here. \n If true, this will automatically add the `cert sign` usage to the list of requested `usages`."
- type: boolean
- issuerRef:
- description: "Reference to the issuer responsible for issuing the certificate. If the issuer is namespace-scoped, it must be in the same namespace as the Certificate. If the issuer is cluster-scoped, it can be used from any namespace. \n The `name` field of the reference must always be specified."
- type: object
- required:
- - name
- properties:
- group:
- description: Group of the resource being referred to.
- type: string
- kind:
- description: Kind of the resource being referred to.
- type: string
- name:
- description: Name of the resource being referred to.
- type: string
- request:
- description: "The PEM-encoded X.509 certificate signing request to be submitted to the issuer for signing. \n If the CSR has a BasicConstraints extension, its isCA attribute must match the `isCA` value of this CertificateRequest. If the CSR has a KeyUsage extension, its key usages must match the key usages in the `usages` field of this CertificateRequest. If the CSR has a ExtKeyUsage extension, its extended key usages must match the extended key usages in the `usages` field of this CertificateRequest."
- type: string
- format: byte
- uid:
- description: UID contains the uid of the user that created the CertificateRequest. Populated by the cert-manager webhook on creation and immutable.
- type: string
- usages:
- description: "Requested key usages and extended key usages. \n NOTE: If the CSR in the `Request` field has uses the KeyUsage or ExtKeyUsage extension, these extensions must have the same values as specified here without any additional values. \n If unset, defaults to `digital signature` and `key encipherment`."
- type: array
- items:
- description: "KeyUsage specifies valid usage contexts for keys. See: https://tools.ietf.org/html/rfc5280#section-4.2.1.3 https://tools.ietf.org/html/rfc5280#section-4.2.1.12 \n Valid KeyUsage values are as follows: \"signing\", \"digital signature\", \"content commitment\", \"key encipherment\", \"key agreement\", \"data encipherment\", \"cert sign\", \"crl sign\", \"encipher only\", \"decipher only\", \"any\", \"server auth\", \"client auth\", \"code signing\", \"email protection\", \"s/mime\", \"ipsec end system\", \"ipsec tunnel\", \"ipsec user\", \"timestamping\", \"ocsp signing\", \"microsoft sgc\", \"netscape sgc\""
- type: string
- enum:
- - signing
- - digital signature
- - content commitment
- - key encipherment
- - key agreement
- - data encipherment
- - cert sign
- - crl sign
- - encipher only
- - decipher only
- - any
- - server auth
- - client auth
- - code signing
- - email protection
- - s/mime
- - ipsec end system
- - ipsec tunnel
- - ipsec user
- - timestamping
- - ocsp signing
- - microsoft sgc
- - netscape sgc
- username:
- description: Username contains the name of the user that created the CertificateRequest. Populated by the cert-manager webhook on creation and immutable.
- type: string
- status:
- description: 'Status of the CertificateRequest. This is set and managed automatically. Read-only. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status'
- type: object
- properties:
- ca:
- description: The PEM encoded X.509 certificate of the signer, also known as the CA (Certificate Authority). This is set on a best-effort basis by different issuers. If not set, the CA is assumed to be unknown/not available.
- type: string
- format: byte
- certificate:
- description: The PEM encoded X.509 certificate resulting from the certificate signing request. If not set, the CertificateRequest has either not been completed or has failed. More information on failure can be found by checking the `conditions` field.
- type: string
- format: byte
- conditions:
- description: List of status conditions to indicate the status of a CertificateRequest. Known condition types are `Ready`, `InvalidRequest`, `Approved` and `Denied`.
- type: array
- items:
- description: CertificateRequestCondition contains condition information for a CertificateRequest.
- type: object
- required:
- - status
- - type
- properties:
- lastTransitionTime:
- description: LastTransitionTime is the timestamp corresponding to the last status change of this condition.
- type: string
- format: date-time
- message:
- description: Message is a human readable description of the details of the last transition, complementing reason.
- type: string
- reason:
- description: Reason is a brief machine readable explanation for the condition's last transition.
- type: string
- status:
- description: Status of the condition, one of (`True`, `False`, `Unknown`).
- type: string
- enum:
- - "True"
- - "False"
- - Unknown
- type:
- description: Type of the condition, known values are (`Ready`, `InvalidRequest`, `Approved`, `Denied`).
- type: string
- x-kubernetes-list-map-keys:
- - type
- x-kubernetes-list-type: map
- failureTime:
- description: FailureTime stores the time that this CertificateRequest failed. This is used to influence garbage collection and back-off.
- type: string
- format: date-time
- served: true
- storage: true
----
-# Source: cert-manager/templates/crds.yaml
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- name: certificates.cert-manager.io
- labels:
- app: 'cert-manager'
- app.kubernetes.io/name: 'cert-manager'
- app.kubernetes.io/instance: 'cert-manager'
- # Generated labels
- app.kubernetes.io/version: "v1.14.5"
-spec:
- group: cert-manager.io
- names:
- kind: Certificate
- listKind: CertificateList
- plural: certificates
- shortNames:
- - cert
- - certs
- singular: certificate
- categories:
- - cert-manager
- scope: Namespaced
- versions:
- - name: v1
- subresources:
- status: {}
- additionalPrinterColumns:
- - jsonPath: .status.conditions[?(@.type=="Ready")].status
- name: Ready
- type: string
- - jsonPath: .spec.secretName
- name: Secret
- type: string
- - jsonPath: .spec.issuerRef.name
- name: Issuer
- priority: 1
- type: string
- - jsonPath: .status.conditions[?(@.type=="Ready")].message
- name: Status
- priority: 1
- type: string
- - jsonPath: .metadata.creationTimestamp
- description: CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC.
- name: Age
- type: date
- schema:
- openAPIV3Schema:
- description: "A Certificate resource should be created to ensure an up to date and signed X.509 certificate is stored in the Kubernetes Secret resource named in `spec.secretName`. \n The stored certificate will be renewed before it expires (as configured by `spec.renewBefore`)."
- type: object
- properties:
- apiVersion:
- description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
- type: string
- kind:
- description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
- type: string
- metadata:
- type: object
- spec:
- description: Specification of the desired state of the Certificate resource. https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
- type: object
- required:
- - issuerRef
- - secretName
- properties:
- additionalOutputFormats:
- description: "Defines extra output formats of the private key and signed certificate chain to be written to this Certificate's target Secret. \n This is an Alpha Feature and is only enabled with the `--feature-gates=AdditionalCertificateOutputFormats=true` option set on both the controller and webhook components."
- type: array
- items:
- description: CertificateAdditionalOutputFormat defines an additional output format of a Certificate resource. These contain supplementary data formats of the signed certificate chain and paired private key.
- type: object
- required:
- - type
- properties:
- type:
- description: Type is the name of the format type that should be written to the Certificate's target Secret.
- type: string
- enum:
- - DER
- - CombinedPEM
- commonName:
- description: "Requested common name X509 certificate subject attribute. More info: https://datatracker.ietf.org/doc/html/rfc5280#section-4.1.2.6 NOTE: TLS clients will ignore this value when any subject alternative name is set (see https://tools.ietf.org/html/rfc6125#section-6.4.4). \n Should have a length of 64 characters or fewer to avoid generating invalid CSRs. Cannot be set if the `literalSubject` field is set."
- type: string
- dnsNames:
- description: Requested DNS subject alternative names.
- type: array
- items:
- type: string
- duration:
- description: "Requested 'duration' (i.e. lifetime) of the Certificate. Note that the issuer may choose to ignore the requested duration, just like any other requested attribute. \n If unset, this defaults to 90 days. Minimum accepted duration is 1 hour. Value must be in units accepted by Go time.ParseDuration https://golang.org/pkg/time/#ParseDuration."
- type: string
- emailAddresses:
- description: Requested email subject alternative names.
- type: array
- items:
- type: string
- encodeUsagesInRequest:
- description: "Whether the KeyUsage and ExtKeyUsage extensions should be set in the encoded CSR. \n This option defaults to true, and should only be disabled if the target issuer does not support CSRs with these X509 KeyUsage/ ExtKeyUsage extensions."
- type: boolean
- ipAddresses:
- description: Requested IP address subject alternative names.
- type: array
- items:
- type: string
- isCA:
- description: "Requested basic constraints isCA value. The isCA value is used to set the `isCA` field on the created CertificateRequest resources. Note that the issuer may choose to ignore the requested isCA value, just like any other requested attribute. \n If true, this will automatically add the `cert sign` usage to the list of requested `usages`."
- type: boolean
- issuerRef:
- description: "Reference to the issuer responsible for issuing the certificate. If the issuer is namespace-scoped, it must be in the same namespace as the Certificate. If the issuer is cluster-scoped, it can be used from any namespace. \n The `name` field of the reference must always be specified."
- type: object
- required:
- - name
- properties:
- group:
- description: Group of the resource being referred to.
- type: string
- kind:
- description: Kind of the resource being referred to.
- type: string
- name:
- description: Name of the resource being referred to.
- type: string
- keystores:
- description: Additional keystore output formats to be stored in the Certificate's Secret.
- type: object
- properties:
- jks:
- description: JKS configures options for storing a JKS keystore in the `spec.secretName` Secret resource.
- type: object
- required:
- - create
- - passwordSecretRef
- properties:
- create:
- description: Create enables JKS keystore creation for the Certificate. If true, a file named `keystore.jks` will be created in the target Secret resource, encrypted using the password stored in `passwordSecretRef`. The keystore file will be updated immediately. If the issuer provided a CA certificate, a file named `truststore.jks` will also be created in the target Secret resource, encrypted using the password stored in `passwordSecretRef` containing the issuing Certificate Authority
- type: boolean
- passwordSecretRef:
- description: PasswordSecretRef is a reference to a key in a Secret resource containing the password used to encrypt the JKS keystore.
- type: object
- required:
- - name
- properties:
- key:
- description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
- type: string
- name:
- description: 'Name of the resource being referred to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- pkcs12:
- description: PKCS12 configures options for storing a PKCS12 keystore in the `spec.secretName` Secret resource.
- type: object
- required:
- - create
- - passwordSecretRef
- properties:
- create:
- description: Create enables PKCS12 keystore creation for the Certificate. If true, a file named `keystore.p12` will be created in the target Secret resource, encrypted using the password stored in `passwordSecretRef`. The keystore file will be updated immediately. If the issuer provided a CA certificate, a file named `truststore.p12` will also be created in the target Secret resource, encrypted using the password stored in `passwordSecretRef` containing the issuing Certificate Authority
- type: boolean
- passwordSecretRef:
- description: PasswordSecretRef is a reference to a key in a Secret resource containing the password used to encrypt the PKCS12 keystore.
- type: object
- required:
- - name
- properties:
- key:
- description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
- type: string
- name:
- description: 'Name of the resource being referred to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- profile:
- description: "Profile specifies the key and certificate encryption algorithms and the HMAC algorithm used to create the PKCS12 keystore. Default value is `LegacyRC2` for backward compatibility. \n If provided, allowed values are: `LegacyRC2`: Deprecated. Not supported by default in OpenSSL 3 or Java 20. `LegacyDES`: Less secure algorithm. Use this option for maximal compatibility. `Modern2023`: Secure algorithm. Use this option in case you have to always use secure algorithms (eg. because of company policy). Please note that the security of the algorithm is not that important in reality, because the unencrypted certificate and private key are also stored in the Secret."
- type: string
- enum:
- - LegacyRC2
- - LegacyDES
- - Modern2023
- literalSubject:
- description: "Requested X.509 certificate subject, represented using the LDAP \"String Representation of a Distinguished Name\" [1]. Important: the LDAP string format also specifies the order of the attributes in the subject, this is important when issuing certs for LDAP authentication. Example: `CN=foo,DC=corp,DC=example,DC=com` More info [1]: https://datatracker.ietf.org/doc/html/rfc4514 More info: https://github.com/cert-manager/cert-manager/issues/3203 More info: https://github.com/cert-manager/cert-manager/issues/4424 \n Cannot be set if the `subject` or `commonName` field is set. This is an Alpha Feature and is only enabled with the `--feature-gates=LiteralCertificateSubject=true` option set on both the controller and webhook components."
- type: string
- nameConstraints:
- description: "x.509 certificate NameConstraint extension which MUST NOT be used in a non-CA certificate. More Info: https://datatracker.ietf.org/doc/html/rfc5280#section-4.2.1.10 \n This is an Alpha Feature and is only enabled with the `--feature-gates=NameConstraints=true` option set on both the controller and webhook components."
- type: object
- properties:
- critical:
- description: if true then the name constraints are marked critical.
- type: boolean
- excluded:
- description: Excluded contains the constraints which must be disallowed. Any name matching a restriction in the excluded field is invalid regardless of information appearing in the permitted
- type: object
- properties:
- dnsDomains:
- description: DNSDomains is a list of DNS domains that are permitted or excluded.
- type: array
- items:
- type: string
- emailAddresses:
- description: EmailAddresses is a list of Email Addresses that are permitted or excluded.
- type: array
- items:
- type: string
- ipRanges:
- description: IPRanges is a list of IP Ranges that are permitted or excluded. This should be a valid CIDR notation.
- type: array
- items:
- type: string
- uriDomains:
- description: URIDomains is a list of URI domains that are permitted or excluded.
- type: array
- items:
- type: string
- permitted:
- description: Permitted contains the constraints in which the names must be located.
- type: object
- properties:
- dnsDomains:
- description: DNSDomains is a list of DNS domains that are permitted or excluded.
- type: array
- items:
- type: string
- emailAddresses:
- description: EmailAddresses is a list of Email Addresses that are permitted or excluded.
- type: array
- items:
- type: string
- ipRanges:
- description: IPRanges is a list of IP Ranges that are permitted or excluded. This should be a valid CIDR notation.
- type: array
- items:
- type: string
- uriDomains:
- description: URIDomains is a list of URI domains that are permitted or excluded.
- type: array
- items:
- type: string
- otherNames:
- description: '`otherNames` is an escape hatch for SAN that allows any type. We currently restrict the support to string like otherNames, cf RFC 5280 p 37 Any UTF8 String valued otherName can be passed with by setting the keys oid: x.x.x.x and UTF8Value: somevalue for `otherName`. Most commonly this would be UPN set with oid: 1.3.6.1.4.1.311.20.2.3 You should ensure that any OID passed is valid for the UTF8String type as we do not explicitly validate this.'
- type: array
- items:
- type: object
- properties:
- oid:
- description: OID is the object identifier for the otherName SAN. The object identifier must be expressed as a dotted string, for example, "1.2.840.113556.1.4.221".
- type: string
- utf8Value:
- description: utf8Value is the string value of the otherName SAN. The utf8Value accepts any valid UTF8 string to set as value for the otherName SAN.
- type: string
- privateKey:
- description: Private key options. These include the key algorithm and size, the used encoding and the rotation policy.
- type: object
- properties:
- algorithm:
- description: "Algorithm is the private key algorithm of the corresponding private key for this certificate. \n If provided, allowed values are either `RSA`, `ECDSA` or `Ed25519`. If `algorithm` is specified and `size` is not provided, key size of 2048 will be used for `RSA` key algorithm and key size of 256 will be used for `ECDSA` key algorithm. key size is ignored when using the `Ed25519` key algorithm."
- type: string
- enum:
- - RSA
- - ECDSA
- - Ed25519
- encoding:
- description: "The private key cryptography standards (PKCS) encoding for this certificate's private key to be encoded in. \n If provided, allowed values are `PKCS1` and `PKCS8` standing for PKCS#1 and PKCS#8, respectively. Defaults to `PKCS1` if not specified."
- type: string
- enum:
- - PKCS1
- - PKCS8
- rotationPolicy:
- description: "RotationPolicy controls how private keys should be regenerated when a re-issuance is being processed. \n If set to `Never`, a private key will only be generated if one does not already exist in the target `spec.secretName`. If one does exists but it does not have the correct algorithm or size, a warning will be raised to await user intervention. If set to `Always`, a private key matching the specified requirements will be generated whenever a re-issuance occurs. Default is `Never` for backward compatibility."
- type: string
- enum:
- - Never
- - Always
- size:
- description: "Size is the key bit size of the corresponding private key for this certificate. \n If `algorithm` is set to `RSA`, valid values are `2048`, `4096` or `8192`, and will default to `2048` if not specified. If `algorithm` is set to `ECDSA`, valid values are `256`, `384` or `521`, and will default to `256` if not specified. If `algorithm` is set to `Ed25519`, Size is ignored. No other values are allowed."
- type: integer
- renewBefore:
- description: "How long before the currently issued certificate's expiry cert-manager should renew the certificate. For example, if a certificate is valid for 60 minutes, and `renewBefore=10m`, cert-manager will begin to attempt to renew the certificate 50 minutes after it was issued (i.e. when there are 10 minutes remaining until the certificate is no longer valid). \n NOTE: The actual lifetime of the issued certificate is used to determine the renewal time. If an issuer returns a certificate with a different lifetime than the one requested, cert-manager will use the lifetime of the issued certificate. \n If unset, this defaults to 1/3 of the issued certificate's lifetime. Minimum accepted value is 5 minutes. Value must be in units accepted by Go time.ParseDuration https://golang.org/pkg/time/#ParseDuration."
- type: string
- revisionHistoryLimit:
- description: "The maximum number of CertificateRequest revisions that are maintained in the Certificate's history. Each revision represents a single `CertificateRequest` created by this Certificate, either when it was created, renewed, or Spec was changed. Revisions will be removed by oldest first if the number of revisions exceeds this number. \n If set, revisionHistoryLimit must be a value of `1` or greater. If unset (`nil`), revisions will not be garbage collected. Default value is `nil`."
- type: integer
- format: int32
- secretName:
- description: Name of the Secret resource that will be automatically created and managed by this Certificate resource. It will be populated with a private key and certificate, signed by the denoted issuer. The Secret resource lives in the same namespace as the Certificate resource.
- type: string
- secretTemplate:
- description: Defines annotations and labels to be copied to the Certificate's Secret. Labels and annotations on the Secret will be changed as they appear on the SecretTemplate when added or removed. SecretTemplate annotations are added in conjunction with, and cannot overwrite, the base set of annotations cert-manager sets on the Certificate's Secret.
- type: object
- properties:
- annotations:
- description: Annotations is a key value map to be copied to the target Kubernetes Secret.
- type: object
- additionalProperties:
- type: string
- labels:
- description: Labels is a key value map to be copied to the target Kubernetes Secret.
- type: object
- additionalProperties:
- type: string
- subject:
- description: "Requested set of X509 certificate subject attributes. More info: https://datatracker.ietf.org/doc/html/rfc5280#section-4.1.2.6 \n The common name attribute is specified separately in the `commonName` field. Cannot be set if the `literalSubject` field is set."
- type: object
- properties:
- countries:
- description: Countries to be used on the Certificate.
- type: array
- items:
- type: string
- localities:
- description: Cities to be used on the Certificate.
- type: array
- items:
- type: string
- organizationalUnits:
- description: Organizational Units to be used on the Certificate.
- type: array
- items:
- type: string
- organizations:
- description: Organizations to be used on the Certificate.
- type: array
- items:
- type: string
- postalCodes:
- description: Postal codes to be used on the Certificate.
- type: array
- items:
- type: string
- provinces:
- description: State/Provinces to be used on the Certificate.
- type: array
- items:
- type: string
- serialNumber:
- description: Serial number to be used on the Certificate.
- type: string
- streetAddresses:
- description: Street addresses to be used on the Certificate.
- type: array
- items:
- type: string
- uris:
- description: Requested URI subject alternative names.
- type: array
- items:
- type: string
- usages:
- description: "Requested key usages and extended key usages. These usages are used to set the `usages` field on the created CertificateRequest resources. If `encodeUsagesInRequest` is unset or set to `true`, the usages will additionally be encoded in the `request` field which contains the CSR blob. \n If unset, defaults to `digital signature` and `key encipherment`."
- type: array
- items:
- description: "KeyUsage specifies valid usage contexts for keys. See: https://tools.ietf.org/html/rfc5280#section-4.2.1.3 https://tools.ietf.org/html/rfc5280#section-4.2.1.12 \n Valid KeyUsage values are as follows: \"signing\", \"digital signature\", \"content commitment\", \"key encipherment\", \"key agreement\", \"data encipherment\", \"cert sign\", \"crl sign\", \"encipher only\", \"decipher only\", \"any\", \"server auth\", \"client auth\", \"code signing\", \"email protection\", \"s/mime\", \"ipsec end system\", \"ipsec tunnel\", \"ipsec user\", \"timestamping\", \"ocsp signing\", \"microsoft sgc\", \"netscape sgc\""
- type: string
- enum:
- - signing
- - digital signature
- - content commitment
- - key encipherment
- - key agreement
- - data encipherment
- - cert sign
- - crl sign
- - encipher only
- - decipher only
- - any
- - server auth
- - client auth
- - code signing
- - email protection
- - s/mime
- - ipsec end system
- - ipsec tunnel
- - ipsec user
- - timestamping
- - ocsp signing
- - microsoft sgc
- - netscape sgc
- status:
- description: 'Status of the Certificate. This is set and managed automatically. Read-only. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status'
- type: object
- properties:
- conditions:
- description: List of status conditions to indicate the status of certificates. Known condition types are `Ready` and `Issuing`.
- type: array
- items:
- description: CertificateCondition contains condition information for an Certificate.
- type: object
- required:
- - status
- - type
- properties:
- lastTransitionTime:
- description: LastTransitionTime is the timestamp corresponding to the last status change of this condition.
- type: string
- format: date-time
- message:
- description: Message is a human readable description of the details of the last transition, complementing reason.
- type: string
- observedGeneration:
- description: If set, this represents the .metadata.generation that the condition was set based upon. For instance, if .metadata.generation is currently 12, but the .status.condition[x].observedGeneration is 9, the condition is out of date with respect to the current state of the Certificate.
- type: integer
- format: int64
- reason:
- description: Reason is a brief machine readable explanation for the condition's last transition.
- type: string
- status:
- description: Status of the condition, one of (`True`, `False`, `Unknown`).
- type: string
- enum:
- - "True"
- - "False"
- - Unknown
- type:
- description: Type of the condition, known values are (`Ready`, `Issuing`).
- type: string
- x-kubernetes-list-map-keys:
- - type
- x-kubernetes-list-type: map
- failedIssuanceAttempts:
- description: The number of continuous failed issuance attempts up till now. This field gets removed (if set) on a successful issuance and gets set to 1 if unset and an issuance has failed. If an issuance has failed, the delay till the next issuance will be calculated using formula time.Hour * 2 ^ (failedIssuanceAttempts - 1).
- type: integer
- lastFailureTime:
- description: LastFailureTime is set only if the lastest issuance for this Certificate failed and contains the time of the failure. If an issuance has failed, the delay till the next issuance will be calculated using formula time.Hour * 2 ^ (failedIssuanceAttempts - 1). If the latest issuance has succeeded this field will be unset.
- type: string
- format: date-time
- nextPrivateKeySecretName:
- description: The name of the Secret resource containing the private key to be used for the next certificate iteration. The keymanager controller will automatically set this field if the `Issuing` condition is set to `True`. It will automatically unset this field when the Issuing condition is not set or False.
- type: string
- notAfter:
- description: The expiration time of the certificate stored in the secret named by this resource in `spec.secretName`.
- type: string
- format: date-time
- notBefore:
- description: The time after which the certificate stored in the secret named by this resource in `spec.secretName` is valid.
- type: string
- format: date-time
- renewalTime:
- description: RenewalTime is the time at which the certificate will be next renewed. If not set, no upcoming renewal is scheduled.
- type: string
- format: date-time
- revision:
- description: "The current 'revision' of the certificate as issued. \n When a CertificateRequest resource is created, it will have the `cert-manager.io/certificate-revision` set to one greater than the current value of this field. \n Upon issuance, this field will be set to the value of the annotation on the CertificateRequest resource used to issue the certificate. \n Persisting the value on the CertificateRequest resource allows the certificates controller to know whether a request is part of an old issuance or if it is part of the ongoing revision's issuance by checking if the revision value in the annotation is greater than this field."
- type: integer
- served: true
- storage: true
----
-# Source: cert-manager/templates/crds.yaml
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- name: challenges.acme.cert-manager.io
- labels:
- app: 'cert-manager'
- app.kubernetes.io/name: 'cert-manager'
- app.kubernetes.io/instance: 'cert-manager'
- # Generated labels
- app.kubernetes.io/version: "v1.14.5"
-spec:
- group: acme.cert-manager.io
- names:
- kind: Challenge
- listKind: ChallengeList
- plural: challenges
- singular: challenge
- categories:
- - cert-manager
- - cert-manager-acme
- scope: Namespaced
- versions:
- - additionalPrinterColumns:
- - jsonPath: .status.state
- name: State
- type: string
- - jsonPath: .spec.dnsName
- name: Domain
- type: string
- - jsonPath: .status.reason
- name: Reason
- priority: 1
- type: string
- - description: CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC.
- jsonPath: .metadata.creationTimestamp
- name: Age
- type: date
- name: v1
- schema:
- openAPIV3Schema:
- description: Challenge is a type to represent a Challenge request with an ACME server
- type: object
- required:
- - metadata
- - spec
- properties:
- apiVersion:
- description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
- type: string
- kind:
- description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
- type: string
- metadata:
- type: object
- spec:
- type: object
- required:
- - authorizationURL
- - dnsName
- - issuerRef
- - key
- - solver
- - token
- - type
- - url
- properties:
- authorizationURL:
- description: The URL to the ACME Authorization resource that this challenge is a part of.
- type: string
- dnsName:
- description: dnsName is the identifier that this challenge is for, e.g. example.com. If the requested DNSName is a 'wildcard', this field MUST be set to the non-wildcard domain, e.g. for `*.example.com`, it must be `example.com`.
- type: string
- issuerRef:
- description: References a properly configured ACME-type Issuer which should be used to create this Challenge. If the Issuer does not exist, processing will be retried. If the Issuer is not an 'ACME' Issuer, an error will be returned and the Challenge will be marked as failed.
- type: object
- required:
- - name
- properties:
- group:
- description: Group of the resource being referred to.
- type: string
- kind:
- description: Kind of the resource being referred to.
- type: string
- name:
- description: Name of the resource being referred to.
- type: string
- key:
- description: 'The ACME challenge key for this challenge For HTTP01 challenges, this is the value that must be responded with to complete the HTTP01 challenge in the format: `.`. For DNS01 challenges, this is the base64 encoded SHA256 sum of the `.` text that must be set as the TXT record content.'
- type: string
- solver:
- description: Contains the domain solving configuration that should be used to solve this challenge resource.
- type: object
- properties:
- dns01:
- description: Configures cert-manager to attempt to complete authorizations by performing the DNS01 challenge flow.
- type: object
- properties:
- acmeDNS:
- description: Use the 'ACME DNS' (https://github.com/joohoi/acme-dns) API to manage DNS01 challenge records.
- type: object
- required:
- - accountSecretRef
- - host
- properties:
- accountSecretRef:
- description: A reference to a specific 'key' within a Secret resource. In some instances, `key` is a required field.
- type: object
- required:
- - name
- properties:
- key:
- description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
- type: string
- name:
- description: 'Name of the resource being referred to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- host:
- type: string
- akamai:
- description: Use the Akamai DNS zone management API to manage DNS01 challenge records.
- type: object
- required:
- - accessTokenSecretRef
- - clientSecretSecretRef
- - clientTokenSecretRef
- - serviceConsumerDomain
- properties:
- accessTokenSecretRef:
- description: A reference to a specific 'key' within a Secret resource. In some instances, `key` is a required field.
- type: object
- required:
- - name
- properties:
- key:
- description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
- type: string
- name:
- description: 'Name of the resource being referred to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- clientSecretSecretRef:
- description: A reference to a specific 'key' within a Secret resource. In some instances, `key` is a required field.
- type: object
- required:
- - name
- properties:
- key:
- description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
- type: string
- name:
- description: 'Name of the resource being referred to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- clientTokenSecretRef:
- description: A reference to a specific 'key' within a Secret resource. In some instances, `key` is a required field.
- type: object
- required:
- - name
- properties:
- key:
- description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
- type: string
- name:
- description: 'Name of the resource being referred to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- serviceConsumerDomain:
- type: string
- azureDNS:
- description: Use the Microsoft Azure DNS API to manage DNS01 challenge records.
- type: object
- required:
- - resourceGroupName
- - subscriptionID
- properties:
- clientID:
- description: 'Auth: Azure Service Principal: The ClientID of the Azure Service Principal used to authenticate with Azure DNS. If set, ClientSecret and TenantID must also be set.'
- type: string
- clientSecretSecretRef:
- description: 'Auth: Azure Service Principal: A reference to a Secret containing the password associated with the Service Principal. If set, ClientID and TenantID must also be set.'
- type: object
- required:
- - name
- properties:
- key:
- description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
- type: string
- name:
- description: 'Name of the resource being referred to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- environment:
- description: name of the Azure environment (default AzurePublicCloud)
- type: string
- enum:
- - AzurePublicCloud
- - AzureChinaCloud
- - AzureGermanCloud
- - AzureUSGovernmentCloud
- hostedZoneName:
- description: name of the DNS zone that should be used
- type: string
- managedIdentity:
- description: 'Auth: Azure Workload Identity or Azure Managed Service Identity: Settings to enable Azure Workload Identity or Azure Managed Service Identity If set, ClientID, ClientSecret and TenantID must not be set.'
- type: object
- properties:
- clientID:
- description: client ID of the managed identity, can not be used at the same time as resourceID
- type: string
- resourceID:
- description: resource ID of the managed identity, can not be used at the same time as clientID Cannot be used for Azure Managed Service Identity
- type: string
- resourceGroupName:
- description: resource group the DNS zone is located in
- type: string
- subscriptionID:
- description: ID of the Azure subscription
- type: string
- tenantID:
- description: 'Auth: Azure Service Principal: The TenantID of the Azure Service Principal used to authenticate with Azure DNS. If set, ClientID and ClientSecret must also be set.'
- type: string
- cloudDNS:
- description: Use the Google Cloud DNS API to manage DNS01 challenge records.
- type: object
- required:
- - project
- properties:
- hostedZoneName:
- description: HostedZoneName is an optional field that tells cert-manager in which Cloud DNS zone the challenge record has to be created. If left empty cert-manager will automatically choose a zone.
- type: string
- project:
- type: string
- serviceAccountSecretRef:
- description: A reference to a specific 'key' within a Secret resource. In some instances, `key` is a required field.
- type: object
- required:
- - name
- properties:
- key:
- description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
- type: string
- name:
- description: 'Name of the resource being referred to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- cloudflare:
- description: Use the Cloudflare API to manage DNS01 challenge records.
- type: object
- properties:
- apiKeySecretRef:
- description: 'API key to use to authenticate with Cloudflare. Note: using an API token to authenticate is now the recommended method as it allows greater control of permissions.'
- type: object
- required:
- - name
- properties:
- key:
- description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
- type: string
- name:
- description: 'Name of the resource being referred to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- apiTokenSecretRef:
- description: API token used to authenticate with Cloudflare.
- type: object
- required:
- - name
- properties:
- key:
- description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
- type: string
- name:
- description: 'Name of the resource being referred to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- email:
- description: Email of the account, only required when using API key based authentication.
- type: string
- cnameStrategy:
- description: CNAMEStrategy configures how the DNS01 provider should handle CNAME records when found in DNS zones.
- type: string
- enum:
- - None
- - Follow
- digitalocean:
- description: Use the DigitalOcean DNS API to manage DNS01 challenge records.
- type: object
- required:
- - tokenSecretRef
- properties:
- tokenSecretRef:
- description: A reference to a specific 'key' within a Secret resource. In some instances, `key` is a required field.
- type: object
- required:
- - name
- properties:
- key:
- description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
- type: string
- name:
- description: 'Name of the resource being referred to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- rfc2136:
- description: Use RFC2136 ("Dynamic Updates in the Domain Name System") (https://datatracker.ietf.org/doc/rfc2136/) to manage DNS01 challenge records.
- type: object
- required:
- - nameserver
- properties:
- nameserver:
- description: The IP address or hostname of an authoritative DNS server supporting RFC2136 in the form host:port. If the host is an IPv6 address it must be enclosed in square brackets (e.g [2001:db8::1]) ; port is optional. This field is required.
- type: string
- tsigAlgorithm:
- description: 'The TSIG Algorithm configured in the DNS supporting RFC2136. Used only when ``tsigSecretSecretRef`` and ``tsigKeyName`` are defined. Supported values are (case-insensitive): ``HMACMD5`` (default), ``HMACSHA1``, ``HMACSHA256`` or ``HMACSHA512``.'
- type: string
- tsigKeyName:
- description: The TSIG Key name configured in the DNS. If ``tsigSecretSecretRef`` is defined, this field is required.
- type: string
- tsigSecretSecretRef:
- description: The name of the secret containing the TSIG value. If ``tsigKeyName`` is defined, this field is required.
- type: object
- required:
- - name
- properties:
- key:
- description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
- type: string
- name:
- description: 'Name of the resource being referred to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- route53:
- description: Use the AWS Route53 API to manage DNS01 challenge records.
- type: object
- required:
- - region
- properties:
- accessKeyID:
- description: 'The AccessKeyID is used for authentication. Cannot be set when SecretAccessKeyID is set. If neither the Access Key nor Key ID are set, we fall-back to using env vars, shared credentials file or AWS Instance metadata, see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials'
- type: string
- accessKeyIDSecretRef:
- description: 'The SecretAccessKey is used for authentication. If set, pull the AWS access key ID from a key within a Kubernetes Secret. Cannot be set when AccessKeyID is set. If neither the Access Key nor Key ID are set, we fall-back to using env vars, shared credentials file or AWS Instance metadata, see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials'
- type: object
- required:
- - name
- properties:
- key:
- description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
- type: string
- name:
- description: 'Name of the resource being referred to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- hostedZoneID:
- description: If set, the provider will manage only this zone in Route53 and will not do an lookup using the route53:ListHostedZonesByName api call.
- type: string
- region:
- description: Always set the region when using AccessKeyID and SecretAccessKey
- type: string
- role:
- description: Role is a Role ARN which the Route53 provider will assume using either the explicit credentials AccessKeyID/SecretAccessKey or the inferred credentials from environment variables, shared credentials file or AWS Instance metadata
- type: string
- secretAccessKeySecretRef:
- description: 'The SecretAccessKey is used for authentication. If neither the Access Key nor Key ID are set, we fall-back to using env vars, shared credentials file or AWS Instance metadata, see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials'
- type: object
- required:
- - name
- properties:
- key:
- description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
- type: string
- name:
- description: 'Name of the resource being referred to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- webhook:
- description: Configure an external webhook based DNS01 challenge solver to manage DNS01 challenge records.
- type: object
- required:
- - groupName
- - solverName
- properties:
- config:
- description: Additional configuration that should be passed to the webhook apiserver when challenges are processed. This can contain arbitrary JSON data. Secret values should not be specified in this stanza. If secret values are needed (e.g. credentials for a DNS service), you should use a SecretKeySelector to reference a Secret resource. For details on the schema of this field, consult the webhook provider implementation's documentation.
- x-kubernetes-preserve-unknown-fields: true
- groupName:
- description: The API group name that should be used when POSTing ChallengePayload resources to the webhook apiserver. This should be the same as the GroupName specified in the webhook provider implementation.
- type: string
- solverName:
- description: The name of the solver to use, as defined in the webhook provider implementation. This will typically be the name of the provider, e.g. 'cloudflare'.
- type: string
- http01:
- description: Configures cert-manager to attempt to complete authorizations by performing the HTTP01 challenge flow. It is not possible to obtain certificates for wildcard domain names (e.g. `*.example.com`) using the HTTP01 challenge mechanism.
- type: object
- properties:
- gatewayHTTPRoute:
- description: The Gateway API is a sig-network community API that models service networking in Kubernetes (https://gateway-api.sigs.k8s.io/). The Gateway solver will create HTTPRoutes with the specified labels in the same namespace as the challenge. This solver is experimental, and fields / behaviour may change in the future.
- type: object
- properties:
- labels:
- description: Custom labels that will be applied to HTTPRoutes created by cert-manager while solving HTTP-01 challenges.
- type: object
- additionalProperties:
- type: string
- parentRefs:
- description: 'When solving an HTTP-01 challenge, cert-manager creates an HTTPRoute. cert-manager needs to know which parentRefs should be used when creating the HTTPRoute. Usually, the parentRef references a Gateway. See: https://gateway-api.sigs.k8s.io/api-types/httproute/#attaching-to-gateways'
- type: array
- items:
- description: "ParentReference identifies an API object (usually a Gateway) that can be considered a parent of this resource (usually a route). There are two kinds of parent resources with \"Core\" support: \n * Gateway (Gateway conformance profile) * Service (Mesh conformance profile, experimental, ClusterIP Services only) \n This API may be extended in the future to support additional kinds of parent resources. \n The API object must be valid in the cluster; the Group and Kind must be registered in the cluster for this reference to be valid."
- type: object
- required:
- - name
- properties:
- group:
- description: "Group is the group of the referent. When unspecified, \"gateway.networking.k8s.io\" is inferred. To set the core API group (such as for a \"Service\" kind referent), Group must be explicitly set to \"\" (empty string). \n Support: Core"
- type: string
- default: gateway.networking.k8s.io
- maxLength: 253
- pattern: ^$|^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
- kind:
- description: "Kind is kind of the referent. \n There are two kinds of parent resources with \"Core\" support: \n * Gateway (Gateway conformance profile) * Service (Mesh conformance profile, experimental, ClusterIP Services only) \n Support for other resources is Implementation-Specific."
- type: string
- default: Gateway
- maxLength: 63
- minLength: 1
- pattern: ^[a-zA-Z]([-a-zA-Z0-9]*[a-zA-Z0-9])?$
- name:
- description: "Name is the name of the referent. \n Support: Core"
- type: string
- maxLength: 253
- minLength: 1
- namespace:
- description: "Namespace is the namespace of the referent. When unspecified, this refers to the local namespace of the Route. \n Note that there are specific rules for ParentRefs which cross namespace boundaries. Cross-namespace references are only valid if they are explicitly allowed by something in the namespace they are referring to. For example: Gateway has the AllowedRoutes field, and ReferenceGrant provides a generic way to enable any other kind of cross-namespace reference. \n ParentRefs from a Route to a Service in the same namespace are \"producer\" routes, which apply default routing rules to inbound connections from any namespace to the Service. \n ParentRefs from a Route to a Service in a different namespace are \"consumer\" routes, and these routing rules are only applied to outbound connections originating from the same namespace as the Route, for which the intended destination of the connections are a Service targeted as a ParentRef of the Route. \n Support: Core"
- type: string
- maxLength: 63
- minLength: 1
- pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
- port:
- description: "Port is the network port this Route targets. It can be interpreted differently based on the type of parent resource. \n When the parent resource is a Gateway, this targets all listeners listening on the specified port that also support this kind of Route(and select this Route). It's not recommended to set `Port` unless the networking behaviors specified in a Route must apply to a specific port as opposed to a listener(s) whose port(s) may be changed. When both Port and SectionName are specified, the name and port of the selected listener must match both specified values. \n When the parent resource is a Service, this targets a specific port in the Service spec. When both Port (experimental) and SectionName are specified, the name and port of the selected port must match both specified values. \n Implementations MAY choose to support other parent resources. Implementations supporting other types of parent resources MUST clearly document how/if Port is interpreted. \n For the purpose of status, an attachment is considered successful as long as the parent resource accepts it partially. For example, Gateway listeners can restrict which Routes can attach to them by Route kind, namespace, or hostname. If 1 of 2 Gateway listeners accept attachment from the referencing Route, the Route MUST be considered successfully attached. If no Gateway listeners accept attachment from this Route, the Route MUST be considered detached from the Gateway. \n Support: Extended \n "
- type: integer
- format: int32
- maximum: 65535
- minimum: 1
- sectionName:
- description: "SectionName is the name of a section within the target resource. In the following resources, SectionName is interpreted as the following: \n * Gateway: Listener Name. When both Port (experimental) and SectionName are specified, the name and port of the selected listener must match both specified values. * Service: Port Name. When both Port (experimental) and SectionName are specified, the name and port of the selected listener must match both specified values. Note that attaching Routes to Services as Parents is part of experimental Mesh support and is not supported for any other purpose. \n Implementations MAY choose to support attaching Routes to other resources. If that is the case, they MUST clearly document how SectionName is interpreted. \n When unspecified (empty string), this will reference the entire resource. For the purpose of status, an attachment is considered successful if at least one section in the parent resource accepts it. For example, Gateway listeners can restrict which Routes can attach to them by Route kind, namespace, or hostname. If 1 of 2 Gateway listeners accept attachment from the referencing Route, the Route MUST be considered successfully attached. If no Gateway listeners accept attachment from this Route, the Route MUST be considered detached from the Gateway. \n Support: Core"
- type: string
- maxLength: 253
- minLength: 1
- pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
- serviceType:
- description: Optional service type for Kubernetes solver service. Supported values are NodePort or ClusterIP. If unset, defaults to NodePort.
- type: string
- ingress:
- description: The ingress based HTTP01 challenge solver will solve challenges by creating or modifying Ingress resources in order to route requests for '/.well-known/acme-challenge/XYZ' to 'challenge solver' pods that are provisioned by cert-manager for each Challenge to be completed.
- type: object
- properties:
- class:
- description: This field configures the annotation `kubernetes.io/ingress.class` when creating Ingress resources to solve ACME challenges that use this challenge solver. Only one of `class`, `name` or `ingressClassName` may be specified.
- type: string
- ingressClassName:
- description: This field configures the field `ingressClassName` on the created Ingress resources used to solve ACME challenges that use this challenge solver. This is the recommended way of configuring the ingress class. Only one of `class`, `name` or `ingressClassName` may be specified.
- type: string
- ingressTemplate:
- description: Optional ingress template used to configure the ACME challenge solver ingress used for HTTP01 challenges.
- type: object
- properties:
- metadata:
- description: ObjectMeta overrides for the ingress used to solve HTTP01 challenges. Only the 'labels' and 'annotations' fields may be set. If labels or annotations overlap with in-built values, the values here will override the in-built values.
- type: object
- properties:
- annotations:
- description: Annotations that should be added to the created ACME HTTP01 solver ingress.
- type: object
- additionalProperties:
- type: string
- labels:
- description: Labels that should be added to the created ACME HTTP01 solver ingress.
- type: object
- additionalProperties:
- type: string
- name:
- description: The name of the ingress resource that should have ACME challenge solving routes inserted into it in order to solve HTTP01 challenges. This is typically used in conjunction with ingress controllers like ingress-gce, which maintains a 1:1 mapping between external IPs and ingress resources. Only one of `class`, `name` or `ingressClassName` may be specified.
- type: string
- podTemplate:
- description: Optional pod template used to configure the ACME challenge solver pods used for HTTP01 challenges.
- type: object
- properties:
- metadata:
- description: ObjectMeta overrides for the pod used to solve HTTP01 challenges. Only the 'labels' and 'annotations' fields may be set. If labels or annotations overlap with in-built values, the values here will override the in-built values.
- type: object
- properties:
- annotations:
- description: Annotations that should be added to the create ACME HTTP01 solver pods.
- type: object
- additionalProperties:
- type: string
- labels:
- description: Labels that should be added to the created ACME HTTP01 solver pods.
- type: object
- additionalProperties:
- type: string
- spec:
- description: PodSpec defines overrides for the HTTP01 challenge solver pod. Check ACMEChallengeSolverHTTP01IngressPodSpec to find out currently supported fields. All other fields will be ignored.
- type: object
- properties:
- affinity:
- description: If specified, the pod's scheduling constraints
- type: object
- properties:
- nodeAffinity:
- description: Describes node affinity scheduling rules for the pod.
- type: object
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- description: The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node matches the corresponding matchExpressions; the node(s) with the highest sum are the most preferred.
- type: array
- items:
- description: An empty preferred scheduling term matches all objects with implicit weight 0 (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op).
- type: object
- required:
- - preference
- - weight
- properties:
- preference:
- description: A node selector term, associated with the corresponding weight.
- type: object
- properties:
- matchExpressions:
- description: A list of node selector requirements by node's labels.
- type: array
- items:
- description: A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
- type: object
- required:
- - key
- - operator
- properties:
- key:
- description: The label key that the selector applies to.
- type: string
- operator:
- description: Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
- type: string
- values:
- description: An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch.
- type: array
- items:
- type: string
- matchFields:
- description: A list of node selector requirements by node's fields.
- type: array
- items:
- description: A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
- type: object
- required:
- - key
- - operator
- properties:
- key:
- description: The label key that the selector applies to.
- type: string
- operator:
- description: Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
- type: string
- values:
- description: An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch.
- type: array
- items:
- type: string
- x-kubernetes-map-type: atomic
- weight:
- description: Weight associated with matching the corresponding nodeSelectorTerm, in the range 1-100.
- type: integer
- format: int32
- requiredDuringSchedulingIgnoredDuringExecution:
- description: If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to an update), the system may or may not try to eventually evict the pod from its node.
- type: object
- required:
- - nodeSelectorTerms
- properties:
- nodeSelectorTerms:
- description: Required. A list of node selector terms. The terms are ORed.
- type: array
- items:
- description: A null or empty node selector term matches no objects. The requirements of them are ANDed. The TopologySelectorTerm type implements a subset of the NodeSelectorTerm.
- type: object
- properties:
- matchExpressions:
- description: A list of node selector requirements by node's labels.
- type: array
- items:
- description: A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
- type: object
- required:
- - key
- - operator
- properties:
- key:
- description: The label key that the selector applies to.
- type: string
- operator:
- description: Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
- type: string
- values:
- description: An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch.
- type: array
- items:
- type: string
- matchFields:
- description: A list of node selector requirements by node's fields.
- type: array
- items:
- description: A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
- type: object
- required:
- - key
- - operator
- properties:
- key:
- description: The label key that the selector applies to.
- type: string
- operator:
- description: Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
- type: string
- values:
- description: An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch.
- type: array
- items:
- type: string
- x-kubernetes-map-type: atomic
- x-kubernetes-map-type: atomic
- podAffinity:
- description: Describes pod affinity scheduling rules (e.g. co-locate this pod in the same node, zone, etc. as some other pod(s)).
- type: object
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- description: The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred.
- type: array
- items:
- description: The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)
- type: object
- required:
- - podAffinityTerm
- - weight
- properties:
- podAffinityTerm:
- description: Required. A pod affinity term, associated with the corresponding weight.
- type: object
- required:
- - topologyKey
- properties:
- labelSelector:
- description: A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods.
- type: object
- properties:
- matchExpressions:
- description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
- type: array
- items:
- description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
- type: object
- required:
- - key
- - operator
- properties:
- key:
- description: key is the label key that the selector applies to.
- type: string
- operator:
- description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
- type: string
- values:
- description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
- type: array
- items:
- type: string
- matchLabels:
- description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
- type: object
- additionalProperties:
- type: string
- x-kubernetes-map-type: atomic
- matchLabelKeys:
- description: MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate.
- type: array
- items:
- type: string
- x-kubernetes-list-type: atomic
- mismatchLabelKeys:
- description: MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate.
- type: array
- items:
- type: string
- x-kubernetes-list-type: atomic
- namespaceSelector:
- description: A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces.
- type: object
- properties:
- matchExpressions:
- description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
- type: array
- items:
- description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
- type: object
- required:
- - key
- - operator
- properties:
- key:
- description: key is the label key that the selector applies to.
- type: string
- operator:
- description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
- type: string
- values:
- description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
- type: array
- items:
- type: string
- matchLabels:
- description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
- type: object
- additionalProperties:
- type: string
- x-kubernetes-map-type: atomic
- namespaces:
- description: namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace".
- type: array
- items:
- type: string
- topologyKey:
- description: This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed.
- type: string
- weight:
- description: weight associated with matching the corresponding podAffinityTerm, in the range 1-100.
- type: integer
- format: int32
- requiredDuringSchedulingIgnoredDuringExecution:
- description: If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied.
- type: array
- items:
- description: Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running
- type: object
- required:
- - topologyKey
- properties:
- labelSelector:
- description: A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods.
- type: object
- properties:
- matchExpressions:
- description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
- type: array
- items:
- description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
- type: object
- required:
- - key
- - operator
- properties:
- key:
- description: key is the label key that the selector applies to.
- type: string
- operator:
- description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
- type: string
- values:
- description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
- type: array
- items:
- type: string
- matchLabels:
- description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
- type: object
- additionalProperties:
- type: string
- x-kubernetes-map-type: atomic
- matchLabelKeys:
- description: MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate.
- type: array
- items:
- type: string
- x-kubernetes-list-type: atomic
- mismatchLabelKeys:
- description: MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate.
- type: array
- items:
- type: string
- x-kubernetes-list-type: atomic
- namespaceSelector:
- description: A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces.
- type: object
- properties:
- matchExpressions:
- description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
- type: array
- items:
- description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
- type: object
- required:
- - key
- - operator
- properties:
- key:
- description: key is the label key that the selector applies to.
- type: string
- operator:
- description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
- type: string
- values:
- description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
- type: array
- items:
- type: string
- matchLabels:
- description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
- type: object
- additionalProperties:
- type: string
- x-kubernetes-map-type: atomic
- namespaces:
- description: namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace".
- type: array
- items:
- type: string
- topologyKey:
- description: This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed.
- type: string
- podAntiAffinity:
- description: Describes pod anti-affinity scheduling rules (e.g. avoid putting this pod in the same node, zone, etc. as some other pod(s)).
- type: object
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- description: The scheduler will prefer to schedule pods to nodes that satisfy the anti-affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling anti-affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred.
- type: array
- items:
- description: The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)
- type: object
- required:
- - podAffinityTerm
- - weight
- properties:
- podAffinityTerm:
- description: Required. A pod affinity term, associated with the corresponding weight.
- type: object
- required:
- - topologyKey
- properties:
- labelSelector:
- description: A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods.
- type: object
- properties:
- matchExpressions:
- description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
- type: array
- items:
- description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
- type: object
- required:
- - key
- - operator
- properties:
- key:
- description: key is the label key that the selector applies to.
- type: string
- operator:
- description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
- type: string
- values:
- description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
- type: array
- items:
- type: string
- matchLabels:
- description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
- type: object
- additionalProperties:
- type: string
- x-kubernetes-map-type: atomic
- matchLabelKeys:
- description: MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate.
- type: array
- items:
- type: string
- x-kubernetes-list-type: atomic
- mismatchLabelKeys:
- description: MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate.
- type: array
- items:
- type: string
- x-kubernetes-list-type: atomic
- namespaceSelector:
- description: A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces.
- type: object
- properties:
- matchExpressions:
- description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
- type: array
- items:
- description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
- type: object
- required:
- - key
- - operator
- properties:
- key:
- description: key is the label key that the selector applies to.
- type: string
- operator:
- description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
- type: string
- values:
- description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
- type: array
- items:
- type: string
- matchLabels:
- description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
- type: object
- additionalProperties:
- type: string
- x-kubernetes-map-type: atomic
- namespaces:
- description: namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace".
- type: array
- items:
- type: string
- topologyKey:
- description: This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed.
- type: string
- weight:
- description: weight associated with matching the corresponding podAffinityTerm, in the range 1-100.
- type: integer
- format: int32
- requiredDuringSchedulingIgnoredDuringExecution:
- description: If the anti-affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the anti-affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied.
- type: array
- items:
- description: Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running
- type: object
- required:
- - topologyKey
- properties:
- labelSelector:
- description: A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods.
- type: object
- properties:
- matchExpressions:
- description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
- type: array
- items:
- description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
- type: object
- required:
- - key
- - operator
- properties:
- key:
- description: key is the label key that the selector applies to.
- type: string
- operator:
- description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
- type: string
- values:
- description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
- type: array
- items:
- type: string
- matchLabels:
- description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
- type: object
- additionalProperties:
- type: string
- x-kubernetes-map-type: atomic
- matchLabelKeys:
- description: MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate.
- type: array
- items:
- type: string
- x-kubernetes-list-type: atomic
- mismatchLabelKeys:
- description: MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate.
- type: array
- items:
- type: string
- x-kubernetes-list-type: atomic
- namespaceSelector:
- description: A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces.
- type: object
- properties:
- matchExpressions:
- description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
- type: array
- items:
- description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
- type: object
- required:
- - key
- - operator
- properties:
- key:
- description: key is the label key that the selector applies to.
- type: string
- operator:
- description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
- type: string
- values:
- description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
- type: array
- items:
- type: string
- matchLabels:
- description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
- type: object
- additionalProperties:
- type: string
- x-kubernetes-map-type: atomic
- namespaces:
- description: namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace".
- type: array
- items:
- type: string
- topologyKey:
- description: This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed.
- type: string
- imagePullSecrets:
- description: If specified, the pod's imagePullSecrets
- type: array
- items:
- description: LocalObjectReference contains enough information to let you locate the referenced object inside the same namespace.
- type: object
- properties:
- name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?'
- type: string
- x-kubernetes-map-type: atomic
- nodeSelector:
- description: '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: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/'
- type: object
- additionalProperties:
- type: string
- priorityClassName:
- description: If specified, the pod's priorityClassName.
- type: string
- serviceAccountName:
- description: If specified, the pod's service account
- type: string
- tolerations:
- description: If specified, the pod's tolerations.
- type: array
- items:
- description: The pod this Toleration is attached to tolerates any taint that matches the triple using the matching operator .
- type: object
- properties:
- effect:
- description: Effect indicates the taint effect to match. Empty means match all taint effects. When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute.
- type: string
- key:
- description: Key is the taint key that the toleration applies to. Empty means match all taint keys. If the key is empty, operator must be Exists; this combination means to match all values and all keys.
- type: string
- operator:
- description: Operator represents a key's relationship to the value. Valid operators are Exists and Equal. Defaults to Equal. Exists is equivalent to wildcard for value, so that a pod can tolerate all taints of a particular category.
- type: string
- tolerationSeconds:
- description: TolerationSeconds represents the period of time the toleration (which must be of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, it is not set, which means tolerate the taint forever (do not evict). Zero and negative values will be treated as 0 (evict immediately) by the system.
- type: integer
- format: int64
- value:
- description: Value is the taint value the toleration matches to. If the operator is Exists, the value should be empty, otherwise just a regular string.
- type: string
- serviceType:
- description: Optional service type for Kubernetes solver service. Supported values are NodePort or ClusterIP. If unset, defaults to NodePort.
- type: string
- selector:
- description: Selector selects a set of DNSNames on the Certificate resource that should be solved using this challenge solver. If not specified, the solver will be treated as the 'default' solver with the lowest priority, i.e. if any other solver has a more specific match, it will be used instead.
- type: object
- properties:
- dnsNames:
- description: List of DNSNames that this solver will be used to solve. If specified and a match is found, a dnsNames selector will take precedence over a dnsZones selector. If multiple solvers match with the same dnsNames value, the solver with the most matching labels in matchLabels will be selected. If neither has more matches, the solver defined earlier in the list will be selected.
- type: array
- items:
- type: string
- dnsZones:
- description: List of DNSZones that this solver will be used to solve. The most specific DNS zone match specified here will take precedence over other DNS zone matches, so a solver specifying sys.example.com will be selected over one specifying example.com for the domain www.sys.example.com. If multiple solvers match with the same dnsZones value, the solver with the most matching labels in matchLabels will be selected. If neither has more matches, the solver defined earlier in the list will be selected.
- type: array
- items:
- type: string
- matchLabels:
- description: A label selector that is used to refine the set of certificate's that this challenge solver will apply to.
- type: object
- additionalProperties:
- type: string
- token:
- description: The ACME challenge token for this challenge. This is the raw value returned from the ACME server.
- type: string
- type:
- description: The type of ACME challenge this resource represents. One of "HTTP-01" or "DNS-01".
- type: string
- enum:
- - HTTP-01
- - DNS-01
- url:
- description: The URL of the ACME Challenge resource for this challenge. This can be used to lookup details about the status of this challenge.
- type: string
- wildcard:
- description: wildcard will be true if this challenge is for a wildcard identifier, for example '*.example.com'.
- type: boolean
- status:
- type: object
- properties:
- presented:
- description: presented will be set to true if the challenge values for this challenge are currently 'presented'. This *does not* imply the self check is passing. Only that the values have been 'submitted' for the appropriate challenge mechanism (i.e. the DNS01 TXT record has been presented, or the HTTP01 configuration has been configured).
- type: boolean
- processing:
- description: Used to denote whether this challenge should be processed or not. This field will only be set to true by the 'scheduling' component. It will only be set to false by the 'challenges' controller, after the challenge has reached a final state or timed out. If this field is set to false, the challenge controller will not take any more action.
- type: boolean
- reason:
- description: Contains human readable information on why the Challenge is in the current state.
- type: string
- state:
- description: Contains the current 'state' of the challenge. If not set, the state of the challenge is unknown.
- type: string
- enum:
- - valid
- - ready
- - pending
- - processing
- - invalid
- - expired
- - errored
- served: true
- storage: true
- subresources:
- status: {}
----
-# Source: cert-manager/templates/crds.yaml
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- name: clusterissuers.cert-manager.io
- labels:
- app: 'cert-manager'
- app.kubernetes.io/name: 'cert-manager'
- app.kubernetes.io/instance: "cert-manager"
- # Generated labels
- app.kubernetes.io/version: "v1.14.5"
-spec:
- group: cert-manager.io
- names:
- kind: ClusterIssuer
- listKind: ClusterIssuerList
- plural: clusterissuers
- singular: clusterissuer
- categories:
- - cert-manager
- scope: Cluster
- versions:
- - name: v1
- subresources:
- status: {}
- additionalPrinterColumns:
- - jsonPath: .status.conditions[?(@.type=="Ready")].status
- name: Ready
- type: string
- - jsonPath: .status.conditions[?(@.type=="Ready")].message
- name: Status
- priority: 1
- type: string
- - jsonPath: .metadata.creationTimestamp
- description: CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC.
- name: Age
- type: date
- schema:
- openAPIV3Schema:
- description: A ClusterIssuer represents a certificate issuing authority which can be referenced as part of `issuerRef` fields. It is similar to an Issuer, however it is cluster-scoped and therefore can be referenced by resources that exist in *any* namespace, not just the same namespace as the referent.
- type: object
- required:
- - spec
- properties:
- apiVersion:
- description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
- type: string
- kind:
- description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
- type: string
- metadata:
- type: object
- spec:
- description: Desired state of the ClusterIssuer resource.
- type: object
- properties:
- acme:
- description: ACME configures this issuer to communicate with a RFC8555 (ACME) server to obtain signed x509 certificates.
- type: object
- required:
- - privateKeySecretRef
- - server
- properties:
- caBundle:
- description: Base64-encoded bundle of PEM CAs which can be used to validate the certificate chain presented by the ACME server. Mutually exclusive with SkipTLSVerify; prefer using CABundle to prevent various kinds of security vulnerabilities. If CABundle and SkipTLSVerify are unset, the system certificate bundle inside the container is used to validate the TLS connection.
- type: string
- format: byte
- disableAccountKeyGeneration:
- description: Enables or disables generating a new ACME account key. If true, the Issuer resource will *not* request a new account but will expect the account key to be supplied via an existing secret. If false, the cert-manager system will generate a new ACME account key for the Issuer. Defaults to false.
- type: boolean
- email:
- description: Email is the email address to be associated with the ACME account. This field is optional, but it is strongly recommended to be set. It will be used to contact you in case of issues with your account or certificates, including expiry notification emails. This field may be updated after the account is initially registered.
- type: string
- enableDurationFeature:
- description: Enables requesting a Not After date on certificates that matches the duration of the certificate. This is not supported by all ACME servers like Let's Encrypt. If set to true when the ACME server does not support it it will create an error on the Order. Defaults to false.
- type: boolean
- externalAccountBinding:
- description: ExternalAccountBinding is a reference to a CA external account of the ACME server. If set, upon registration cert-manager will attempt to associate the given external account credentials with the registered ACME account.
- type: object
- required:
- - keyID
- - keySecretRef
- properties:
- keyAlgorithm:
- description: 'Deprecated: keyAlgorithm field exists for historical compatibility reasons and should not be used. The algorithm is now hardcoded to HS256 in golang/x/crypto/acme.'
- type: string
- enum:
- - HS256
- - HS384
- - HS512
- keyID:
- description: keyID is the ID of the CA key that the External Account is bound to.
- type: string
- keySecretRef:
- description: keySecretRef is a Secret Key Selector referencing a data item in a Kubernetes Secret which holds the symmetric MAC key of the External Account Binding. The `key` is the index string that is paired with the key data in the Secret and should not be confused with the key data itself, or indeed with the External Account Binding keyID above. The secret key stored in the Secret **must** be un-padded, base64 URL encoded data.
- type: object
- required:
- - name
- properties:
- key:
- description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
- type: string
- name:
- description: 'Name of the resource being referred to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- preferredChain:
- description: 'PreferredChain is the chain to use if the ACME server outputs multiple. PreferredChain is no guarantee that this one gets delivered by the ACME endpoint. For example, for Let''s Encrypt''s DST crosssign you would use: "DST Root CA X3" or "ISRG Root X1" for the newer Let''s Encrypt root CA. This value picks the first certificate bundle in the ACME alternative chains that has a certificate with this value as its issuer''s CN'
- type: string
- maxLength: 64
- privateKeySecretRef:
- description: PrivateKey is the name of a Kubernetes Secret resource that will be used to store the automatically generated ACME account private key. Optionally, a `key` may be specified to select a specific entry within the named Secret resource. If `key` is not specified, a default of `tls.key` will be used.
- type: object
- required:
- - name
- properties:
- key:
- description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
- type: string
- name:
- description: 'Name of the resource being referred to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- server:
- description: 'Server is the URL used to access the ACME server''s ''directory'' endpoint. For example, for Let''s Encrypt''s staging endpoint, you would use: "https://acme-staging-v02.api.letsencrypt.org/directory". Only ACME v2 endpoints (i.e. RFC 8555) are supported.'
- type: string
- skipTLSVerify:
- description: 'INSECURE: Enables or disables validation of the ACME server TLS certificate. If true, requests to the ACME server will not have the TLS certificate chain validated. Mutually exclusive with CABundle; prefer using CABundle to prevent various kinds of security vulnerabilities. Only enable this option in development environments. If CABundle and SkipTLSVerify are unset, the system certificate bundle inside the container is used to validate the TLS connection. Defaults to false.'
- type: boolean
- solvers:
- description: 'Solvers is a list of challenge solvers that will be used to solve ACME challenges for the matching domains. Solver configurations must be provided in order to obtain certificates from an ACME server. For more information, see: https://cert-manager.io/docs/configuration/acme/'
- type: array
- items:
- description: An ACMEChallengeSolver describes how to solve ACME challenges for the issuer it is part of. A selector may be provided to use different solving strategies for different DNS names. Only one of HTTP01 or DNS01 must be provided.
- type: object
- properties:
- dns01:
- description: Configures cert-manager to attempt to complete authorizations by performing the DNS01 challenge flow.
- type: object
- properties:
- acmeDNS:
- description: Use the 'ACME DNS' (https://github.com/joohoi/acme-dns) API to manage DNS01 challenge records.
- type: object
- required:
- - accountSecretRef
- - host
- properties:
- accountSecretRef:
- description: A reference to a specific 'key' within a Secret resource. In some instances, `key` is a required field.
- type: object
- required:
- - name
- properties:
- key:
- description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
- type: string
- name:
- description: 'Name of the resource being referred to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- host:
- type: string
- akamai:
- description: Use the Akamai DNS zone management API to manage DNS01 challenge records.
- type: object
- required:
- - accessTokenSecretRef
- - clientSecretSecretRef
- - clientTokenSecretRef
- - serviceConsumerDomain
- properties:
- accessTokenSecretRef:
- description: A reference to a specific 'key' within a Secret resource. In some instances, `key` is a required field.
- type: object
- required:
- - name
- properties:
- key:
- description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
- type: string
- name:
- description: 'Name of the resource being referred to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- clientSecretSecretRef:
- description: A reference to a specific 'key' within a Secret resource. In some instances, `key` is a required field.
- type: object
- required:
- - name
- properties:
- key:
- description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
- type: string
- name:
- description: 'Name of the resource being referred to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- clientTokenSecretRef:
- description: A reference to a specific 'key' within a Secret resource. In some instances, `key` is a required field.
- type: object
- required:
- - name
- properties:
- key:
- description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
- type: string
- name:
- description: 'Name of the resource being referred to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- serviceConsumerDomain:
- type: string
- azureDNS:
- description: Use the Microsoft Azure DNS API to manage DNS01 challenge records.
- type: object
- required:
- - resourceGroupName
- - subscriptionID
- properties:
- clientID:
- description: 'Auth: Azure Service Principal: The ClientID of the Azure Service Principal used to authenticate with Azure DNS. If set, ClientSecret and TenantID must also be set.'
- type: string
- clientSecretSecretRef:
- description: 'Auth: Azure Service Principal: A reference to a Secret containing the password associated with the Service Principal. If set, ClientID and TenantID must also be set.'
- type: object
- required:
- - name
- properties:
- key:
- description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
- type: string
- name:
- description: 'Name of the resource being referred to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- environment:
- description: name of the Azure environment (default AzurePublicCloud)
- type: string
- enum:
- - AzurePublicCloud
- - AzureChinaCloud
- - AzureGermanCloud
- - AzureUSGovernmentCloud
- hostedZoneName:
- description: name of the DNS zone that should be used
- type: string
- managedIdentity:
- description: 'Auth: Azure Workload Identity or Azure Managed Service Identity: Settings to enable Azure Workload Identity or Azure Managed Service Identity If set, ClientID, ClientSecret and TenantID must not be set.'
- type: object
- properties:
- clientID:
- description: client ID of the managed identity, can not be used at the same time as resourceID
- type: string
- resourceID:
- description: resource ID of the managed identity, can not be used at the same time as clientID Cannot be used for Azure Managed Service Identity
- type: string
- resourceGroupName:
- description: resource group the DNS zone is located in
- type: string
- subscriptionID:
- description: ID of the Azure subscription
- type: string
- tenantID:
- description: 'Auth: Azure Service Principal: The TenantID of the Azure Service Principal used to authenticate with Azure DNS. If set, ClientID and ClientSecret must also be set.'
- type: string
- cloudDNS:
- description: Use the Google Cloud DNS API to manage DNS01 challenge records.
- type: object
- required:
- - project
- properties:
- hostedZoneName:
- description: HostedZoneName is an optional field that tells cert-manager in which Cloud DNS zone the challenge record has to be created. If left empty cert-manager will automatically choose a zone.
- type: string
- project:
- type: string
- serviceAccountSecretRef:
- description: A reference to a specific 'key' within a Secret resource. In some instances, `key` is a required field.
- type: object
- required:
- - name
- properties:
- key:
- description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
- type: string
- name:
- description: 'Name of the resource being referred to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- cloudflare:
- description: Use the Cloudflare API to manage DNS01 challenge records.
- type: object
- properties:
- apiKeySecretRef:
- description: 'API key to use to authenticate with Cloudflare. Note: using an API token to authenticate is now the recommended method as it allows greater control of permissions.'
- type: object
- required:
- - name
- properties:
- key:
- description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
- type: string
- name:
- description: 'Name of the resource being referred to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- apiTokenSecretRef:
- description: API token used to authenticate with Cloudflare.
- type: object
- required:
- - name
- properties:
- key:
- description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
- type: string
- name:
- description: 'Name of the resource being referred to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- email:
- description: Email of the account, only required when using API key based authentication.
- type: string
- cnameStrategy:
- description: CNAMEStrategy configures how the DNS01 provider should handle CNAME records when found in DNS zones.
- type: string
- enum:
- - None
- - Follow
- digitalocean:
- description: Use the DigitalOcean DNS API to manage DNS01 challenge records.
- type: object
- required:
- - tokenSecretRef
- properties:
- tokenSecretRef:
- description: A reference to a specific 'key' within a Secret resource. In some instances, `key` is a required field.
- type: object
- required:
- - name
- properties:
- key:
- description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
- type: string
- name:
- description: 'Name of the resource being referred to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- rfc2136:
- description: Use RFC2136 ("Dynamic Updates in the Domain Name System") (https://datatracker.ietf.org/doc/rfc2136/) to manage DNS01 challenge records.
- type: object
- required:
- - nameserver
- properties:
- nameserver:
- description: The IP address or hostname of an authoritative DNS server supporting RFC2136 in the form host:port. If the host is an IPv6 address it must be enclosed in square brackets (e.g [2001:db8::1]) ; port is optional. This field is required.
- type: string
- tsigAlgorithm:
- description: 'The TSIG Algorithm configured in the DNS supporting RFC2136. Used only when ``tsigSecretSecretRef`` and ``tsigKeyName`` are defined. Supported values are (case-insensitive): ``HMACMD5`` (default), ``HMACSHA1``, ``HMACSHA256`` or ``HMACSHA512``.'
- type: string
- tsigKeyName:
- description: The TSIG Key name configured in the DNS. If ``tsigSecretSecretRef`` is defined, this field is required.
- type: string
- tsigSecretSecretRef:
- description: The name of the secret containing the TSIG value. If ``tsigKeyName`` is defined, this field is required.
- type: object
- required:
- - name
- properties:
- key:
- description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
- type: string
- name:
- description: 'Name of the resource being referred to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- route53:
- description: Use the AWS Route53 API to manage DNS01 challenge records.
- type: object
- required:
- - region
- properties:
- accessKeyID:
- description: 'The AccessKeyID is used for authentication. Cannot be set when SecretAccessKeyID is set. If neither the Access Key nor Key ID are set, we fall-back to using env vars, shared credentials file or AWS Instance metadata, see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials'
- type: string
- accessKeyIDSecretRef:
- description: 'The SecretAccessKey is used for authentication. If set, pull the AWS access key ID from a key within a Kubernetes Secret. Cannot be set when AccessKeyID is set. If neither the Access Key nor Key ID are set, we fall-back to using env vars, shared credentials file or AWS Instance metadata, see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials'
- type: object
- required:
- - name
- properties:
- key:
- description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
- type: string
- name:
- description: 'Name of the resource being referred to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- hostedZoneID:
- description: If set, the provider will manage only this zone in Route53 and will not do an lookup using the route53:ListHostedZonesByName api call.
- type: string
- region:
- description: Always set the region when using AccessKeyID and SecretAccessKey
- type: string
- role:
- description: Role is a Role ARN which the Route53 provider will assume using either the explicit credentials AccessKeyID/SecretAccessKey or the inferred credentials from environment variables, shared credentials file or AWS Instance metadata
- type: string
- secretAccessKeySecretRef:
- description: 'The SecretAccessKey is used for authentication. If neither the Access Key nor Key ID are set, we fall-back to using env vars, shared credentials file or AWS Instance metadata, see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials'
- type: object
- required:
- - name
- properties:
- key:
- description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
- type: string
- name:
- description: 'Name of the resource being referred to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- webhook:
- description: Configure an external webhook based DNS01 challenge solver to manage DNS01 challenge records.
- type: object
- required:
- - groupName
- - solverName
- properties:
- config:
- description: Additional configuration that should be passed to the webhook apiserver when challenges are processed. This can contain arbitrary JSON data. Secret values should not be specified in this stanza. If secret values are needed (e.g. credentials for a DNS service), you should use a SecretKeySelector to reference a Secret resource. For details on the schema of this field, consult the webhook provider implementation's documentation.
- x-kubernetes-preserve-unknown-fields: true
- groupName:
- description: The API group name that should be used when POSTing ChallengePayload resources to the webhook apiserver. This should be the same as the GroupName specified in the webhook provider implementation.
- type: string
- solverName:
- description: The name of the solver to use, as defined in the webhook provider implementation. This will typically be the name of the provider, e.g. 'cloudflare'.
- type: string
- http01:
- description: Configures cert-manager to attempt to complete authorizations by performing the HTTP01 challenge flow. It is not possible to obtain certificates for wildcard domain names (e.g. `*.example.com`) using the HTTP01 challenge mechanism.
- type: object
- properties:
- gatewayHTTPRoute:
- description: The Gateway API is a sig-network community API that models service networking in Kubernetes (https://gateway-api.sigs.k8s.io/). The Gateway solver will create HTTPRoutes with the specified labels in the same namespace as the challenge. This solver is experimental, and fields / behaviour may change in the future.
- type: object
- properties:
- labels:
- description: Custom labels that will be applied to HTTPRoutes created by cert-manager while solving HTTP-01 challenges.
- type: object
- additionalProperties:
- type: string
- parentRefs:
- description: 'When solving an HTTP-01 challenge, cert-manager creates an HTTPRoute. cert-manager needs to know which parentRefs should be used when creating the HTTPRoute. Usually, the parentRef references a Gateway. See: https://gateway-api.sigs.k8s.io/api-types/httproute/#attaching-to-gateways'
- type: array
- items:
- description: "ParentReference identifies an API object (usually a Gateway) that can be considered a parent of this resource (usually a route). There are two kinds of parent resources with \"Core\" support: \n * Gateway (Gateway conformance profile) * Service (Mesh conformance profile, experimental, ClusterIP Services only) \n This API may be extended in the future to support additional kinds of parent resources. \n The API object must be valid in the cluster; the Group and Kind must be registered in the cluster for this reference to be valid."
- type: object
- required:
- - name
- properties:
- group:
- description: "Group is the group of the referent. When unspecified, \"gateway.networking.k8s.io\" is inferred. To set the core API group (such as for a \"Service\" kind referent), Group must be explicitly set to \"\" (empty string). \n Support: Core"
- type: string
- default: gateway.networking.k8s.io
- maxLength: 253
- pattern: ^$|^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
- kind:
- description: "Kind is kind of the referent. \n There are two kinds of parent resources with \"Core\" support: \n * Gateway (Gateway conformance profile) * Service (Mesh conformance profile, experimental, ClusterIP Services only) \n Support for other resources is Implementation-Specific."
- type: string
- default: Gateway
- maxLength: 63
- minLength: 1
- pattern: ^[a-zA-Z]([-a-zA-Z0-9]*[a-zA-Z0-9])?$
- name:
- description: "Name is the name of the referent. \n Support: Core"
- type: string
- maxLength: 253
- minLength: 1
- namespace:
- description: "Namespace is the namespace of the referent. When unspecified, this refers to the local namespace of the Route. \n Note that there are specific rules for ParentRefs which cross namespace boundaries. Cross-namespace references are only valid if they are explicitly allowed by something in the namespace they are referring to. For example: Gateway has the AllowedRoutes field, and ReferenceGrant provides a generic way to enable any other kind of cross-namespace reference. \n ParentRefs from a Route to a Service in the same namespace are \"producer\" routes, which apply default routing rules to inbound connections from any namespace to the Service. \n ParentRefs from a Route to a Service in a different namespace are \"consumer\" routes, and these routing rules are only applied to outbound connections originating from the same namespace as the Route, for which the intended destination of the connections are a Service targeted as a ParentRef of the Route. \n Support: Core"
- type: string
- maxLength: 63
- minLength: 1
- pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
- port:
- description: "Port is the network port this Route targets. It can be interpreted differently based on the type of parent resource. \n When the parent resource is a Gateway, this targets all listeners listening on the specified port that also support this kind of Route(and select this Route). It's not recommended to set `Port` unless the networking behaviors specified in a Route must apply to a specific port as opposed to a listener(s) whose port(s) may be changed. When both Port and SectionName are specified, the name and port of the selected listener must match both specified values. \n When the parent resource is a Service, this targets a specific port in the Service spec. When both Port (experimental) and SectionName are specified, the name and port of the selected port must match both specified values. \n Implementations MAY choose to support other parent resources. Implementations supporting other types of parent resources MUST clearly document how/if Port is interpreted. \n For the purpose of status, an attachment is considered successful as long as the parent resource accepts it partially. For example, Gateway listeners can restrict which Routes can attach to them by Route kind, namespace, or hostname. If 1 of 2 Gateway listeners accept attachment from the referencing Route, the Route MUST be considered successfully attached. If no Gateway listeners accept attachment from this Route, the Route MUST be considered detached from the Gateway. \n Support: Extended \n "
- type: integer
- format: int32
- maximum: 65535
- minimum: 1
- sectionName:
- description: "SectionName is the name of a section within the target resource. In the following resources, SectionName is interpreted as the following: \n * Gateway: Listener Name. When both Port (experimental) and SectionName are specified, the name and port of the selected listener must match both specified values. * Service: Port Name. When both Port (experimental) and SectionName are specified, the name and port of the selected listener must match both specified values. Note that attaching Routes to Services as Parents is part of experimental Mesh support and is not supported for any other purpose. \n Implementations MAY choose to support attaching Routes to other resources. If that is the case, they MUST clearly document how SectionName is interpreted. \n When unspecified (empty string), this will reference the entire resource. For the purpose of status, an attachment is considered successful if at least one section in the parent resource accepts it. For example, Gateway listeners can restrict which Routes can attach to them by Route kind, namespace, or hostname. If 1 of 2 Gateway listeners accept attachment from the referencing Route, the Route MUST be considered successfully attached. If no Gateway listeners accept attachment from this Route, the Route MUST be considered detached from the Gateway. \n Support: Core"
- type: string
- maxLength: 253
- minLength: 1
- pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
- serviceType:
- description: Optional service type for Kubernetes solver service. Supported values are NodePort or ClusterIP. If unset, defaults to NodePort.
- type: string
- ingress:
- description: The ingress based HTTP01 challenge solver will solve challenges by creating or modifying Ingress resources in order to route requests for '/.well-known/acme-challenge/XYZ' to 'challenge solver' pods that are provisioned by cert-manager for each Challenge to be completed.
- type: object
- properties:
- class:
- description: This field configures the annotation `kubernetes.io/ingress.class` when creating Ingress resources to solve ACME challenges that use this challenge solver. Only one of `class`, `name` or `ingressClassName` may be specified.
- type: string
- ingressClassName:
- description: This field configures the field `ingressClassName` on the created Ingress resources used to solve ACME challenges that use this challenge solver. This is the recommended way of configuring the ingress class. Only one of `class`, `name` or `ingressClassName` may be specified.
- type: string
- ingressTemplate:
- description: Optional ingress template used to configure the ACME challenge solver ingress used for HTTP01 challenges.
- type: object
- properties:
- metadata:
- description: ObjectMeta overrides for the ingress used to solve HTTP01 challenges. Only the 'labels' and 'annotations' fields may be set. If labels or annotations overlap with in-built values, the values here will override the in-built values.
- type: object
- properties:
- annotations:
- description: Annotations that should be added to the created ACME HTTP01 solver ingress.
- type: object
- additionalProperties:
- type: string
- labels:
- description: Labels that should be added to the created ACME HTTP01 solver ingress.
- type: object
- additionalProperties:
- type: string
- name:
- description: The name of the ingress resource that should have ACME challenge solving routes inserted into it in order to solve HTTP01 challenges. This is typically used in conjunction with ingress controllers like ingress-gce, which maintains a 1:1 mapping between external IPs and ingress resources. Only one of `class`, `name` or `ingressClassName` may be specified.
- type: string
- podTemplate:
- description: Optional pod template used to configure the ACME challenge solver pods used for HTTP01 challenges.
- type: object
- properties:
- metadata:
- description: ObjectMeta overrides for the pod used to solve HTTP01 challenges. Only the 'labels' and 'annotations' fields may be set. If labels or annotations overlap with in-built values, the values here will override the in-built values.
- type: object
- properties:
- annotations:
- description: Annotations that should be added to the create ACME HTTP01 solver pods.
- type: object
- additionalProperties:
- type: string
- labels:
- description: Labels that should be added to the created ACME HTTP01 solver pods.
- type: object
- additionalProperties:
- type: string
- spec:
- description: PodSpec defines overrides for the HTTP01 challenge solver pod. Check ACMEChallengeSolverHTTP01IngressPodSpec to find out currently supported fields. All other fields will be ignored.
- type: object
- properties:
- affinity:
- description: If specified, the pod's scheduling constraints
- type: object
- properties:
- nodeAffinity:
- description: Describes node affinity scheduling rules for the pod.
- type: object
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- description: The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node matches the corresponding matchExpressions; the node(s) with the highest sum are the most preferred.
- type: array
- items:
- description: An empty preferred scheduling term matches all objects with implicit weight 0 (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op).
- type: object
- required:
- - preference
- - weight
- properties:
- preference:
- description: A node selector term, associated with the corresponding weight.
- type: object
- properties:
- matchExpressions:
- description: A list of node selector requirements by node's labels.
- type: array
- items:
- description: A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
- type: object
- required:
- - key
- - operator
- properties:
- key:
- description: The label key that the selector applies to.
- type: string
- operator:
- description: Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
- type: string
- values:
- description: An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch.
- type: array
- items:
- type: string
- matchFields:
- description: A list of node selector requirements by node's fields.
- type: array
- items:
- description: A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
- type: object
- required:
- - key
- - operator
- properties:
- key:
- description: The label key that the selector applies to.
- type: string
- operator:
- description: Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
- type: string
- values:
- description: An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch.
- type: array
- items:
- type: string
- x-kubernetes-map-type: atomic
- weight:
- description: Weight associated with matching the corresponding nodeSelectorTerm, in the range 1-100.
- type: integer
- format: int32
- requiredDuringSchedulingIgnoredDuringExecution:
- description: If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to an update), the system may or may not try to eventually evict the pod from its node.
- type: object
- required:
- - nodeSelectorTerms
- properties:
- nodeSelectorTerms:
- description: Required. A list of node selector terms. The terms are ORed.
- type: array
- items:
- description: A null or empty node selector term matches no objects. The requirements of them are ANDed. The TopologySelectorTerm type implements a subset of the NodeSelectorTerm.
- type: object
- properties:
- matchExpressions:
- description: A list of node selector requirements by node's labels.
- type: array
- items:
- description: A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
- type: object
- required:
- - key
- - operator
- properties:
- key:
- description: The label key that the selector applies to.
- type: string
- operator:
- description: Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
- type: string
- values:
- description: An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch.
- type: array
- items:
- type: string
- matchFields:
- description: A list of node selector requirements by node's fields.
- type: array
- items:
- description: A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
- type: object
- required:
- - key
- - operator
- properties:
- key:
- description: The label key that the selector applies to.
- type: string
- operator:
- description: Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
- type: string
- values:
- description: An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch.
- type: array
- items:
- type: string
- x-kubernetes-map-type: atomic
- x-kubernetes-map-type: atomic
- podAffinity:
- description: Describes pod affinity scheduling rules (e.g. co-locate this pod in the same node, zone, etc. as some other pod(s)).
- type: object
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- description: The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred.
- type: array
- items:
- description: The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)
- type: object
- required:
- - podAffinityTerm
- - weight
- properties:
- podAffinityTerm:
- description: Required. A pod affinity term, associated with the corresponding weight.
- type: object
- required:
- - topologyKey
- properties:
- labelSelector:
- description: A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods.
- type: object
- properties:
- matchExpressions:
- description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
- type: array
- items:
- description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
- type: object
- required:
- - key
- - operator
- properties:
- key:
- description: key is the label key that the selector applies to.
- type: string
- operator:
- description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
- type: string
- values:
- description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
- type: array
- items:
- type: string
- matchLabels:
- description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
- type: object
- additionalProperties:
- type: string
- x-kubernetes-map-type: atomic
- matchLabelKeys:
- description: MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate.
- type: array
- items:
- type: string
- x-kubernetes-list-type: atomic
- mismatchLabelKeys:
- description: MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate.
- type: array
- items:
- type: string
- x-kubernetes-list-type: atomic
- namespaceSelector:
- description: A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces.
- type: object
- properties:
- matchExpressions:
- description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
- type: array
- items:
- description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
- type: object
- required:
- - key
- - operator
- properties:
- key:
- description: key is the label key that the selector applies to.
- type: string
- operator:
- description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
- type: string
- values:
- description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
- type: array
- items:
- type: string
- matchLabels:
- description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
- type: object
- additionalProperties:
- type: string
- x-kubernetes-map-type: atomic
- namespaces:
- description: namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace".
- type: array
- items:
- type: string
- topologyKey:
- description: This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed.
- type: string
- weight:
- description: weight associated with matching the corresponding podAffinityTerm, in the range 1-100.
- type: integer
- format: int32
- requiredDuringSchedulingIgnoredDuringExecution:
- description: If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied.
- type: array
- items:
- description: Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running
- type: object
- required:
- - topologyKey
- properties:
- labelSelector:
- description: A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods.
- type: object
- properties:
- matchExpressions:
- description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
- type: array
- items:
- description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
- type: object
- required:
- - key
- - operator
- properties:
- key:
- description: key is the label key that the selector applies to.
- type: string
- operator:
- description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
- type: string
- values:
- description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
- type: array
- items:
- type: string
- matchLabels:
- description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
- type: object
- additionalProperties:
- type: string
- x-kubernetes-map-type: atomic
- matchLabelKeys:
- description: MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate.
- type: array
- items:
- type: string
- x-kubernetes-list-type: atomic
- mismatchLabelKeys:
- description: MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate.
- type: array
- items:
- type: string
- x-kubernetes-list-type: atomic
- namespaceSelector:
- description: A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces.
- type: object
- properties:
- matchExpressions:
- description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
- type: array
- items:
- description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
- type: object
- required:
- - key
- - operator
- properties:
- key:
- description: key is the label key that the selector applies to.
- type: string
- operator:
- description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
- type: string
- values:
- description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
- type: array
- items:
- type: string
- matchLabels:
- description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
- type: object
- additionalProperties:
- type: string
- x-kubernetes-map-type: atomic
- namespaces:
- description: namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace".
- type: array
- items:
- type: string
- topologyKey:
- description: This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed.
- type: string
- podAntiAffinity:
- description: Describes pod anti-affinity scheduling rules (e.g. avoid putting this pod in the same node, zone, etc. as some other pod(s)).
- type: object
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- description: The scheduler will prefer to schedule pods to nodes that satisfy the anti-affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling anti-affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred.
- type: array
- items:
- description: The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)
- type: object
- required:
- - podAffinityTerm
- - weight
- properties:
- podAffinityTerm:
- description: Required. A pod affinity term, associated with the corresponding weight.
- type: object
- required:
- - topologyKey
- properties:
- labelSelector:
- description: A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods.
- type: object
- properties:
- matchExpressions:
- description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
- type: array
- items:
- description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
- type: object
- required:
- - key
- - operator
- properties:
- key:
- description: key is the label key that the selector applies to.
- type: string
- operator:
- description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
- type: string
- values:
- description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
- type: array
- items:
- type: string
- matchLabels:
- description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
- type: object
- additionalProperties:
- type: string
- x-kubernetes-map-type: atomic
- matchLabelKeys:
- description: MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate.
- type: array
- items:
- type: string
- x-kubernetes-list-type: atomic
- mismatchLabelKeys:
- description: MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate.
- type: array
- items:
- type: string
- x-kubernetes-list-type: atomic
- namespaceSelector:
- description: A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces.
- type: object
- properties:
- matchExpressions:
- description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
- type: array
- items:
- description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
- type: object
- required:
- - key
- - operator
- properties:
- key:
- description: key is the label key that the selector applies to.
- type: string
- operator:
- description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
- type: string
- values:
- description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
- type: array
- items:
- type: string
- matchLabels:
- description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
- type: object
- additionalProperties:
- type: string
- x-kubernetes-map-type: atomic
- namespaces:
- description: namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace".
- type: array
- items:
- type: string
- topologyKey:
- description: This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed.
- type: string
- weight:
- description: weight associated with matching the corresponding podAffinityTerm, in the range 1-100.
- type: integer
- format: int32
- requiredDuringSchedulingIgnoredDuringExecution:
- description: If the anti-affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the anti-affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied.
- type: array
- items:
- description: Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running
- type: object
- required:
- - topologyKey
- properties:
- labelSelector:
- description: A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods.
- type: object
- properties:
- matchExpressions:
- description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
- type: array
- items:
- description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
- type: object
- required:
- - key
- - operator
- properties:
- key:
- description: key is the label key that the selector applies to.
- type: string
- operator:
- description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
- type: string
- values:
- description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
- type: array
- items:
- type: string
- matchLabels:
- description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
- type: object
- additionalProperties:
- type: string
- x-kubernetes-map-type: atomic
- matchLabelKeys:
- description: MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate.
- type: array
- items:
- type: string
- x-kubernetes-list-type: atomic
- mismatchLabelKeys:
- description: MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate.
- type: array
- items:
- type: string
- x-kubernetes-list-type: atomic
- namespaceSelector:
- description: A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces.
- type: object
- properties:
- matchExpressions:
- description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
- type: array
- items:
- description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
- type: object
- required:
- - key
- - operator
- properties:
- key:
- description: key is the label key that the selector applies to.
- type: string
- operator:
- description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
- type: string
- values:
- description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
- type: array
- items:
- type: string
- matchLabels:
- description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
- type: object
- additionalProperties:
- type: string
- x-kubernetes-map-type: atomic
- namespaces:
- description: namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace".
- type: array
- items:
- type: string
- topologyKey:
- description: This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed.
- type: string
- imagePullSecrets:
- description: If specified, the pod's imagePullSecrets
- type: array
- items:
- description: LocalObjectReference contains enough information to let you locate the referenced object inside the same namespace.
- type: object
- properties:
- name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?'
- type: string
- x-kubernetes-map-type: atomic
- nodeSelector:
- description: '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: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/'
- type: object
- additionalProperties:
- type: string
- priorityClassName:
- description: If specified, the pod's priorityClassName.
- type: string
- serviceAccountName:
- description: If specified, the pod's service account
- type: string
- tolerations:
- description: If specified, the pod's tolerations.
- type: array
- items:
- description: The pod this Toleration is attached to tolerates any taint that matches the triple using the matching operator .
- type: object
- properties:
- effect:
- description: Effect indicates the taint effect to match. Empty means match all taint effects. When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute.
- type: string
- key:
- description: Key is the taint key that the toleration applies to. Empty means match all taint keys. If the key is empty, operator must be Exists; this combination means to match all values and all keys.
- type: string
- operator:
- description: Operator represents a key's relationship to the value. Valid operators are Exists and Equal. Defaults to Equal. Exists is equivalent to wildcard for value, so that a pod can tolerate all taints of a particular category.
- type: string
- tolerationSeconds:
- description: TolerationSeconds represents the period of time the toleration (which must be of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, it is not set, which means tolerate the taint forever (do not evict). Zero and negative values will be treated as 0 (evict immediately) by the system.
- type: integer
- format: int64
- value:
- description: Value is the taint value the toleration matches to. If the operator is Exists, the value should be empty, otherwise just a regular string.
- type: string
- serviceType:
- description: Optional service type for Kubernetes solver service. Supported values are NodePort or ClusterIP. If unset, defaults to NodePort.
- type: string
- selector:
- description: Selector selects a set of DNSNames on the Certificate resource that should be solved using this challenge solver. If not specified, the solver will be treated as the 'default' solver with the lowest priority, i.e. if any other solver has a more specific match, it will be used instead.
- type: object
- properties:
- dnsNames:
- description: List of DNSNames that this solver will be used to solve. If specified and a match is found, a dnsNames selector will take precedence over a dnsZones selector. If multiple solvers match with the same dnsNames value, the solver with the most matching labels in matchLabels will be selected. If neither has more matches, the solver defined earlier in the list will be selected.
- type: array
- items:
- type: string
- dnsZones:
- description: List of DNSZones that this solver will be used to solve. The most specific DNS zone match specified here will take precedence over other DNS zone matches, so a solver specifying sys.example.com will be selected over one specifying example.com for the domain www.sys.example.com. If multiple solvers match with the same dnsZones value, the solver with the most matching labels in matchLabels will be selected. If neither has more matches, the solver defined earlier in the list will be selected.
- type: array
- items:
- type: string
- matchLabels:
- description: A label selector that is used to refine the set of certificate's that this challenge solver will apply to.
- type: object
- additionalProperties:
- type: string
- ca:
- description: CA configures this issuer to sign certificates using a signing CA keypair stored in a Secret resource. This is used to build internal PKIs that are managed by cert-manager.
- type: object
- required:
- - secretName
- properties:
- crlDistributionPoints:
- description: The CRL distribution points is an X.509 v3 certificate extension which identifies the location of the CRL from which the revocation of this certificate can be checked. If not set, certificates will be issued without distribution points set.
- type: array
- items:
- type: string
- issuingCertificateURLs:
- description: IssuingCertificateURLs is a list of URLs which this issuer should embed into certificates it creates. See https://www.rfc-editor.org/rfc/rfc5280#section-4.2.2.1 for more details. As an example, such a URL might be "http://ca.domain.com/ca.crt".
- type: array
- items:
- type: string
- ocspServers:
- description: The OCSP server list is an X.509 v3 extension that defines a list of URLs of OCSP responders. The OCSP responders can be queried for the revocation status of an issued certificate. If not set, the certificate will be issued with no OCSP servers set. For example, an OCSP server URL could be "http://ocsp.int-x3.letsencrypt.org".
- type: array
- items:
- type: string
- secretName:
- description: SecretName is the name of the secret used to sign Certificates issued by this Issuer.
- type: string
- selfSigned:
- description: SelfSigned configures this issuer to 'self sign' certificates using the private key used to create the CertificateRequest object.
- type: object
- properties:
- crlDistributionPoints:
- description: The CRL distribution points is an X.509 v3 certificate extension which identifies the location of the CRL from which the revocation of this certificate can be checked. If not set certificate will be issued without CDP. Values are strings.
- type: array
- items:
- type: string
- vault:
- description: Vault configures this issuer to sign certificates using a HashiCorp Vault PKI backend.
- type: object
- required:
- - auth
- - path
- - server
- properties:
- auth:
- description: Auth configures how cert-manager authenticates with the Vault server.
- type: object
- properties:
- appRole:
- description: AppRole authenticates with Vault using the App Role auth mechanism, with the role and secret stored in a Kubernetes Secret resource.
- type: object
- required:
- - path
- - roleId
- - secretRef
- properties:
- path:
- description: 'Path where the App Role authentication backend is mounted in Vault, e.g: "approle"'
- type: string
- roleId:
- description: RoleID configured in the App Role authentication backend when setting up the authentication backend in Vault.
- type: string
- secretRef:
- description: Reference to a key in a Secret that contains the App Role secret used to authenticate with Vault. The `key` field must be specified and denotes which entry within the Secret resource is used as the app role secret.
- type: object
- required:
- - name
- properties:
- key:
- description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
- type: string
- name:
- description: 'Name of the resource being referred to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- kubernetes:
- description: Kubernetes authenticates with Vault by passing the ServiceAccount token stored in the named Secret resource to the Vault server.
- type: object
- required:
- - role
- properties:
- mountPath:
- description: The Vault mountPath here is the mount path to use when authenticating with Vault. For example, setting a value to `/v1/auth/foo`, will use the path `/v1/auth/foo/login` to authenticate with Vault. If unspecified, the default value "/v1/auth/kubernetes" will be used.
- type: string
- role:
- description: A required field containing the Vault Role to assume. A Role binds a Kubernetes ServiceAccount with a set of Vault policies.
- type: string
- secretRef:
- description: The required Secret field containing a Kubernetes ServiceAccount JWT used for authenticating with Vault. Use of 'ambient credentials' is not supported.
- type: object
- required:
- - name
- properties:
- key:
- description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
- type: string
- name:
- description: 'Name of the resource being referred to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- serviceAccountRef:
- description: A reference to a service account that will be used to request a bound token (also known as "projected token"). Compared to using "secretRef", using this field means that you don't rely on statically bound tokens. To use this field, you must configure an RBAC rule to let cert-manager request a token.
- type: object
- required:
- - name
- properties:
- name:
- description: Name of the ServiceAccount used to request a token.
- type: string
- tokenSecretRef:
- description: TokenSecretRef authenticates with Vault by presenting a token.
- type: object
- required:
- - name
- properties:
- key:
- description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
- type: string
- name:
- description: 'Name of the resource being referred to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- caBundle:
- description: Base64-encoded bundle of PEM CAs which will be used to validate the certificate chain presented by Vault. Only used if using HTTPS to connect to Vault and ignored for HTTP connections. Mutually exclusive with CABundleSecretRef. If neither CABundle nor CABundleSecretRef are defined, the certificate bundle in the cert-manager controller container is used to validate the TLS connection.
- type: string
- format: byte
- caBundleSecretRef:
- description: Reference to a Secret containing a bundle of PEM-encoded CAs to use when verifying the certificate chain presented by Vault when using HTTPS. Mutually exclusive with CABundle. If neither CABundle nor CABundleSecretRef are defined, the certificate bundle in the cert-manager controller container is used to validate the TLS connection. If no key for the Secret is specified, cert-manager will default to 'ca.crt'.
- type: object
- required:
- - name
- properties:
- key:
- description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
- type: string
- name:
- description: 'Name of the resource being referred to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- namespace:
- description: 'Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows Vault environments to support Secure Multi-tenancy. e.g: "ns1" More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces'
- type: string
- path:
- description: 'Path is the mount path of the Vault PKI backend''s `sign` endpoint, e.g: "my_pki_mount/sign/my-role-name".'
- type: string
- server:
- description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
- type: string
- venafi:
- description: Venafi configures this issuer to sign certificates using a Venafi TPP or Venafi Cloud policy zone.
- type: object
- required:
- - zone
- properties:
- cloud:
- description: Cloud specifies the Venafi cloud configuration settings. Only one of TPP or Cloud may be specified.
- type: object
- required:
- - apiTokenSecretRef
- properties:
- apiTokenSecretRef:
- description: APITokenSecretRef is a secret key selector for the Venafi Cloud API token.
- type: object
- required:
- - name
- properties:
- key:
- description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
- type: string
- name:
- description: 'Name of the resource being referred to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- url:
- description: URL is the base URL for Venafi Cloud. Defaults to "https://api.venafi.cloud/v1".
- type: string
- tpp:
- description: TPP specifies Trust Protection Platform configuration settings. Only one of TPP or Cloud may be specified.
- type: object
- required:
- - credentialsRef
- - url
- properties:
- caBundle:
- description: Base64-encoded bundle of PEM CAs which will be used to validate the certificate chain presented by the TPP server. Only used if using HTTPS; ignored for HTTP. If undefined, the certificate bundle in the cert-manager controller container is used to validate the chain.
- type: string
- format: byte
- credentialsRef:
- description: CredentialsRef is a reference to a Secret containing the username and password for the TPP server. The secret must contain two keys, 'username' and 'password'.
- type: object
- required:
- - name
- properties:
- name:
- description: 'Name of the resource being referred to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- url:
- description: 'URL is the base URL for the vedsdk endpoint of the Venafi TPP instance, for example: "https://tpp.example.com/vedsdk".'
- type: string
- zone:
- description: Zone is the Venafi Policy Zone to use for this issuer. All requests made to the Venafi platform will be restricted by the named zone policy. This field is required.
- type: string
- status:
- description: Status of the ClusterIssuer. This is set and managed automatically.
- type: object
- properties:
- acme:
- description: ACME specific status options. This field should only be set if the Issuer is configured to use an ACME server to issue certificates.
- type: object
- properties:
- lastPrivateKeyHash:
- description: LastPrivateKeyHash is a hash of the private key associated with the latest registered ACME account, in order to track changes made to registered account associated with the Issuer
- type: string
- lastRegisteredEmail:
- description: LastRegisteredEmail is the email associated with the latest registered ACME account, in order to track changes made to registered account associated with the Issuer
- type: string
- uri:
- description: URI is the unique account identifier, which can also be used to retrieve account details from the CA
- type: string
- conditions:
- description: List of status conditions to indicate the status of a CertificateRequest. Known condition types are `Ready`.
- type: array
- items:
- description: IssuerCondition contains condition information for an Issuer.
- type: object
- required:
- - status
- - type
- properties:
- lastTransitionTime:
- description: LastTransitionTime is the timestamp corresponding to the last status change of this condition.
- type: string
- format: date-time
- message:
- description: Message is a human readable description of the details of the last transition, complementing reason.
- type: string
- observedGeneration:
- description: If set, this represents the .metadata.generation that the condition was set based upon. For instance, if .metadata.generation is currently 12, but the .status.condition[x].observedGeneration is 9, the condition is out of date with respect to the current state of the Issuer.
- type: integer
- format: int64
- reason:
- description: Reason is a brief machine readable explanation for the condition's last transition.
- type: string
- status:
- description: Status of the condition, one of (`True`, `False`, `Unknown`).
- type: string
- enum:
- - "True"
- - "False"
- - Unknown
- type:
- description: Type of the condition, known values are (`Ready`).
- type: string
- x-kubernetes-list-map-keys:
- - type
- x-kubernetes-list-type: map
- served: true
- storage: true
----
-# Source: cert-manager/templates/crds.yaml
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- name: issuers.cert-manager.io
- labels:
- app: 'cert-manager'
- app.kubernetes.io/name: 'cert-manager'
- app.kubernetes.io/instance: "cert-manager"
- # Generated labels
- app.kubernetes.io/version: "v1.14.5"
-spec:
- group: cert-manager.io
- names:
- kind: Issuer
- listKind: IssuerList
- plural: issuers
- singular: issuer
- categories:
- - cert-manager
- scope: Namespaced
- versions:
- - name: v1
- subresources:
- status: {}
- additionalPrinterColumns:
- - jsonPath: .status.conditions[?(@.type=="Ready")].status
- name: Ready
- type: string
- - jsonPath: .status.conditions[?(@.type=="Ready")].message
- name: Status
- priority: 1
- type: string
- - jsonPath: .metadata.creationTimestamp
- description: CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC.
- name: Age
- type: date
- schema:
- openAPIV3Schema:
- description: An Issuer represents a certificate issuing authority which can be referenced as part of `issuerRef` fields. It is scoped to a single namespace and can therefore only be referenced by resources within the same namespace.
- type: object
- required:
- - spec
- properties:
- apiVersion:
- description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
- type: string
- kind:
- description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
- type: string
- metadata:
- type: object
- spec:
- description: Desired state of the Issuer resource.
- type: object
- properties:
- acme:
- description: ACME configures this issuer to communicate with a RFC8555 (ACME) server to obtain signed x509 certificates.
- type: object
- required:
- - privateKeySecretRef
- - server
- properties:
- caBundle:
- description: Base64-encoded bundle of PEM CAs which can be used to validate the certificate chain presented by the ACME server. Mutually exclusive with SkipTLSVerify; prefer using CABundle to prevent various kinds of security vulnerabilities. If CABundle and SkipTLSVerify are unset, the system certificate bundle inside the container is used to validate the TLS connection.
- type: string
- format: byte
- disableAccountKeyGeneration:
- description: Enables or disables generating a new ACME account key. If true, the Issuer resource will *not* request a new account but will expect the account key to be supplied via an existing secret. If false, the cert-manager system will generate a new ACME account key for the Issuer. Defaults to false.
- type: boolean
- email:
- description: Email is the email address to be associated with the ACME account. This field is optional, but it is strongly recommended to be set. It will be used to contact you in case of issues with your account or certificates, including expiry notification emails. This field may be updated after the account is initially registered.
- type: string
- enableDurationFeature:
- description: Enables requesting a Not After date on certificates that matches the duration of the certificate. This is not supported by all ACME servers like Let's Encrypt. If set to true when the ACME server does not support it it will create an error on the Order. Defaults to false.
- type: boolean
- externalAccountBinding:
- description: ExternalAccountBinding is a reference to a CA external account of the ACME server. If set, upon registration cert-manager will attempt to associate the given external account credentials with the registered ACME account.
- type: object
- required:
- - keyID
- - keySecretRef
- properties:
- keyAlgorithm:
- description: 'Deprecated: keyAlgorithm field exists for historical compatibility reasons and should not be used. The algorithm is now hardcoded to HS256 in golang/x/crypto/acme.'
- type: string
- enum:
- - HS256
- - HS384
- - HS512
- keyID:
- description: keyID is the ID of the CA key that the External Account is bound to.
- type: string
- keySecretRef:
- description: keySecretRef is a Secret Key Selector referencing a data item in a Kubernetes Secret which holds the symmetric MAC key of the External Account Binding. The `key` is the index string that is paired with the key data in the Secret and should not be confused with the key data itself, or indeed with the External Account Binding keyID above. The secret key stored in the Secret **must** be un-padded, base64 URL encoded data.
- type: object
- required:
- - name
- properties:
- key:
- description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
- type: string
- name:
- description: 'Name of the resource being referred to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- preferredChain:
- description: 'PreferredChain is the chain to use if the ACME server outputs multiple. PreferredChain is no guarantee that this one gets delivered by the ACME endpoint. For example, for Let''s Encrypt''s DST crosssign you would use: "DST Root CA X3" or "ISRG Root X1" for the newer Let''s Encrypt root CA. This value picks the first certificate bundle in the ACME alternative chains that has a certificate with this value as its issuer''s CN'
- type: string
- maxLength: 64
- privateKeySecretRef:
- description: PrivateKey is the name of a Kubernetes Secret resource that will be used to store the automatically generated ACME account private key. Optionally, a `key` may be specified to select a specific entry within the named Secret resource. If `key` is not specified, a default of `tls.key` will be used.
- type: object
- required:
- - name
- properties:
- key:
- description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
- type: string
- name:
- description: 'Name of the resource being referred to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- server:
- description: 'Server is the URL used to access the ACME server''s ''directory'' endpoint. For example, for Let''s Encrypt''s staging endpoint, you would use: "https://acme-staging-v02.api.letsencrypt.org/directory". Only ACME v2 endpoints (i.e. RFC 8555) are supported.'
- type: string
- skipTLSVerify:
- description: 'INSECURE: Enables or disables validation of the ACME server TLS certificate. If true, requests to the ACME server will not have the TLS certificate chain validated. Mutually exclusive with CABundle; prefer using CABundle to prevent various kinds of security vulnerabilities. Only enable this option in development environments. If CABundle and SkipTLSVerify are unset, the system certificate bundle inside the container is used to validate the TLS connection. Defaults to false.'
- type: boolean
- solvers:
- description: 'Solvers is a list of challenge solvers that will be used to solve ACME challenges for the matching domains. Solver configurations must be provided in order to obtain certificates from an ACME server. For more information, see: https://cert-manager.io/docs/configuration/acme/'
- type: array
- items:
- description: An ACMEChallengeSolver describes how to solve ACME challenges for the issuer it is part of. A selector may be provided to use different solving strategies for different DNS names. Only one of HTTP01 or DNS01 must be provided.
- type: object
- properties:
- dns01:
- description: Configures cert-manager to attempt to complete authorizations by performing the DNS01 challenge flow.
- type: object
- properties:
- acmeDNS:
- description: Use the 'ACME DNS' (https://github.com/joohoi/acme-dns) API to manage DNS01 challenge records.
- type: object
- required:
- - accountSecretRef
- - host
- properties:
- accountSecretRef:
- description: A reference to a specific 'key' within a Secret resource. In some instances, `key` is a required field.
- type: object
- required:
- - name
- properties:
- key:
- description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
- type: string
- name:
- description: 'Name of the resource being referred to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- host:
- type: string
- akamai:
- description: Use the Akamai DNS zone management API to manage DNS01 challenge records.
- type: object
- required:
- - accessTokenSecretRef
- - clientSecretSecretRef
- - clientTokenSecretRef
- - serviceConsumerDomain
- properties:
- accessTokenSecretRef:
- description: A reference to a specific 'key' within a Secret resource. In some instances, `key` is a required field.
- type: object
- required:
- - name
- properties:
- key:
- description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
- type: string
- name:
- description: 'Name of the resource being referred to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- clientSecretSecretRef:
- description: A reference to a specific 'key' within a Secret resource. In some instances, `key` is a required field.
- type: object
- required:
- - name
- properties:
- key:
- description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
- type: string
- name:
- description: 'Name of the resource being referred to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- clientTokenSecretRef:
- description: A reference to a specific 'key' within a Secret resource. In some instances, `key` is a required field.
- type: object
- required:
- - name
- properties:
- key:
- description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
- type: string
- name:
- description: 'Name of the resource being referred to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- serviceConsumerDomain:
- type: string
- azureDNS:
- description: Use the Microsoft Azure DNS API to manage DNS01 challenge records.
- type: object
- required:
- - resourceGroupName
- - subscriptionID
- properties:
- clientID:
- description: 'Auth: Azure Service Principal: The ClientID of the Azure Service Principal used to authenticate with Azure DNS. If set, ClientSecret and TenantID must also be set.'
- type: string
- clientSecretSecretRef:
- description: 'Auth: Azure Service Principal: A reference to a Secret containing the password associated with the Service Principal. If set, ClientID and TenantID must also be set.'
- type: object
- required:
- - name
- properties:
- key:
- description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
- type: string
- name:
- description: 'Name of the resource being referred to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- environment:
- description: name of the Azure environment (default AzurePublicCloud)
- type: string
- enum:
- - AzurePublicCloud
- - AzureChinaCloud
- - AzureGermanCloud
- - AzureUSGovernmentCloud
- hostedZoneName:
- description: name of the DNS zone that should be used
- type: string
- managedIdentity:
- description: 'Auth: Azure Workload Identity or Azure Managed Service Identity: Settings to enable Azure Workload Identity or Azure Managed Service Identity If set, ClientID, ClientSecret and TenantID must not be set.'
- type: object
- properties:
- clientID:
- description: client ID of the managed identity, can not be used at the same time as resourceID
- type: string
- resourceID:
- description: resource ID of the managed identity, can not be used at the same time as clientID Cannot be used for Azure Managed Service Identity
- type: string
- resourceGroupName:
- description: resource group the DNS zone is located in
- type: string
- subscriptionID:
- description: ID of the Azure subscription
- type: string
- tenantID:
- description: 'Auth: Azure Service Principal: The TenantID of the Azure Service Principal used to authenticate with Azure DNS. If set, ClientID and ClientSecret must also be set.'
- type: string
- cloudDNS:
- description: Use the Google Cloud DNS API to manage DNS01 challenge records.
- type: object
- required:
- - project
- properties:
- hostedZoneName:
- description: HostedZoneName is an optional field that tells cert-manager in which Cloud DNS zone the challenge record has to be created. If left empty cert-manager will automatically choose a zone.
- type: string
- project:
- type: string
- serviceAccountSecretRef:
- description: A reference to a specific 'key' within a Secret resource. In some instances, `key` is a required field.
- type: object
- required:
- - name
- properties:
- key:
- description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
- type: string
- name:
- description: 'Name of the resource being referred to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- cloudflare:
- description: Use the Cloudflare API to manage DNS01 challenge records.
- type: object
- properties:
- apiKeySecretRef:
- description: 'API key to use to authenticate with Cloudflare. Note: using an API token to authenticate is now the recommended method as it allows greater control of permissions.'
- type: object
- required:
- - name
- properties:
- key:
- description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
- type: string
- name:
- description: 'Name of the resource being referred to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- apiTokenSecretRef:
- description: API token used to authenticate with Cloudflare.
- type: object
- required:
- - name
- properties:
- key:
- description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
- type: string
- name:
- description: 'Name of the resource being referred to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- email:
- description: Email of the account, only required when using API key based authentication.
- type: string
- cnameStrategy:
- description: CNAMEStrategy configures how the DNS01 provider should handle CNAME records when found in DNS zones.
- type: string
- enum:
- - None
- - Follow
- digitalocean:
- description: Use the DigitalOcean DNS API to manage DNS01 challenge records.
- type: object
- required:
- - tokenSecretRef
- properties:
- tokenSecretRef:
- description: A reference to a specific 'key' within a Secret resource. In some instances, `key` is a required field.
- type: object
- required:
- - name
- properties:
- key:
- description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
- type: string
- name:
- description: 'Name of the resource being referred to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- rfc2136:
- description: Use RFC2136 ("Dynamic Updates in the Domain Name System") (https://datatracker.ietf.org/doc/rfc2136/) to manage DNS01 challenge records.
- type: object
- required:
- - nameserver
- properties:
- nameserver:
- description: The IP address or hostname of an authoritative DNS server supporting RFC2136 in the form host:port. If the host is an IPv6 address it must be enclosed in square brackets (e.g [2001:db8::1]) ; port is optional. This field is required.
- type: string
- tsigAlgorithm:
- description: 'The TSIG Algorithm configured in the DNS supporting RFC2136. Used only when ``tsigSecretSecretRef`` and ``tsigKeyName`` are defined. Supported values are (case-insensitive): ``HMACMD5`` (default), ``HMACSHA1``, ``HMACSHA256`` or ``HMACSHA512``.'
- type: string
- tsigKeyName:
- description: The TSIG Key name configured in the DNS. If ``tsigSecretSecretRef`` is defined, this field is required.
- type: string
- tsigSecretSecretRef:
- description: The name of the secret containing the TSIG value. If ``tsigKeyName`` is defined, this field is required.
- type: object
- required:
- - name
- properties:
- key:
- description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
- type: string
- name:
- description: 'Name of the resource being referred to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- route53:
- description: Use the AWS Route53 API to manage DNS01 challenge records.
- type: object
- required:
- - region
- properties:
- accessKeyID:
- description: 'The AccessKeyID is used for authentication. Cannot be set when SecretAccessKeyID is set. If neither the Access Key nor Key ID are set, we fall-back to using env vars, shared credentials file or AWS Instance metadata, see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials'
- type: string
- accessKeyIDSecretRef:
- description: 'The SecretAccessKey is used for authentication. If set, pull the AWS access key ID from a key within a Kubernetes Secret. Cannot be set when AccessKeyID is set. If neither the Access Key nor Key ID are set, we fall-back to using env vars, shared credentials file or AWS Instance metadata, see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials'
- type: object
- required:
- - name
- properties:
- key:
- description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
- type: string
- name:
- description: 'Name of the resource being referred to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- hostedZoneID:
- description: If set, the provider will manage only this zone in Route53 and will not do an lookup using the route53:ListHostedZonesByName api call.
- type: string
- region:
- description: Always set the region when using AccessKeyID and SecretAccessKey
- type: string
- role:
- description: Role is a Role ARN which the Route53 provider will assume using either the explicit credentials AccessKeyID/SecretAccessKey or the inferred credentials from environment variables, shared credentials file or AWS Instance metadata
- type: string
- secretAccessKeySecretRef:
- description: 'The SecretAccessKey is used for authentication. If neither the Access Key nor Key ID are set, we fall-back to using env vars, shared credentials file or AWS Instance metadata, see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials'
- type: object
- required:
- - name
- properties:
- key:
- description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
- type: string
- name:
- description: 'Name of the resource being referred to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
- type: string
- webhook:
- description: Configure an external webhook based DNS01 challenge solver to manage DNS01 challenge records.
- type: object
- required:
- - groupName
- - solverName
- properties:
- config:
- description: Additional configuration that should be passed to the webhook apiserver when challenges are processed. This can contain arbitrary JSON data. Secret values should not be specified in this stanza. If secret values are needed (e.g. credentials for a DNS service), you should use a SecretKeySelector to reference a Secret resource. For details on the schema of this field, consult the webhook provider implementation's documentation.
- x-kubernetes-preserve-unknown-fields: true
- groupName:
- description: The API group name that should be used when POSTing ChallengePayload resources to the webhook apiserver. This should be the same as the GroupName specified in the webhook provider implementation.
- type: string
- solverName:
- description: The name of the solver to use, as defined in the webhook provider implementation. This will typically be the name of the provider, e.g. 'cloudflare'.
- type: string
- http01:
- description: Configures cert-manager to attempt to complete authorizations by performing the HTTP01 challenge flow. It is not possible to obtain certificates for wildcard domain names (e.g. `*.example.com`) using the HTTP01 challenge mechanism.
- type: object
- properties:
- gatewayHTTPRoute:
- description: The Gateway API is a sig-network community API that models service networking in Kubernetes (https://gateway-api.sigs.k8s.io/). The Gateway solver will create HTTPRoutes with the specified labels in the same namespace as the challenge. This solver is experimental, and fields / behaviour may change in the future.
- type: object
- properties:
- labels:
- description: Custom labels that will be applied to HTTPRoutes created by cert-manager while solving HTTP-01 challenges.
- type: object
- additionalProperties:
- type: string
- parentRefs:
- description: 'When solving an HTTP-01 challenge, cert-manager creates an HTTPRoute. cert-manager needs to know which parentRefs should be used when creating the HTTPRoute. Usually, the parentRef references a Gateway. See: https://gateway-api.sigs.k8s.io/api-types/httproute/#attaching-to-gateways'
- type: array
- items:
- description: "ParentReference identifies an API object (usually a Gateway) that can be considered a parent of this resource (usually a route). There are two kinds of parent resources with \"Core\" support: \n * Gateway (Gateway conformance profile) * Service (Mesh conformance profile, experimental, ClusterIP Services only) \n This API may be extended in the future to support additional kinds of parent resources. \n The API object must be valid in the cluster; the Group and Kind must be registered in the cluster for this reference to be valid."
- type: object
- required:
- - name
- properties:
- group:
- description: "Group is the group of the referent. When unspecified, \"gateway.networking.k8s.io\" is inferred. To set the core API group (such as for a \"Service\" kind referent), Group must be explicitly set to \"\" (empty string). \n Support: Core"
- type: string
- default: gateway.networking.k8s.io
- maxLength: 253
- pattern: ^$|^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
- kind:
- description: "Kind is kind of the referent. \n There are two kinds of parent resources with \"Core\" support: \n * Gateway (Gateway conformance profile) * Service (Mesh conformance profile, experimental, ClusterIP Services only) \n Support for other resources is Implementation-Specific."
- type: string
- default: Gateway
- maxLength: 63
- minLength: 1
- pattern: ^[a-zA-Z]([-a-zA-Z0-9]*[a-zA-Z0-9])?$
- name:
- description: "Name is the name of the referent. \n Support: Core"
- type: string
- maxLength: 253
- minLength: 1
- namespace:
- description: "Namespace is the namespace of the referent. When unspecified, this refers to the local namespace of the Route. \n Note that there are specific rules for ParentRefs which cross namespace boundaries. Cross-namespace references are only valid if they are explicitly allowed by something in the namespace they are referring to. For example: Gateway has the AllowedRoutes field, and ReferenceGrant provides a generic way to enable any other kind of cross-namespace reference. \n ParentRefs from a Route to a Service in the same namespace are \"producer\" routes, which apply default routing rules to inbound connections from any namespace to the Service. \n ParentRefs from a Route to a Service in a different namespace are \"consumer\" routes, and these routing rules are only applied to outbound connections originating from the same namespace as the Route, for which the intended destination of the connections are a Service targeted as a ParentRef of the Route. \n Support: Core"
- type: string
- maxLength: 63
- minLength: 1
- pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
- port:
- description: "Port is the network port this Route targets. It can be interpreted differently based on the type of parent resource. \n When the parent resource is a Gateway, this targets all listeners listening on the specified port that also support this kind of Route(and select this Route). It's not recommended to set `Port` unless the networking behaviors specified in a Route must apply to a specific port as opposed to a listener(s) whose port(s) may be changed. When both Port and SectionName are specified, the name and port of the selected listener must match both specified values. \n When the parent resource is a Service, this targets a specific port in the Service spec. When both Port (experimental) and SectionName are specified, the name and port of the selected port must match both specified values. \n Implementations MAY choose to support other parent resources. Implementations supporting other types of parent resources MUST clearly document how/if Port is interpreted. \n For the purpose of status, an attachment is considered successful as long as the parent resource accepts it partially. For example, Gateway listeners can restrict which Routes can attach to them by Route kind, namespace, or hostname. If 1 of 2 Gateway listeners accept attachment from the referencing Route, the Route MUST be considered successfully attached. If no Gateway listeners accept attachment from this Route, the Route MUST be considered detached from the Gateway. \n Support: Extended \n "
- type: integer
- format: int32
- maximum: 65535
- minimum: 1
- sectionName:
- description: "SectionName is the name of a section within the target resource. In the following resources, SectionName is interpreted as the following: \n * Gateway: Listener Name. When both Port (experimental) and SectionName are specified, the name and port of the selected listener must match both specified values. * Service: Port Name. When both Port (experimental) and SectionName are specified, the name and port of the selected listener must match both specified values. Note that attaching Routes to Services as Parents is part of experimental Mesh support and is not supported for any other purpose. \n Implementations MAY choose to support attaching Routes to other resources. If that is the case, they MUST clearly document how SectionName is interpreted. \n When unspecified (empty string), this will reference the entire resource. For the purpose of status, an attachment is considered successful if at least one section in the parent resource accepts it. For example, Gateway listeners can restrict which Routes can attach to them by Route kind, namespace, or hostname. If 1 of 2 Gateway listeners accept attachment from the referencing Route, the Route MUST be considered successfully attached. If no Gateway listeners accept attachment from this Route, the Route MUST be considered detached from the Gateway. \n Support: Core"
- type: string
- maxLength: 253
- minLength: 1
- pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
- serviceType:
- description: Optional service type for Kubernetes solver service. Supported values are NodePort or ClusterIP. If unset, defaults to NodePort.
- type: string
- ingress:
- description: The ingress based HTTP01 challenge solver will solve challenges by creating or modifying Ingress resources in order to route requests for '/.well-known/acme-challenge/XYZ' to 'challenge solver' pods that are provisioned by cert-manager for each Challenge to be completed.
- type: object
- properties:
- class:
- description: This field configures the annotation `kubernetes.io/ingress.class` when creating Ingress resources to solve ACME challenges that use this challenge solver. Only one of `class`, `name` or `ingressClassName` may be specified.
- type: string
- ingressClassName:
- description: This field configures the field `ingressClassName` on the created Ingress resources used to solve ACME challenges that use this challenge solver. This is the recommended way of configuring the ingress class. Only one of `class`, `name` or `ingressClassName` may be specified.
- type: string
- ingressTemplate:
- description: Optional ingress template used to configure the ACME challenge solver ingress used for HTTP01 challenges.
- type: object
- properties:
- metadata:
- description: ObjectMeta overrides for the ingress used to solve HTTP01 challenges. Only the 'labels' and 'annotations' fields may be set. If labels or annotations overlap with in-built values, the values here will override the in-built values.
- type: object
- properties:
- annotations:
- description: Annotations that should be added to the created ACME HTTP01 solver ingress.
- type: object
- additionalProperties:
- type: string
- labels:
- description: Labels that should be added to the created ACME HTTP01 solver ingress.
- type: object
- additionalProperties:
- type: string
- name:
- description: The name of the ingress resource that should have ACME challenge solving routes inserted into it in order to solve HTTP01 challenges. This is typically used in conjunction with ingress controllers like ingress-gce, which maintains a 1:1 mapping between external IPs and ingress resources. Only one of `class`, `name` or `ingressClassName` may be specified.
- type: string
- podTemplate:
- description: Optional pod template used to configure the ACME challenge solver pods used for HTTP01 challenges.
- type: object
- properties:
- metadata:
- description: ObjectMeta overrides for the pod used to solve HTTP01 challenges. Only the 'labels' and 'annotations' fields may be set. If labels or annotations overlap with in-built values, the values here will override the in-built values.
- type: object
- properties:
- annotations:
- description: Annotations that should be added to the create ACME HTTP01 solver pods.
- type: object
- additionalProperties:
- type: string
- labels:
- description: Labels that should be added to the created ACME HTTP01 solver pods.
- type: object
- additionalProperties:
- type: string
- spec:
- description: PodSpec defines overrides for the HTTP01 challenge solver pod. Check ACMEChallengeSolverHTTP01IngressPodSpec to find out currently supported fields. All other fields will be ignored.
- type: object
- properties:
- affinity:
- description: If specified, the pod's scheduling constraints
- type: object
- properties:
- nodeAffinity:
- description: Describes node affinity scheduling rules for the pod.
- type: object
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- description: The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node matches the corresponding matchExpressions; the node(s) with the highest sum are the most preferred.
- type: array
- items:
- description: An empty preferred scheduling term matches all objects with implicit weight 0 (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op).
- type: object
- required:
- - preference
- - weight
- properties:
- preference:
- description: A node selector term, associated with the corresponding weight.
- type: object
- properties:
- matchExpressions:
- description: A list of node selector requirements by node's labels.
- type: array
- items:
- description: A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
- type: object
- required:
- - key
- - operator
- properties:
- key:
- description: The label key that the selector applies to.
- type: string
- operator:
- description: Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
- type: string
- values:
- description: An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch.
- type: array
- items:
- type: string
- matchFields:
- description: A list of node selector requirements by node's fields.
- type: array
- items:
- description: A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
- type: object
- required:
- - key
- - operator
- properties:
- key:
- description: The label key that the selector applies to.
- type: string
- operator:
- description: Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
- type: string
- values:
- description: An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch.
- type: array
- items:
- type: string
- x-kubernetes-map-type: atomic
- weight:
- description: Weight associated with matching the corresponding nodeSelectorTerm, in the range 1-100.
- type: integer
- format: int32
- requiredDuringSchedulingIgnoredDuringExecution:
- description: If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to an update), the system may or may not try to eventually evict the pod from its node.
- type: object
- required:
- - nodeSelectorTerms
- properties:
- nodeSelectorTerms:
- description: Required. A list of node selector terms. The terms are ORed.
- type: array
- items:
- description: A null or empty node selector term matches no objects. The requirements of them are ANDed. The TopologySelectorTerm type implements a subset of the NodeSelectorTerm.
- type: object
- properties:
- matchExpressions:
- description: A list of node selector requirements by node's labels.
- type: array
- items:
- description: A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
- type: object
- required:
- - key
- - operator
- properties:
- key:
- description: The label key that the selector applies to.
- type: string
- operator:
- description: Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
- type: string
- values:
- description: An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch.
- type: array
- items:
- type: string
- matchFields:
- description: A list of node selector requirements by node's fields.
- type: array
- items:
- description: A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
- type: object
- required:
- - key
- - operator
- properties:
- key:
- description: The label key that the selector applies to.
- type: string
- operator:
- description: Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
- type: string
- values:
- description: An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch.
- type: array
- items:
- type: string
- x-kubernetes-map-type: atomic
- x-kubernetes-map-type: atomic
- podAffinity:
- description: Describes pod affinity scheduling rules (e.g. co-locate this pod in the same node, zone, etc. as some other pod(s)).
- type: object
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- description: The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred.
- type: array
- items:
- description: The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)
- type: object
- required:
- - podAffinityTerm
- - weight
- properties:
- podAffinityTerm:
- description: Required. A pod affinity term, associated with the corresponding weight.
- type: object
- required:
- - topologyKey
- properties:
- labelSelector:
- description: A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods.
- type: object
- properties:
- matchExpressions:
- description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
- type: array
- items:
- description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
- type: object
- required:
- - key
- - operator
- properties:
- key:
- description: key is the label key that the selector applies to.
- type: string
- operator:
- description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
- type: string
- values:
- description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
- type: array
- items:
- type: string
- matchLabels:
- description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
- type: object
- additionalProperties:
- type: string
- x-kubernetes-map-type: atomic
- matchLabelKeys:
- description: MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate.
- type: array
- items:
- type: string
- x-kubernetes-list-type: atomic
- mismatchLabelKeys:
- description: MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate.
- type: array
- items:
- type: string
- x-kubernetes-list-type: atomic
- namespaceSelector:
- description: A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces.
- type: object
- properties:
- matchExpressions:
- description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
- type: array
- items:
- description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
- type: object
- required:
- - key
- - operator
- properties:
- key:
- description: key is the label key that the selector applies to.
- type: string
- operator:
- description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
- type: string
- values:
- description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
- type: array
- items:
- type: string
- matchLabels:
- description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
- type: object
- additionalProperties:
- type: string
- x-kubernetes-map-type: atomic
- namespaces:
- description: namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace".
- type: array
- items:
- type: string
- topologyKey:
- description: This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed.
- type: string
- weight:
- description: weight associated with matching the corresponding podAffinityTerm, in the range 1-100.
- type: integer
- format: int32
- requiredDuringSchedulingIgnoredDuringExecution:
- description: If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied.
- type: array
- items:
- description: Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running
- type: object
- required:
- - topologyKey
- properties:
- labelSelector:
- description: A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods.
- type: object
- properties:
- matchExpressions:
- description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
- type: array
- items:
- description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
- type: object
- required:
- - key
- - operator
- properties:
- key:
- description: key is the label key that the selector applies to.
- type: string
- operator:
- description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
- type: string
- values:
- description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
- type: array
- items:
- type: string
- matchLabels:
- description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
- type: object
- additionalProperties:
- type: string
- x-kubernetes-map-type: atomic
- matchLabelKeys:
- description: MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate.
- type: array
- items:
- type: string
- x-kubernetes-list-type: atomic
- mismatchLabelKeys:
- description: MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate.
- type: array
- items:
- type: string
- x-kubernetes-list-type: atomic
- namespaceSelector:
- description: A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces.
- type: object
- properties:
- matchExpressions:
- description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
- type: array
- items:
- description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
- type: object
- required:
- - key
- - operator
- properties:
- key:
- description: key is the label key that the selector applies to.
- type: string
- operator:
- description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
- type: string
- values:
- description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
- type: array
- items:
- type: string
- matchLabels:
- description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
- type: object
- additionalProperties:
- type: string
- x-kubernetes-map-type: atomic
- namespaces:
- description: namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace".
- type: array
- items:
- type: string
- topologyKey:
- description: This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed.
- type: string
- podAntiAffinity:
- description: Describes pod anti-affinity scheduling rules (e.g. avoid putting this pod in the same node, zone, etc. as some other pod(s)).
- type: object
- properties:
- preferredDuringSchedulingIgnoredDuringExecution:
- description: The scheduler will prefer to schedule pods to nodes that satisfy the anti-affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling anti-affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred.
- type: array
- items:
- description: The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)
- type: object
- required:
- - podAffinityTerm
- - weight
- properties:
- podAffinityTerm:
- description: Required. A pod affinity term, associated with the corresponding weight.
- type: object
- required:
- - topologyKey
- properties:
- labelSelector:
- description: A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods.
- type: object
- properties:
- matchExpressions:
- description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
- type: array
- items:
- description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
- type: object
- required:
- - key
- - operator
- properties:
- key:
- description: key is the label key that the selector applies to.
- type: string
- operator:
- description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
- type: string
- values:
- description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
- type: array
- items:
- type: string
- matchLabels:
- description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
- type: object
- additionalProperties:
- type: string
- x-kubernetes-map-type: atomic
- matchLabelKeys:
- description: MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate.
- type: array
- items:
- type: string
- x-kubernetes-list-type: atomic
- mismatchLabelKeys:
- description: MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate.
- type: array
- items:
- type: string
- x-kubernetes-list-type: atomic
- namespaceSelector:
- description: A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces.
- type: object
- properties:
- matchExpressions:
- description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
- type: array
- items:
- description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
- type: object
- required:
- - key
- - operator
- properties:
- key:
- description: key is the label key that the selector applies to.
- type: string
- operator:
- description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
- type: string
- values:
- description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
- type: array
- items:
- type: string
- matchLabels:
- description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
- type: object
- additionalProperties:
- type: string
- x-kubernetes-map-type: atomic
- namespaces:
- description: namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace".
- type: array
- items:
- type: string
- topologyKey:
- description: This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed.
- type: string
- weight:
- description: weight associated with matching the corresponding podAffinityTerm, in the range 1-100.
- type: integer
- format: int32
- requiredDuringSchedulingIgnoredDuringExecution:
- description: If the anti-affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the anti-affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied.
- type: array
- items:
- description: Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running
- type: object
- required:
- - topologyKey
- properties:
- labelSelector:
- description: A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods.
- type: object
- properties:
- matchExpressions:
- description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
- type: array
- items:
- description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
- type: object
- required:
- - key
- - operator
- properties:
- key:
- description: key is the label key that the selector applies to.
- type: string
- operator:
- description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
- type: string
- values:
- description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
- type: array
- items:
- type: string
- matchLabels:
- description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
- type: object
- additionalProperties:
- type: string
- x-kubernetes-map-type: atomic
- matchLabelKeys:
- description: MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate.
- type: array
- items:
- type: string
- x-kubernetes-list-type: atomic
- mismatchLabelKeys:
- description: MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate.
- type: array
- items:
- type: string
- x-kubernetes-list-type: atomic
- namespaceSelector:
- description: A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces.
- type: object
- properties:
- matchExpressions:
- description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
- type: array
- items:
- description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
- type: object
- required:
- - key
- - operator
- properties:
- key:
- description: key is the label key that the selector applies to.
- type: string
- operator:
- description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
- type: string
- values:
- description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
- type: array
- items:
- type: string
- matchLabels:
- description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
- type: object
- additionalProperties:
- type: string
- x-kubernetes-map-type: atomic
- namespaces:
- description: namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace".
- type: array
- items:
- type: string
- topologyKey:
- description: This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed.
- type: string
- imagePullSecrets:
- description: If specified, the pod's imagePullSecrets
- type: array
- items:
- description: LocalObjectReference contains enough information to let you locate the referenced object inside the same namespace.
- type: object
- properties:
- name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?'
- type: string
- x-kubernetes-map-type: atomic
- nodeSelector:
- description: '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: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/'
- type: object
- additionalProperties:
- type: string
- priorityClassName:
- description: If specified, the pod's priorityClassName.
- type: string
- serviceAccountName:
- description: If specified, the pod's service account
- type: string
- tolerations:
- description: If specified, the pod's tolerations.
- type: array
- items:
- description: The pod this Toleration is attached to tolerates any taint that matches the triple using the matching operator