.. index:: Configuration; my-values.yaml .. _my-values.yaml: ``my-values.yaml`` ============================================ To deploy your instance, you have to overwrite some global or chart-specific values. For that, maintain your **own** values file – which will be called ``my-values.yaml`` in the following. Please create that file outside the upstream :term:`Git` repository of CoCalc OnPrem's HELM charts. Do not edit the ``values.yaml`` in the upstream repository, because otherwise you end up with merge conflicts, etc. Also, we recommend using :term:`Git` to keep track of your changes – see :ref:`backup`. - In ``/cocalc`` is a central ``values.yaml`` file. It defines the configuration for the sub-charts and some global values. All parameters are explained in detail inside that file as comments. - Your configurations will be added *on top* of that file. It is also read in by default, when you tell helm the location of that chart. - Feel free to check out the sub-directories in ``./charts`` in case you want to know more about all details. - After familiarizing with that, **create your own my-values.yaml file**. This will overwrite the default values with the ones relevant for your setup using the ``-f my-values.yaml`` switch of ``helm`` (ref: `Helm Install `_). You can call it however you like – just point to it with the ``-f [filename.yaml]`` switch. - To overwrite values in sub-charts, write the values indented under their ``"sub-chart-name":`` section. - To define global values, list them in the ``global:`` section. For example, to configure the :ref:`storage backend `, the chart files are in ``/cocalc/charts/storage/``, which means these settings come under ``storage:``. There are also global storage settings used by other charts, which come under ``global.storage:``. Learn more about :term:`HELM sub-charts and global values`. .. note:: Regarding YAML, ``global.storage`` in the text above means that these values come under the ``global:`` section in the ``my-values.yaml`` file. In that large indented block is a ``storage:`` section, which is indented even further. The actual values are defined inside that double-indented block. The ``global:`` section is particularly important, since it – as its name suggests – defines global parameters. Probably a good starting point is this: .. literalinclude:: ../_files/my-values.yaml :language: yaml :linenos: