Browse Source

Convert alternatives runtimes molecule to ansible verifier

pull/12302/head
Max Gautier 3 months ago
parent
commit
5671037b0e
Failed to extract signature
9 changed files with 64 additions and 98 deletions
  1. 2
      roles/container-engine/gvisor/molecule/default/molecule.yml
  2. 29
      roles/container-engine/gvisor/molecule/default/tests/test_default.py
  3. 19
      roles/container-engine/gvisor/molecule/default/verify.yml
  4. 2
      roles/container-engine/kata-containers/molecule/default/molecule.yml
  5. 37
      roles/container-engine/kata-containers/molecule/default/tests/test_default.py
  6. 23
      roles/container-engine/kata-containers/molecule/default/verify.yml
  7. 2
      roles/container-engine/youki/molecule/default/molecule.yml
  8. 29
      roles/container-engine/youki/molecule/default/tests/test_default.py
  9. 19
      roles/container-engine/youki/molecule/default/verify.yml

2
roles/container-engine/gvisor/molecule/default/molecule.yml

@ -25,4 +25,4 @@ provisioner:
create: ../../../../../tests/cloud_playbooks/create-kubevirt.yml
prepare: ../../../molecule/prepare.yml
verifier:
name: testinfra
name: ansible

29
roles/container-engine/gvisor/molecule/default/tests/test_default.py

@ -1,29 +0,0 @@
import os
import testinfra.utils.ansible_runner
testinfra_hosts = testinfra.utils.ansible_runner.AnsibleRunner(
os.environ['MOLECULE_INVENTORY_FILE']).get_hosts('all')
def test_run(host):
gvisorruntime = "/usr/local/bin/runsc"
with host.sudo():
cmd = host.command(gvisorruntime + " --version")
assert cmd.rc == 0
assert "runsc version" in cmd.stdout
def test_run_pod(host):
runtime = "runsc"
run_command = "/usr/local/bin/crictl run --with-pull --runtime {} /tmp/container.json /tmp/sandbox.json".format(runtime)
with host.sudo():
cmd = host.command(run_command)
assert cmd.rc == 0
with host.sudo():
log_f = host.file("/tmp/gvisor1.0.log")
assert log_f.exists
assert b"Hello from Docker" in log_f.content

19
roles/container-engine/gvisor/molecule/default/verify.yml

@ -0,0 +1,19 @@
---
- name: Test gvisor
hosts: all
gather_facts: false
tasks:
- name: Get kubespray defaults
import_role:
name: ../../../../../kubespray_defaults
- name: Test version
command: "{{ bin_dir }}/runsc --version"
register: runsc_version
failed_when: >
runsc_version is failed or
'runsc version' not in runsc_version.stdout
- name: Test run container
import_playbook: ../../../molecule/test_runtime.yml
vars:
container_runtime: runsc

2
roles/container-engine/kata-containers/molecule/default/molecule.yml

@ -25,4 +25,4 @@ provisioner:
create: ../../../../../tests/cloud_playbooks/create-kubevirt.yml
prepare: ../../../molecule/prepare.yml
verifier:
name: testinfra
name: ansible

37
roles/container-engine/kata-containers/molecule/default/tests/test_default.py

@ -1,37 +0,0 @@
import os
import testinfra.utils.ansible_runner
testinfra_hosts = testinfra.utils.ansible_runner.AnsibleRunner(
os.environ['MOLECULE_INVENTORY_FILE']).get_hosts('all')
def test_run(host):
kataruntime = "/opt/kata/bin/kata-runtime"
with host.sudo():
cmd = host.command(kataruntime + " version")
assert cmd.rc == 0
assert "kata-runtime" in cmd.stdout
def test_run_check(host):
kataruntime = "/opt/kata/bin/kata-runtime"
with host.sudo():
cmd = host.command(kataruntime + " check")
assert cmd.rc == 0
assert "System is capable of running" in cmd.stdout
def test_run_pod(host):
runtime = "kata-qemu"
run_command = "/usr/local/bin/crictl run --with-pull --runtime {} /tmp/container.json /tmp/sandbox.json".format(runtime)
with host.sudo():
cmd = host.command(run_command)
assert cmd.rc == 0
with host.sudo():
log_f = host.file("/tmp/kata1.0.log")
assert log_f.exists
assert b"Hello from Docker" in log_f.content

23
roles/container-engine/kata-containers/molecule/default/verify.yml

@ -0,0 +1,23 @@
---
- name: Test kata-containers
hosts: all
gather_facts: false
tasks:
- name: Test version
command: "/opt/kata/bin/kata-runtime version"
register: version
failed_when: >
version is failed or
'kata-runtime' not in version.stdout
- name: Test version
command: "/opt/kata/bin/kata-runtime check"
register: check
failed_when: >
check is failed or
'System is capable of running' not in check.stdout
- name: Test run container
import_playbook: ../../../molecule/test_runtime.yml
vars:
container_runtime: kata-qemu
container_manager: containerd

2
roles/container-engine/youki/molecule/default/molecule.yml

@ -25,4 +25,4 @@ provisioner:
create: ../../../../../tests/cloud_playbooks/create-kubevirt.yml
prepare: ../../../molecule/prepare.yml
verifier:
name: testinfra
name: ansible

29
roles/container-engine/youki/molecule/default/tests/test_default.py

@ -1,29 +0,0 @@
import os
import testinfra.utils.ansible_runner
testinfra_hosts = testinfra.utils.ansible_runner.AnsibleRunner(
os.environ['MOLECULE_INVENTORY_FILE']).get_hosts('all')
def test_run(host):
youkiruntime = "/usr/local/bin/youki"
with host.sudo():
cmd = host.command(youkiruntime + " --version")
assert cmd.rc == 0
assert "youki" in cmd.stdout
def test_run_pod(host):
runtime = "youki"
run_command = "/usr/local/bin/crictl run --with-pull --runtime {} /tmp/container.json /tmp/sandbox.json".format(runtime)
with host.sudo():
cmd = host.command(run_command)
assert cmd.rc == 0
with host.sudo():
log_f = host.file("/tmp/youki1.0.log")
assert log_f.exists
assert b"Hello from Docker" in log_f.content

19
roles/container-engine/youki/molecule/default/verify.yml

@ -0,0 +1,19 @@
---
- name: Test youki
hosts: all
gather_facts: false
tasks:
- name: Get kubespray defaults
import_role:
name: ../../../../../kubespray_defaults
- name: Test version
command: "{{ bin_dir }}/youki --version"
register: youki_version
failed_when: >
youki_version is failed or
'youki' not in youki_version.stdout
- name: Test run container
import_playbook: ../../../molecule/test_runtime.yml
vars:
container_runtime: youki
Loading…
Cancel
Save