Switch the undercloud to deploy Podman by default starting from Stein

Starting from Stein, we want the Undercloud to be deploying Podman
containers instead of Docker containers.
This patch switches container_cli to be 'podman', and make sure we only
configure this new parameter in Stein and beyond.
Also run the container CLI with sudo, it's required to Podman on CentOS7.

blueprint podman-support
Change-Id: I21662de8ac0101a25c2b73a4650bb4af0f5df89a
This commit is contained in:
Emilien Macchi
2018-10-07 09:56:20 -04:00
parent 43006f48e5
commit 540beaa53e
5 changed files with 11 additions and 5 deletions

View File

@@ -222,8 +222,8 @@ sudo kill $pidof_tcpdump
{% endif %} {% endif %}
{% if release not in ['newton', 'ocata', 'pike', 'queens'] %} {% if release not in ['newton', 'ocata', 'pike', 'queens', 'rocky'] %}
container_cli="{{ undercloud_container_cli | default('docker') }}" container_cli="{{ undercloud_container_cli | default('podman') }}"
cont=$(sudo $container_cli ps | grep executor | awk {'print $1'}) cont=$(sudo $container_cli ps | grep executor | awk {'print $1'})
sudo $container_cli exec --user root $cont bash -c "easy_install pip && pip install ara" sudo $container_cli exec --user root $cont bash -c "easy_install pip && pip install ara"
# check it # check it

View File

@@ -97,7 +97,7 @@ https://docs.openstack.org/tripleo-quickstart/latest/accessing-libvirt.html
- `undercloud_roles_data`: <null> -- A custom t-h-t roles file. Consumed from ``undercloud_templates_path`` - `undercloud_roles_data`: <null> -- A custom t-h-t roles file. Consumed from ``undercloud_templates_path``
or an alternative location as well. or an alternative location as well.
- `undercloud_selinux_enabled`: <'true'> -- Enabled for RHEL by default, Disabled for CentOS by default - `undercloud_selinux_enabled`: <'true'> -- Enabled for RHEL by default, Disabled for CentOS by default
- `undercloud_container_cli`: <'docker'> -- Container CLI to use for the Undercloud deployment. Default to 'docker'. - `undercloud_container_cli`: <'podman'> -- Container CLI to use for the Undercloud deployment. Default to 'podman'.
Role Network Variables Role Network Variables
---------------------- ----------------------

View File

@@ -91,7 +91,12 @@ undercloud_selinux_enabled: >-
true true
{%- endif -%} {%- endif -%}
undercloud_container_cli: docker undercloud_container_cli: >-
{% if release not in ['newton', 'ocata', 'pike', 'queens', 'rocky'] -%}
podman
{% else %}
docker
{% endif %}
# Define a custom t-h-t installation for UC # Define a custom t-h-t installation for UC
undercloud_custom_tht_script: custom-tht-script.sh.j2 undercloud_custom_tht_script: custom-tht-script.sh.j2

View File

@@ -11,6 +11,7 @@ parameter_defaults:
modify_vars: modify_vars:
tasks_from: yum_update.yml tasks_from: yum_update.yml
yum_repos_dir_path: /etc/yum.repos.d yum_repos_dir_path: /etc/yum.repos.d
container_build_tool: buildah
update_repo: "{{ update_containers_repo }}" update_repo: "{{ update_containers_repo }}"
{% endif %} {% endif %}
set: set:

View File

@@ -211,7 +211,7 @@ inspection_runbench = {{undercloud_inspection_runbench}}
# services. (boolean value) # services. (boolean value)
undercloud_debug = {{undercloud_undercloud_debug}} undercloud_debug = {{undercloud_undercloud_debug}}
{% if containerized_undercloud|bool %} {% if containerized_undercloud|bool and release != 'rocky' %}
# Container CLI used for deployment; # Container CLI used for deployment;
# Can be docker or podman. (string value) # Can be docker or podman. (string value)
container_cli = {{undercloud_container_cli}} container_cli = {{undercloud_container_cli}}