From a621d89d6aaa43e3afe9667c45ddd9196b84f1a5 Mon Sep 17 00:00:00 2001 From: Sagi Shnaidman Date: Thu, 7 May 2020 16:49:23 +0300 Subject: [PATCH] Replace podman commands by module Change-Id: I62814cc874cad88990b3e90da2787107e8c141a1 --- .../molecule/default/prepare.yml | 11 ++++- .../molecule/legacy_vars/prepare.yml | 11 ++++- .../molecule/podman-rm-stopped/prepare.yml | 15 +++++-- .../molecule/default/prepare.yml | 11 ++++- .../molecule/default/prepare.yml | 16 +++++--- .../tripleo_podman/molecule/login/prepare.yml | 41 ++++++++++++++----- 6 files changed, 81 insertions(+), 24 deletions(-) diff --git a/tripleo_ansible/roles/tripleo_container_rm/molecule/default/prepare.yml b/tripleo_ansible/roles/tripleo_container_rm/molecule/default/prepare.yml index cddbd3942..adeef81c5 100644 --- a/tripleo_ansible/roles/tripleo_container_rm/molecule/default/prepare.yml +++ b/tripleo_ansible/roles/tripleo_container_rm/molecule/default/prepare.yml @@ -32,10 +32,17 @@ state: latest - name: Pull container image - command: "podman pull fedora" + podman_image: + name: fedora - name: Create test containers - command: "podman run -itd --systemd true --name {{ item }} fedora bash" + podman_container: + name: "{{ item }}" + interactive: true + tty: true + detach: true + image: fedora + command: bash with_items: - podman-container1 - podman-container2 diff --git a/tripleo_ansible/roles/tripleo_container_rm/molecule/legacy_vars/prepare.yml b/tripleo_ansible/roles/tripleo_container_rm/molecule/legacy_vars/prepare.yml index b0d8b8d63..de7ccaa26 100644 --- a/tripleo_ansible/roles/tripleo_container_rm/molecule/legacy_vars/prepare.yml +++ b/tripleo_ansible/roles/tripleo_container_rm/molecule/legacy_vars/prepare.yml @@ -32,10 +32,17 @@ state: latest - name: Pull container image - command: "podman pull fedora" + podman_image: + name: fedora - name: Create test containers - command: "podman run -itd --systemd true --name {{ item }} fedora bash" + podman_container: + name: "{{ item }}" + interactive: true + tty: true + detach: true + image: fedora + command: bash with_items: - podman-legacy-container1 - podman-legacy-container2 diff --git a/tripleo_ansible/roles/tripleo_container_rm/molecule/podman-rm-stopped/prepare.yml b/tripleo_ansible/roles/tripleo_container_rm/molecule/podman-rm-stopped/prepare.yml index 1601d1201..2ef972ef8 100644 --- a/tripleo_ansible/roles/tripleo_container_rm/molecule/podman-rm-stopped/prepare.yml +++ b/tripleo_ansible/roles/tripleo_container_rm/molecule/podman-rm-stopped/prepare.yml @@ -32,16 +32,25 @@ state: latest - name: Pull container image - command: "podman pull fedora" + podman_image: + name: fedora - name: Create test containers - command: "podman run -itd --systemd true --name {{ item }} fedora bash" + podman_container: + name: "{{ item }}" + interactive: true + tty: true + detach: true + image: fedora + command: bash with_items: - podman-container1 - podman-container2 - name: Stop test containers - command: "podman stop {{ item }}" + podman_container: + name: "{{ item }}" + state: stopped with_items: - podman-container1 - podman-container2 diff --git a/tripleo_ansible/roles/tripleo_container_stop/molecule/default/prepare.yml b/tripleo_ansible/roles/tripleo_container_stop/molecule/default/prepare.yml index cddbd3942..adeef81c5 100644 --- a/tripleo_ansible/roles/tripleo_container_stop/molecule/default/prepare.yml +++ b/tripleo_ansible/roles/tripleo_container_stop/molecule/default/prepare.yml @@ -32,10 +32,17 @@ state: latest - name: Pull container image - command: "podman pull fedora" + podman_image: + name: fedora - name: Create test containers - command: "podman run -itd --systemd true --name {{ item }} fedora bash" + podman_container: + name: "{{ item }}" + interactive: true + tty: true + detach: true + image: fedora + command: bash with_items: - podman-container1 - podman-container2 diff --git a/tripleo_ansible/roles/tripleo_keystone_resources/molecule/default/prepare.yml b/tripleo_ansible/roles/tripleo_keystone_resources/molecule/default/prepare.yml index 4a7925a41..279cefa5b 100644 --- a/tripleo_ansible/roles/tripleo_keystone_resources/molecule/default/prepare.yml +++ b/tripleo_ansible/roles/tripleo_keystone_resources/molecule/default/prepare.yml @@ -38,9 +38,15 @@ shell: "podman build -t keystone-img -f {{ playbook_dir }}/Dockerfile.keystone ." become: false - - name: Run keystone container - shell: |- - podman rm --force keystone-podman || true - podman run -d -p 5000:5000 --name keystone-podman keystone-img - sleep 30 + - name: Create test containers + podman_container: + name: keystone-podman + image: keystone-img + detach: true + ports: + - "5000:5000" become: false + + - name: Give keystone time to go up + pause: + seconds: 30 diff --git a/tripleo_ansible/roles/tripleo_podman/molecule/login/prepare.yml b/tripleo_ansible/roles/tripleo_podman/molecule/login/prepare.yml index 1c79b19fb..e8f9484a7 100644 --- a/tripleo_ansible/roles/tripleo_podman/molecule/login/prepare.yml +++ b/tripleo_ansible/roles/tripleo_podman/molecule/login/prepare.yml @@ -35,23 +35,44 @@ - role: test_deps tasks: + + - name: Ensure registry doesn't exist + podman_container: + name: registry + state: absent + + - name: Pull ubuntu image + podman_image: + name: ubuntu + tag: 16.04 + + - name: Create auth directory + file: + state: directory + path: "{{ ansible_user_dir }}/auth" + - name: Create registry shell: |- - podman container rm --force registry || true - podman pull ubuntu:16.04 podman tag ubuntu:16.04 localhost:5000/my-ubuntu - mkdir -p {{ ansible_user_dir }}/auth podman run --entrypoint htpasswd registry:2 -Bbn testuser testpassword > {{ ansible_user_dir }}/auth/htpasswd - podman run -d -p 5000:5000 --restart=always \ - --name registry \ - -v "{{ ansible_user_dir }}/auth:/auth" \ - -e "REGISTRY_AUTH=htpasswd" \ - -e "REGISTRY_AUTH_HTPASSWD_REALM=Registry Realm" \ - -e REGISTRY_AUTH_HTPASSWD_PATH=/auth/htpasswd \ - registry:2 args: executable: /bin/bash + - name: Create registry + podman_container: + name: registry + image: "registry:2" + restart_policy: always + detach: true + ports: + - "5000:5000" + volume: + - "{{ ansible_user_dir }}/auth:/auth" + env: + REGISTRY_AUTH: "htpasswd" + REGISTRY_AUTH_HTPASSWD_REALM: "Registry Realm" + REGISTRY_AUTH_HTPASSWD_PATH: "/auth/htpasswd" + - name: Run install include_role: name: tripleo_podman