.. This work is licensed under a Creative Commons Attribution 4.0 .. International License. .. http://creativecommons.org/licenses/by/4.0 .. Copyright (C) 2022 Nordix Foundation .. Links .. _oom_dev_testing_local_deploy: OOM Developer Testing Deployment ================================ Developing and testing changes to the existing OOM project can be done locally by setting up some additional tools to host the updated helm charts. **Step 1.** Clone the OOM repository from ONAP gerrit:: > git clone http://gerrit.onap.org/r/oom > cd oom/kubernetes **Step 2.** Install Helm Plugin required to push helm charts to local repo:: > helm plugin install https://github.com/chartmuseum/helm-push.git --version 0.9.0 .. note:: The ``--version 0.9.0`` is required as new version of helm (3.7.0 and up) is now using ``push`` directly and helm-push is using ``cm-push`` starting version ``0.10.0`` and up. **Step 3.** Install Chartmuseum Chart museum is required to host the helm charts locally when deploying in a development environment:: > curl -LO https://s3.amazonaws.com/chartmuseum/release/latest/bin/linux/amd64/chartmuseum > chmod +x ./chartmuseum > mv ./chartmuseum /usr/local/bin **Step 4.** To setup a local Helm server to store the ONAP charts:: > mkdir -p ~/helm3-storage > chartmuseum --storage local --storage-local-rootdir ~/helm3-storage -port 8879 & Note the port number that is listed and use it in the Helm repo add as follows:: > helm repo add local http://127.0.0.1:8879 **Step 5.** Verify your Helm repository setup with:: > helm repo list NAME URL local http://127.0.0.1:8879 **Step 6.** Build a local Helm repository (from the kubernetes directory):: > make SKIP_LINT=TRUE [HELM_BIN=] all `HELM_BIN` Sets the helm binary to be used. The default value use helm from PATH **Step 7.** Display the onap charts that are available to be deployed:: > helm repo update > helm search repo local .. collapse:: Helm search repo output .. include:: ../../resources/helm/helm-search.txt :code: yaml | .. note:: The setup of the Helm repository is a one time activity. If you make changes to your deployment charts or values be sure to use ``make`` to update your local Helm repository.