-
Notifications
You must be signed in to change notification settings - Fork 90
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
We are seeing failures with newer versions of Ansible due to the presence of symlinks. For example: ``` error: can't copy 'ansible/roles/mrlesmithjr.manage_lvm/molecule/kvm/tests': doesn't exist or not a regular file ```
- Loading branch information
Showing
5 changed files
with
93 additions
and
3 deletions.
There are no files selected for viewing
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
"""PyTest Fixtures.""" | ||
from __future__ import absolute_import | ||
import os | ||
import pytest | ||
|
||
|
||
def pytest_runtest_setup(item): | ||
"""Run tests only when under molecule with testinfra installed.""" | ||
try: | ||
import testinfra | ||
except ImportError: | ||
pytest.skip("Test requires testinfra", allow_module_level=True) | ||
if "MOLECULE_INVENTORY_FILE" in os.environ: | ||
pytest.testinfra_hosts = testinfra.utils.ansible_runner.AnsibleRunner( | ||
os.environ["MOLECULE_INVENTORY_FILE"] | ||
).get_hosts("all") | ||
else: | ||
pytest.skip( | ||
"Test should run only from inside molecule.", allow_module_level=True | ||
) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,33 @@ | ||
"""Role testing files using testinfra.""" | ||
|
||
|
||
def test_lvm_package_shall_be_installed(host): | ||
assert host.package("lvm2").is_installed | ||
|
||
|
||
def test_non_persistent_volume_group_is_created(host): | ||
command = """sudo vgdisplay | grep -c 'my_vg'""" | ||
cmd = host.run(command) | ||
assert "1" in cmd.stdout | ||
|
||
|
||
def test_mylv_logical_volume_is_created(host): | ||
command = """sudo lvs -o lv_name my_vg --separator='|' --noheadings \ | ||
| grep -c 'my_lv'""" | ||
cmd = host.run(command) | ||
assert int(cmd.stdout.rstrip()) >= 1 | ||
|
||
|
||
def test_mylv_logical_volume2_is_created(host): | ||
command = """sudo lvs -o lv_name my_vg --separator='|' --noheadings \ | ||
| grep -c 'my_lw'""" | ||
cmd = host.run(command) | ||
assert int(cmd.stdout.rstrip()) >= 1 | ||
|
||
|
||
def test_volume_is_mounted(host): | ||
host.file("/var/lib/mountpoint").mode == 0o731 | ||
|
||
|
||
def test_volume2_is_mounted(host): | ||
host.file("/var/lib/mountpoint2").mode == 0o731 |
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
"""PyTest Fixtures.""" | ||
from __future__ import absolute_import | ||
import os | ||
import pytest | ||
|
||
|
||
def pytest_runtest_setup(item): | ||
"""Run tests only when under molecule with testinfra installed.""" | ||
try: | ||
import testinfra | ||
except ImportError: | ||
pytest.skip("Test requires testinfra", allow_module_level=True) | ||
if "MOLECULE_INVENTORY_FILE" in os.environ: | ||
pytest.testinfra_hosts = testinfra.utils.ansible_runner.AnsibleRunner( | ||
os.environ["MOLECULE_INVENTORY_FILE"] | ||
).get_hosts("all") | ||
else: | ||
pytest.skip( | ||
"Test should run only from inside molecule.", allow_module_level=True | ||
) |
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
"""PyTest Fixtures.""" | ||
from __future__ import absolute_import | ||
import os | ||
import pytest | ||
|
||
|
||
def pytest_runtest_setup(item): | ||
"""Run tests only when under molecule with testinfra installed.""" | ||
try: | ||
import testinfra | ||
except ImportError: | ||
pytest.skip("Test requires testinfra", allow_module_level=True) | ||
if "MOLECULE_INVENTORY_FILE" in os.environ: | ||
pytest.testinfra_hosts = testinfra.utils.ansible_runner.AnsibleRunner( | ||
os.environ["MOLECULE_INVENTORY_FILE"] | ||
).get_hosts("all") | ||
else: | ||
pytest.skip( | ||
"Test should run only from inside molecule.", allow_module_level=True | ||
) |