Skip to content

Files

Latest commit

a0c653b · May 24, 2024

History

History

operator

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
Jan 16, 2024
Dec 17, 2022
Dec 17, 2022
Jan 16, 2024
Jan 16, 2024
Feb 27, 2023
Apr 25, 2024
Jan 16, 2024
Apr 12, 2023
May 24, 2024
Aug 19, 2022
Jan 16, 2024
Nov 14, 2022
Aug 19, 2022
Dec 8, 2021
Jan 16, 2024
Jan 16, 2024
Jan 27, 2022
Mar 8, 2023
Dec 17, 2022
Aug 19, 2022
Oct 2, 2019
Jan 16, 2024
Jan 16, 2024
Jan 16, 2024
May 4, 2023
Nov 23, 2020

Kubebuilder v2 Seldon Operator

Development

You need kubebuilder envtest assets for tests to run see here.

Note if you update K8s version APIs and don't update kubebuilder assets you will get test failures as tests run kube-apiserver and etcd from these assets which need to include the correct version of kubernetes.

Prerequisites

For running locally kind, kustomize and kubebuilder should be installed.

Testing

If you installed kubebuilder outside of /usr/local/kubebuilder then you will need to set the env var KUBEBUILDER_ASSETS for example:

export KUBEBUILDER_ASSETS=/home/clive/tools/kubebuilder_2.3.0_linux_amd64/bin

Start a kind cluster

kind create cluster
export KUBECONFIG="$(kind get kubeconfig-path --name="kind")"

Install CRD and cert-manager

make install
make install-cert-manager

Build image

make docker-build

Standard Deploy

make deploy

Local Development Deploy

Deploy with webhook config set to point to host

make deploy-local

When running update tls certificates locally

make tls-extract

Now delete the cluster Deployment as we will run the manager locally:

kubectl delete deployment -n seldon-system seldon-controller-manager

Now we can run locally:

make run

You should now be able to create SeldonDeployments and Webhook calls will hit the local running manager. The same applies if you debug from GoLand. Though for GoLand you will need to export the KUBECONFIG to the debug configuration.

You should delete the Operator running in the cluster at this point.

Build Helm Chart

Use the Makefile in the ./helm directory. Ensure you have pyyaml in your python environment.

Openshift

see here