Merge "[UUI] Service Mesh Compliance for UUI"
[oom.git] / docs / sections / guides / deployment_guides / oom_dev_testing_local_deploy.rst
1 .. This work is licensed under a Creative Commons Attribution 4.0
2 .. International License.
3 .. http://creativecommons.org/licenses/by/4.0
4 .. Copyright (C) 2022 Nordix Foundation
5
6 .. Links
7
8 .. _oom_dev_testing_local_deploy:
9
10 OOM Developer Testing Deployment
11 ================================
12
13 Developing and testing changes to the existing OOM project can be done locally by setting up some additional
14 tools to host the updated helm charts.
15
16 **Step 1.** Clone the OOM repository from ONAP gerrit::
17
18   > git clone http://gerrit.onap.org/r/oom
19
20   > cd oom/kubernetes
21
22
23 **Step 2.** Install Helm Plugin required to push helm charts to local repo::
24
25   > helm plugin install https://github.com/chartmuseum/helm-push.git --version 0.9.0
26
27 .. note::
28   The ``--version 0.9.0`` is required as new version of helm (3.7.0 and up) is
29   now using ``push`` directly and helm-push is using ``cm-push`` starting
30   version ``0.10.0`` and up.
31
32 **Step 3.** Install Chartmuseum
33
34 Chart museum is required to host the helm charts locally when deploying in a development environment::
35
36   > curl -LO https://s3.amazonaws.com/chartmuseum/release/latest/bin/linux/amd64/chartmuseum
37
38   > chmod +x ./chartmuseum
39
40   > mv ./chartmuseum /usr/local/bin
41
42 **Step 4.** To setup a local Helm server to store the ONAP charts::
43
44   > mkdir -p ~/helm3-storage
45
46   > chartmuseum --storage local --storage-local-rootdir ~/helm3-storage -port 8879 &
47
48 Note the port number that is listed and use it in the Helm repo add as follows::
49
50   > helm repo add local http://127.0.0.1:8879
51
52 **Step 5.** Verify your Helm repository setup with::
53
54   > helm repo list
55   NAME   URL
56   local  http://127.0.0.1:8879
57
58 **Step 6.** Build a local Helm repository (from the kubernetes directory)::
59
60   > make SKIP_LINT=TRUE [HELM_BIN=<HELM_PATH>] all
61
62 `HELM_BIN`
63   Sets the helm binary to be used. The default value use helm from PATH
64
65
66 **Step 7.** Display the onap charts that are available to be deployed::
67
68   > helm repo update
69
70   > helm search repo local
71
72
73 .. collapse:: Helm search repo output
74
75     .. include:: ../../resources/helm/helm-search.txt
76        :code: yaml
77
78 |
79
80 .. note::
81   The setup of the Helm repository is a one time activity. If you make changes
82   to your deployment charts or values be sure to use ``make`` to update your
83   local Helm repository.
84
85
86
87