├── .gitmodules ├── .workshop ├── build ├── jupyterhub_config.py ├── settings.sh ├── setup └── templates │ ├── clusterroles-spawner-rules.yaml │ └── configmap-session-resources.yaml ├── Dockerfile ├── LICENSE ├── README.md ├── docs ├── jupyter-login.png ├── starting-up.png ├── workshop-console.png └── workshop-terminal.png ├── patches ├── podset_controller.go.diff └── podset_types.go.diff ├── profiles └── go.sh ├── scripts ├── buildah └── podman ├── sudoers ├── buildah └── podman ├── tests └── Dockerfile └── workshop ├── config.js ├── content ├── creating-an-etcd-cluster │ ├── 01-enable-the-etcd-operator.md │ ├── 02-listing-installed-operators.md │ ├── 03-creating-the-etcd-cluster.md │ ├── 04-editing-the-cluster-details.md │ ├── 05-deleting-the-etcd-cluster.md │ ├── 06-using-the-command-line.md │ ├── create-etcd-cluster-2.png │ ├── create-etcd-cluster.png │ ├── delete-etcd-cluster-from-details-2.png │ ├── delete-etcd-cluster-from-details.png │ ├── delete-etcd-cluster-from-list-2.png │ ├── delete-etcd-cluster-from-list.png │ ├── editing-etcd-cluster-2.png │ ├── editing-etcd-cluster.png │ ├── etcd-cluster-details-2.png │ ├── etcd-cluster-details.png │ ├── etcd-cluster-list.png │ ├── etcd-community-operator-popup.png │ ├── etcd-operator-description-2.png │ ├── etcd-operator-description.png │ ├── etcd-operator-details.png │ ├── etcd-operator-installed-2.png │ ├── etcd-operator-subscription-installed.png │ ├── etcd-operator-subscription.png │ ├── installed-operators.png │ ├── operatorhub-etcd-not-installed.png │ ├── operatorhub-listing.png │ ├── project-list.png │ ├── project-overview-page-2.png │ └── project-overview-page.png ├── test-environment.md ├── using-the-operator-sdk │ ├── 01-intro-to-the-operator-sdk.md │ ├── 02-initial-project-scaffolding.md │ ├── 03-define-the-custom-resource.md │ ├── 04-adding-custom-attributes.md │ ├── 05-load-crd-into-the-cluster.md │ ├── 06-adding-the-controller-code.md │ ├── 07-define-the-reconcile-function.md │ ├── 08-local-testing-of-the-operator.md │ ├── 09-building-the-operator-image.md │ ├── 10-deploying-the-operator-image.md │ └── 11-testing-the-deployed-operator.md ├── verify-environment.md ├── workshop-overview.md └── workshop-summary.md ├── modules.yaml └── workshop.yaml /.gitmodules: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/.gitmodules -------------------------------------------------------------------------------- /.workshop/build: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/.workshop/build -------------------------------------------------------------------------------- /.workshop/jupyterhub_config.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/.workshop/jupyterhub_config.py -------------------------------------------------------------------------------- /.workshop/settings.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/.workshop/settings.sh -------------------------------------------------------------------------------- /.workshop/setup: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | oc project ${PROJECT_NAMESPACE} 4 | -------------------------------------------------------------------------------- /.workshop/templates/clusterroles-spawner-rules.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/.workshop/templates/clusterroles-spawner-rules.yaml -------------------------------------------------------------------------------- /.workshop/templates/configmap-session-resources.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/.workshop/templates/configmap-session-resources.yaml -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/Dockerfile -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/README.md -------------------------------------------------------------------------------- /docs/jupyter-login.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/docs/jupyter-login.png -------------------------------------------------------------------------------- /docs/starting-up.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/docs/starting-up.png -------------------------------------------------------------------------------- /docs/workshop-console.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/docs/workshop-console.png -------------------------------------------------------------------------------- /docs/workshop-terminal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/docs/workshop-terminal.png -------------------------------------------------------------------------------- /patches/podset_controller.go.diff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/patches/podset_controller.go.diff -------------------------------------------------------------------------------- /patches/podset_types.go.diff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/patches/podset_types.go.diff -------------------------------------------------------------------------------- /profiles/go.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/profiles/go.sh -------------------------------------------------------------------------------- /scripts/buildah: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/scripts/buildah -------------------------------------------------------------------------------- /scripts/podman: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/scripts/podman -------------------------------------------------------------------------------- /sudoers/buildah: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/sudoers/buildah -------------------------------------------------------------------------------- /sudoers/podman: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/sudoers/podman -------------------------------------------------------------------------------- /tests/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM busybox:latest 2 | 3 | RUN touch /tmp/helloworld 4 | 5 | EXPOSE 8080 6 | 7 | CMD [ "sleep", "3600" ] 8 | -------------------------------------------------------------------------------- /workshop/config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/workshop/config.js -------------------------------------------------------------------------------- /workshop/content/creating-an-etcd-cluster/01-enable-the-etcd-operator.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/workshop/content/creating-an-etcd-cluster/01-enable-the-etcd-operator.md -------------------------------------------------------------------------------- /workshop/content/creating-an-etcd-cluster/02-listing-installed-operators.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/workshop/content/creating-an-etcd-cluster/02-listing-installed-operators.md -------------------------------------------------------------------------------- /workshop/content/creating-an-etcd-cluster/03-creating-the-etcd-cluster.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/workshop/content/creating-an-etcd-cluster/03-creating-the-etcd-cluster.md -------------------------------------------------------------------------------- /workshop/content/creating-an-etcd-cluster/04-editing-the-cluster-details.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/workshop/content/creating-an-etcd-cluster/04-editing-the-cluster-details.md -------------------------------------------------------------------------------- /workshop/content/creating-an-etcd-cluster/05-deleting-the-etcd-cluster.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/workshop/content/creating-an-etcd-cluster/05-deleting-the-etcd-cluster.md -------------------------------------------------------------------------------- /workshop/content/creating-an-etcd-cluster/06-using-the-command-line.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/workshop/content/creating-an-etcd-cluster/06-using-the-command-line.md -------------------------------------------------------------------------------- /workshop/content/creating-an-etcd-cluster/create-etcd-cluster-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/workshop/content/creating-an-etcd-cluster/create-etcd-cluster-2.png -------------------------------------------------------------------------------- /workshop/content/creating-an-etcd-cluster/create-etcd-cluster.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/workshop/content/creating-an-etcd-cluster/create-etcd-cluster.png -------------------------------------------------------------------------------- /workshop/content/creating-an-etcd-cluster/delete-etcd-cluster-from-details-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/workshop/content/creating-an-etcd-cluster/delete-etcd-cluster-from-details-2.png -------------------------------------------------------------------------------- /workshop/content/creating-an-etcd-cluster/delete-etcd-cluster-from-details.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/workshop/content/creating-an-etcd-cluster/delete-etcd-cluster-from-details.png -------------------------------------------------------------------------------- /workshop/content/creating-an-etcd-cluster/delete-etcd-cluster-from-list-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/workshop/content/creating-an-etcd-cluster/delete-etcd-cluster-from-list-2.png -------------------------------------------------------------------------------- /workshop/content/creating-an-etcd-cluster/delete-etcd-cluster-from-list.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/workshop/content/creating-an-etcd-cluster/delete-etcd-cluster-from-list.png -------------------------------------------------------------------------------- /workshop/content/creating-an-etcd-cluster/editing-etcd-cluster-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/workshop/content/creating-an-etcd-cluster/editing-etcd-cluster-2.png -------------------------------------------------------------------------------- /workshop/content/creating-an-etcd-cluster/editing-etcd-cluster.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/workshop/content/creating-an-etcd-cluster/editing-etcd-cluster.png -------------------------------------------------------------------------------- /workshop/content/creating-an-etcd-cluster/etcd-cluster-details-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/workshop/content/creating-an-etcd-cluster/etcd-cluster-details-2.png -------------------------------------------------------------------------------- /workshop/content/creating-an-etcd-cluster/etcd-cluster-details.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/workshop/content/creating-an-etcd-cluster/etcd-cluster-details.png -------------------------------------------------------------------------------- /workshop/content/creating-an-etcd-cluster/etcd-cluster-list.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/workshop/content/creating-an-etcd-cluster/etcd-cluster-list.png -------------------------------------------------------------------------------- /workshop/content/creating-an-etcd-cluster/etcd-community-operator-popup.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/workshop/content/creating-an-etcd-cluster/etcd-community-operator-popup.png -------------------------------------------------------------------------------- /workshop/content/creating-an-etcd-cluster/etcd-operator-description-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/workshop/content/creating-an-etcd-cluster/etcd-operator-description-2.png -------------------------------------------------------------------------------- /workshop/content/creating-an-etcd-cluster/etcd-operator-description.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/workshop/content/creating-an-etcd-cluster/etcd-operator-description.png -------------------------------------------------------------------------------- /workshop/content/creating-an-etcd-cluster/etcd-operator-details.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/workshop/content/creating-an-etcd-cluster/etcd-operator-details.png -------------------------------------------------------------------------------- /workshop/content/creating-an-etcd-cluster/etcd-operator-installed-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/workshop/content/creating-an-etcd-cluster/etcd-operator-installed-2.png -------------------------------------------------------------------------------- /workshop/content/creating-an-etcd-cluster/etcd-operator-subscription-installed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/workshop/content/creating-an-etcd-cluster/etcd-operator-subscription-installed.png -------------------------------------------------------------------------------- /workshop/content/creating-an-etcd-cluster/etcd-operator-subscription.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/workshop/content/creating-an-etcd-cluster/etcd-operator-subscription.png -------------------------------------------------------------------------------- /workshop/content/creating-an-etcd-cluster/installed-operators.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/workshop/content/creating-an-etcd-cluster/installed-operators.png -------------------------------------------------------------------------------- /workshop/content/creating-an-etcd-cluster/operatorhub-etcd-not-installed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/workshop/content/creating-an-etcd-cluster/operatorhub-etcd-not-installed.png -------------------------------------------------------------------------------- /workshop/content/creating-an-etcd-cluster/operatorhub-listing.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/workshop/content/creating-an-etcd-cluster/operatorhub-listing.png -------------------------------------------------------------------------------- /workshop/content/creating-an-etcd-cluster/project-list.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/workshop/content/creating-an-etcd-cluster/project-list.png -------------------------------------------------------------------------------- /workshop/content/creating-an-etcd-cluster/project-overview-page-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/workshop/content/creating-an-etcd-cluster/project-overview-page-2.png -------------------------------------------------------------------------------- /workshop/content/creating-an-etcd-cluster/project-overview-page.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/workshop/content/creating-an-etcd-cluster/project-overview-page.png -------------------------------------------------------------------------------- /workshop/content/test-environment.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/workshop/content/test-environment.md -------------------------------------------------------------------------------- /workshop/content/using-the-operator-sdk/01-intro-to-the-operator-sdk.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/workshop/content/using-the-operator-sdk/01-intro-to-the-operator-sdk.md -------------------------------------------------------------------------------- /workshop/content/using-the-operator-sdk/02-initial-project-scaffolding.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/workshop/content/using-the-operator-sdk/02-initial-project-scaffolding.md -------------------------------------------------------------------------------- /workshop/content/using-the-operator-sdk/03-define-the-custom-resource.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/workshop/content/using-the-operator-sdk/03-define-the-custom-resource.md -------------------------------------------------------------------------------- /workshop/content/using-the-operator-sdk/04-adding-custom-attributes.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/workshop/content/using-the-operator-sdk/04-adding-custom-attributes.md -------------------------------------------------------------------------------- /workshop/content/using-the-operator-sdk/05-load-crd-into-the-cluster.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/workshop/content/using-the-operator-sdk/05-load-crd-into-the-cluster.md -------------------------------------------------------------------------------- /workshop/content/using-the-operator-sdk/06-adding-the-controller-code.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/workshop/content/using-the-operator-sdk/06-adding-the-controller-code.md -------------------------------------------------------------------------------- /workshop/content/using-the-operator-sdk/07-define-the-reconcile-function.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/workshop/content/using-the-operator-sdk/07-define-the-reconcile-function.md -------------------------------------------------------------------------------- /workshop/content/using-the-operator-sdk/08-local-testing-of-the-operator.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/workshop/content/using-the-operator-sdk/08-local-testing-of-the-operator.md -------------------------------------------------------------------------------- /workshop/content/using-the-operator-sdk/09-building-the-operator-image.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/workshop/content/using-the-operator-sdk/09-building-the-operator-image.md -------------------------------------------------------------------------------- /workshop/content/using-the-operator-sdk/10-deploying-the-operator-image.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/workshop/content/using-the-operator-sdk/10-deploying-the-operator-image.md -------------------------------------------------------------------------------- /workshop/content/using-the-operator-sdk/11-testing-the-deployed-operator.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/workshop/content/using-the-operator-sdk/11-testing-the-deployed-operator.md -------------------------------------------------------------------------------- /workshop/content/verify-environment.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/workshop/content/verify-environment.md -------------------------------------------------------------------------------- /workshop/content/workshop-overview.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/workshop/content/workshop-overview.md -------------------------------------------------------------------------------- /workshop/content/workshop-summary.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/workshop/content/workshop-summary.md -------------------------------------------------------------------------------- /workshop/modules.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/workshop/modules.yaml -------------------------------------------------------------------------------- /workshop/workshop.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openshift-labs/lab-build-an-operator/HEAD/workshop/workshop.yaml --------------------------------------------------------------------------------