aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichal Nasiadka <mnasiadka@gmail.com>2019-03-11 11:49:27 +0100
committerMichal Nasiadka <mnasiadka@gmail.com>2019-08-08 13:56:42 +0000
commite3108d93c69dbad0c575da719f842d36c195a673 (patch)
treef22ebe4eeaf00ce262bc54a338d0713fc13d40fb
parentbc717cba729815a7c8165c541006f13ac194dd4e (diff)
downloadkolla-e3108d93c69dbad0c575da719f842d36c195a673.tar.gz
kolla-e3108d93c69dbad0c575da719f842d36c195a673.zip
Bump up pkg versions in kolla-toolbox
Currently we use Ansible 2.2 in kolla_toolbox, while lowest supported version is 2.6 - bumping up to 2.8. * Use upper constrains in Dockerfile.j2, instead of pinning them in here - Ansible is pinned to 2.8.* * Add no_log=True in kolla_keystone_user * Add endpoint_type as a param in kolla_keystone_service - now AnsibleModule requires all options to be defined, otherwise it throws an UnsupportedParameter error * Add openstack_release variable in kolla/common/config.py which is used for fetching upper-constraints.txt for desired release Change-Id: I2cb0ea2fde1b408d48b39bf7a54b898e850d31aa
-rw-r--r--docker/kolla-toolbox/Dockerfile.j216
-rw-r--r--docker/kolla-toolbox/kolla_keystone_service.py3
-rw-r--r--docker/kolla-toolbox/kolla_keystone_user.py2
-rwxr-xr-xkolla/common/config.py3
-rwxr-xr-xkolla/image/build.py2
5 files changed, 17 insertions, 9 deletions
diff --git a/docker/kolla-toolbox/Dockerfile.j2 b/docker/kolla-toolbox/Dockerfile.j2
index 50f0095fd..683650809 100644
--- a/docker/kolla-toolbox/Dockerfile.j2
+++ b/docker/kolla-toolbox/Dockerfile.j2
@@ -60,20 +60,22 @@ RUN {{ macros.install_pip(kolla_toolbox_pip_virtualenv_packages|customizable("pi
ENV PATH {{ virtualenv_path }}/bin:$PATH
{% set kolla_toolbox_pip_packages = [
- 'ansible==2.2.0.0',
- '"cmd2<0.9.0"',
+ 'ansible==2.8.*',
+ 'cmd2',
'influxdb',
'mysqlclient',
- 'os-client-config==1.29.0',
- 'pbr==4.0.0',
+ 'os-client-config',
+ 'pbr',
'pymongo',
- 'python-openstackclient==3.14.0',
+ 'python-openstackclient',
'pytz',
'pyudev',
- 'shade==1.27.1'
+ 'shade'
] %}
-RUN {{ macros.install_pip(kolla_toolbox_pip_packages | customizable("pip_packages"), constraints=false) }} \
+RUN mkdir -p /requirements \
+ && curl -sSL -o /requirements/upper-constraints.txt https://opendev.org/openstack/requirements/raw/branch/{{openstack_release}}/upper-constraints.txt \
+ && {{ macros.install_pip(kolla_toolbox_pip_packages | customizable("pip_packages")) }} \
&& mkdir -p /etc/ansible /usr/share/ansible \
&& echo 'localhost ansible_connection=local ansible_python_interpreter={{ virtualenv_path }}/bin/python' > /etc/ansible/hosts \
&& sed -i 's| "identity_api_version": "2.0",| "identity_api_version": "3",|' {{ os_client_config }}
diff --git a/docker/kolla-toolbox/kolla_keystone_service.py b/docker/kolla-toolbox/kolla_keystone_service.py
index 866350821..74db35385 100644
--- a/docker/kolla-toolbox/kolla_keystone_service.py
+++ b/docker/kolla-toolbox/kolla_keystone_service.py
@@ -37,7 +37,8 @@ def main():
service_type=dict(required=True, type='str'),
url=dict(required=True, type='str'),
interface=dict(required=True, type='str'),
- endpoint_region=dict(required=True, type='str')
+ endpoint_region=dict(required=True, type='str'),
+ endpoint_type=dict(type='str')
)
module = AnsibleModule(argument_spec)
diff --git a/docker/kolla-toolbox/kolla_keystone_user.py b/docker/kolla-toolbox/kolla_keystone_user.py
index af7d0d6ec..c9631cd7c 100644
--- a/docker/kolla-toolbox/kolla_keystone_user.py
+++ b/docker/kolla-toolbox/kolla_keystone_user.py
@@ -24,7 +24,7 @@ from ansible.module_utils.openstack import openstack_full_argument_spec
def main():
argument_spec = openstack_full_argument_spec(
- password=dict(required=True, type='str'),
+ password=dict(required=True, type='str', no_log=True),
project=dict(required=True, type='str'),
role=dict(required=True, type='str'),
user=dict(required=True, type='str')
diff --git a/kolla/common/config.py b/kolla/common/config.py
index d537303ad..c6d4e269a 100755
--- a/kolla/common/config.py
+++ b/kolla/common/config.py
@@ -35,6 +35,7 @@ DISTRO_RELEASE = {
'debian': 'buster',
'ubuntu': '18.04',
}
+OPENSTACK_RELEASE = 'master'
# This is noarch repository so we will use it on all architectures
DELOREAN = \
@@ -269,6 +270,8 @@ _CLI_OPTS = [
help=('Squash the image layers. WARNING: it will consume lots'
' of disk IO. "docker-squash" tool is required, install'
' it by "pip install docker-squash"')),
+ cfg.StrOpt('openstack-release', default=OPENSTACK_RELEASE,
+ help='OpenStack release for building kolla-toolbox'),
]
_BASE_OPTS = [
diff --git a/kolla/image/build.py b/kolla/image/build.py
index 7b8dcd9af..8790f4e6b 100755
--- a/kolla/image/build.py
+++ b/kolla/image/build.py
@@ -672,6 +672,7 @@ class KollaWorker(object):
elif self.base_arch == 'ppc64le':
self.debian_arch = 'ppc64el'
self.images = list()
+ self.openstack_release = conf.openstack_release
rpm_setup_config = ([repo_file for repo_file in
conf.rpm_setup_config if repo_file is not None])
self.rpm_setup = self.build_rpm_setup(rpm_setup_config)
@@ -918,6 +919,7 @@ class KollaWorker(object):
'image_prefix': self.image_prefix,
'install_type': self.install_type,
'namespace': self.namespace,
+ 'openstack_release': self.openstack_release,
'tag': self.tag,
'maintainer': self.maintainer,
'kolla_version': kolla_version,