From d079dd67e3b6f3cca560444809e0d6cedad9d9d3 Mon Sep 17 00:00:00 2001 From: Jason Date: Thu, 10 Jan 2019 17:48:15 -0600 Subject: [PATCH] Add locals_base option This option allows you to define 'locals' style dependencies as relative to a $locals_base variable, similar to how $tarballs_base works. This can help you avoid defining the same hard-coded path in kolla-build, and instead pass it to kolla via a flag. Similar to $tarballs_base, this works via oslo_config's existing interpolation functionality[1]. Example usage: [DEFAULT] locals_base = /opt/openstack [neutron-base] type = local location = $locals_base/neutron/neutron-stable-rocky.tar.gz [1]: https://docs.openstack.org/oslo.config/latest/reference/configuration-files.html#option-value-interpolation Change-Id: I8670db4dde4dac26df28502637eadc6b854261cf --- doc/source/admin/image-building.rst | 13 +++++++++++++ kolla/common/config.py | 2 ++ 2 files changed, 15 insertions(+) diff --git a/doc/source/admin/image-building.rst b/doc/source/admin/image-building.rst index e386873616..de5f4d8e8b 100644 --- a/doc/source/admin/image-building.rst +++ b/doc/source/admin/image-building.rst @@ -149,6 +149,19 @@ The ``kolla-build.conf`` file could look like this: Note that the name of the section should exactly match the image name you are trying to change source location for. +If using the ``local`` source type, the ``--locals-base`` flag can be used to +define a path prefix, which you can reference in the config. + +.. path etc/kolla/kolla-build.conf +.. code-block:: ini + + [DEFAULTS] + locals_base = /home/kolla/src + + [heat-base] + type = local + location = $locals_base/heat + .. _dockerfile-customisation: Dockerfile customisation diff --git a/kolla/common/config.py b/kolla/common/config.py index 58a4e18aa3..dca9e278c9 100644 --- a/kolla/common/config.py +++ b/kolla/common/config.py @@ -168,6 +168,8 @@ _CLI_OPTS = [ help='Show image dependencies (filtering supported)'), cfg.BoolOpt('list-images', help='Show all available images (filtering supported)'), + cfg.StrOpt('locals-base', default='./', + help='Base directory for local source resolution'), cfg.StrOpt('namespace', short='n', default='kolla', help='The Docker namespace name'), cfg.StrOpt('network_mode', default='host',