A custom Kubernetes API type to implement a Pulumi Stack, it's configuration, and job run settings.
A controller that manages user-created Stack CRs by running a Pulumi program until completion of the update execution run.
A managed Kubernetes application that uses the Stack Controller to process Stack CRs.
- Deployment - Generated YAML Manifest
- Role - Generated YAML Manifest
- RoleBinding - Generated YAML Manifest
- ServiceAccount - Generated YAML Manifest
Install the following binaries.
Quickly build the operator to check that it compiles.
This runs a fast build that is dynamically-linked.
make build
Codegen and Install the CRD in your existing Kubernetes cluster.
make codegen install-crds
Builds a Docker image with a statically-linked binary.
make build-image
Push the built image to DockerHub.
make push-image
If the DockerHub repo is private, create an imagePullSecret named
pulumi-kubernetes-operator
in the namespace for the operator to use.
This will create a Secret based on your default Docker credentials in $HOME/.docker/config.json
.
kubectl create secret generic pulumi-kubernetes-operator --from-file=.dockerconfigjson=$HOME/.docker/config.json --type=kubernetes.io/dockerconfigjson
Deploy the operator into the cluster via KUBECONFIG
.
make deploy
To execute the test suite of Pulumi Stacks against the operator, run the following:
make test