aboutsummaryrefslogtreecommitdiffstats
path: root/docs/sections/guides/deployment_guides/oom_dev_testing_local_deploy.rst
blob: 50701dd597cc5732636e04996df22d7b36ff3df8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
.. 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=<HELM_PATH>] 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.