From 05dabe743613392ff73608467ab294d314cf7dd8 Mon Sep 17 00:00:00 2001 From: Joe Kratzat Date: Wed, 9 Mar 2022 14:48:57 -0500 Subject: [PATCH] docs: add a simple local development guide --- .gitignore | 3 + docs/src/SUMMARY.md | 1 + docs/src/development/development.md | 92 ++++++++++++++++++++++++++ docs/src/images/tenancy_namespace.png | Bin 0 -> 22441 bytes hack/auth-config-template.yaml | 12 ++++ 5 files changed, 108 insertions(+) create mode 100644 docs/src/development/development.md create mode 100644 docs/src/images/tenancy_namespace.png create mode 100644 hack/auth-config-template.yaml diff --git a/.gitignore b/.gitignore index 5b304658..e0a6776f 100644 --- a/.gitignore +++ b/.gitignore @@ -44,3 +44,6 @@ test/e2e/data/infrastructure-oci/v1beta1/cluster-template-bare-metal.yaml test/e2e/data/infrastructure-oci/v1beta1/cluster-template-custom-networking-seclist.yaml test/e2e/data/infrastructure-oci/v1beta1/cluster-template-custom-networking-nsg.yaml test/e2e/data/infrastructure-oci/v1beta1/cluster-template-multiple-node-nsg.yaml + +# local development files +auth-config.yaml diff --git a/docs/src/SUMMARY.md b/docs/src/SUMMARY.md index 03f621db..e1525753 100644 --- a/docs/src/SUMMARY.md +++ b/docs/src/SUMMARY.md @@ -29,5 +29,6 @@ - [Using Calico](./networking/calico.md) - [Using Antrea](./networking/antrea.md) - [Custom Networking](./networking/custom-networking.md) +- [Developer Guide](./development/development.md) - [Reference](./reference/reference.md) - [Glossary](./reference/glossary.md) diff --git a/docs/src/development/development.md b/docs/src/development/development.md new file mode 100644 index 00000000..8b0f0f3c --- /dev/null +++ b/docs/src/development/development.md @@ -0,0 +1,92 @@ +# Developer Guide + +## Install prerequisites + +1. Install make. + - `$ xcode-select --install` on macOS. + - `$ sudo apt-get install build-essential` on Ubuntu Linux + - `$ sudo dnf install make gcc` on Oracle Linux +1. Install [Go][go] +1. Install [KIND][kind] + - `$ GO111MODULE="on" go get sigs.k8s.io/kind@v0.12.0`. +1. Install [Kustomize][kustomize] + - [install instructions][kustomizelinux] +1. Install [envsubst][envsubst] + - `$ go get github.com/a8m/envsubst/cmd/envsubst` + +## Fork and get the source + +Fork the [`cluster-api-provider-oci repo`](https://github.com/oracle/cluster-api-provider-oci). +See the [forking](https://docs.github.com/en/get-started/quickstart/fork-a-repo) and +[cloning](https://docs.github.com/en/repositories/creating-and-managing-repositories/cloning-a-repository) +documentation for more details. + +Example: +```bash +cd "$(go env GOPATH)"/src +mkdir sigs.k8s.io +cd sigs.k8s.io/ +git clone git@github.com:/cluster-api-provider-oci.git +cd cluster-api-provider-oci +git remote add upstream git@github.com:orale/cluster-api-provider-oci.git +git fetch upstream +``` + +## Running a local management cluster for development + +The simplest way to test the code is to run it on your local development workstation. +If you have `capoci-controller-manager` running in your management cluster, +please scale down the deployment, otherwise running your development build will conflict with the +currently running `capoci-controller-manager`: + +```bash +kubectl scale deployment/capoci-controller-manager --replicas=0 -n cluster-api-provider-oci-system +``` + +To build, run and test all your code changes locally, copy the +`hack/auth-config-template.yaml` file to `/auth-config.yml` in your +cloned copy of the repository and modify it to match your local configuration. + +Then run the following commands: + +```bash +export AUTH_CONFIG_DIR="/auth-config.yaml" +make run +``` + +If you want to test your changes using an image built locally using `docker build`, execute the +following steps: + +```bash +export TAG= +export REGISTRY=".ocir.io/" +make docker-build +``` + +`region` for example, `phx` or `us-phoenix-1`. See the +[Available Endpoints](https://docs.oracle.com/en-us/iaas/Content/Registry/Concepts/registryprerequisites.htm#Availab) +topic in the Oracle Cloud Infrastructure Registry (OCIR) documentation. + +`namespace` is the auto-generated [object storage namespace](https://docs.oracle.com/en-us/iaas/Content/Object/Tasks/understandingnamespaces.htm) +string of the tenancy (as shown on the tenancy information page) that owns the +repository to which you want to push the image. + +![tenancy_namespace](../images/tenancy_namespace.png) + +Push the resulting container image to the repository. For more info on how to push +to OCIR see + + +Execute the following steps to install the image + +```bash +make release-manifests +kubectl apply -f out/infrastructure-oci/v0.1.1-development/infrastructure-components.yaml +``` + +[go]: https://golang.org/doc/install +[go.mod]: https://github.com/kubernetes-sigs/cluster-api-provider-aws/blob/master/go.mod +[kind]: https://sigs.k8s.io/kind +[kustomize]: https://github.com/kubernetes-sigs/kustomize +[kustomizelinux]: https://github.com/kubernetes-sigs/kustomize/blob/master/docs/INSTALL.md +[envsubst]: https://github.com/a8m/envsubst diff --git a/docs/src/images/tenancy_namespace.png b/docs/src/images/tenancy_namespace.png new file mode 100644 index 0000000000000000000000000000000000000000..803064500604685a6a6963698d3102ca58e9ed2a GIT binary patch literal 22441 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ξ3(wFD|1F^ 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 +tenancy: ocid1.tenancy.oc1.. +user: ocid1.user.oc1.. +key: | + -----BEGIN RSA PRIVATE KEY----- + + -----END RSA PRIVATE KEY----- +fingerprint: + +useInstancePrincipals: false \ No newline at end of file