|
|
@@ -957,6 +957,15 @@ then clone the repo:</p>
|
|
|
<span class="nb">cd</span> external-secrets
|
|
|
</code></pre></div>
|
|
|
|
|
|
+<p>If you want to run controller tests you also need to install kubebuilder's <code>envtest</code>:</p>
|
|
|
+<div class="highlight"><pre><span></span><code>export KUBEBUILDER_TOOLS_VERSION='1.20.2' # check for latest version or a version that has support to what you are testing
|
|
|
+
|
|
|
+curl -sSLo envtest-bins.tar.gz "https://storage.googleapis.com/kubebuilder-tools/kubebuilder-tools-$KUBEBUILDER_TOOLS_VERSION-linux-amd64.tar.gz"
|
|
|
+
|
|
|
+sudo mkdir -p /usr/local/kubebuilder
|
|
|
+sudo tar -C /usr/local/kubebuilder --strip-components=1 -zvxf envtest-bins.tar.gz
|
|
|
+</code></pre></div>
|
|
|
+
|
|
|
<h2 id="building-testing">Building & Testing</h2>
|
|
|
<p>The project uses the <code>make</code> build system. It'll run code generators, tests and
|
|
|
static code analysis.</p>
|
|
|
@@ -973,22 +982,33 @@ make lint
|
|
|
<div class="highlight"><pre><span></span><code>make docs
|
|
|
</code></pre></div></p>
|
|
|
<h2 id="installing">Installing</h2>
|
|
|
-<p>To install the External Secret Operator's CRDs into a Kubernetes Cluster run:</p>
|
|
|
-<div class="highlight"><pre><span></span><code>make crds.install
|
|
|
+<p>To install the External Secret Operator into a Kubernetes Cluster run:</p>
|
|
|
+<div class="highlight"><pre><span></span><code>helm repo add external-secrets https://charts.external-secrets.io
|
|
|
+helm repo update
|
|
|
+helm install external-secrets external-secrets/external-secrets
|
|
|
</code></pre></div>
|
|
|
|
|
|
-<p>Apply the sample resources:
|
|
|
-<div class="highlight"><pre><span></span><code>kubectl apply -f docs/snippets/basic-secret-store.yaml
|
|
|
-kubectl apply -f docs/snippets/basic-external-secret.yaml
|
|
|
-</code></pre></div></p>
|
|
|
-<p>You can run the controller on your host system for development purposes:</p>
|
|
|
-<div class="highlight"><pre><span></span><code>make run
|
|
|
+<p>You can alternatively run the controller on your host system for development purposes:</p>
|
|
|
+<div class="highlight"><pre><span></span><code>make crds.install
|
|
|
+make run
|
|
|
</code></pre></div>
|
|
|
|
|
|
<p>To remove the CRDs run:</p>
|
|
|
<div class="highlight"><pre><span></span><code>make crds.uninstall
|
|
|
</code></pre></div>
|
|
|
|
|
|
+<p>If you need to test some other k8s integrations and need the operator to be deployed to the actuall cluster while developing, you can use the following workflow:</p>
|
|
|
+<div class="highlight"><pre><span></span><code>kind create cluster --name external-secrets
|
|
|
+
|
|
|
+export TAG=v2
|
|
|
+export IMAGE=eso-local
|
|
|
+
|
|
|
+docker build . -t $IMAGE:$TAG --build-arg TARGETARCH=amd64 --build-arg TARGETOS=linux
|
|
|
+
|
|
|
+make helm.generate
|
|
|
+helm upgrade --install external-secrets ./deploy/charts/external-secrets/ --set image.repository=$IMAGE --set image.tag=$TAG
|
|
|
+</code></pre></div>
|
|
|
+
|
|
|
<div class="admonition note">
|
|
|
<p class="admonition-title">Contributing Flow</p>
|
|
|
<p>The HOW TO guide for contributing is at the <a href="../contributing-process/">Contributing Process</a> page.</p>
|