feat: add basic tests to verify packages are installed and ssh is listening
This commit is contained in:
parent
9901351198
commit
371a88c8de
|
@ -2,3 +2,12 @@ default:
|
||||||
echo yes | terraform destroy
|
echo yes | terraform destroy
|
||||||
terraform plan --out=plan
|
terraform plan --out=plan
|
||||||
terraform apply plan
|
terraform apply plan
|
||||||
|
|
||||||
|
configure:
|
||||||
|
./ansible/init.sh
|
||||||
|
|
||||||
|
test:
|
||||||
|
. ./tests/venv/bin/activate && \
|
||||||
|
py.test --hosts='ansible://all' \
|
||||||
|
--ansible-inventory=./ansible
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,9 @@
|
||||||
|
attrs==22.1.0
|
||||||
|
iniconfig==1.1.1
|
||||||
|
packaging==21.3
|
||||||
|
pluggy==1.0.0
|
||||||
|
py==1.11.0
|
||||||
|
pyparsing==3.0.9
|
||||||
|
pytest==7.1.3
|
||||||
|
pytest-testinfra==6.8.0
|
||||||
|
tomli==2.0.1
|
|
@ -0,0 +1,57 @@
|
||||||
|
import os
|
||||||
|
|
||||||
|
def test_packages_are_installed(host):
|
||||||
|
packages = [
|
||||||
|
"git",
|
||||||
|
"zip",
|
||||||
|
"wget",
|
||||||
|
"curl",
|
||||||
|
"nginx",
|
||||||
|
]
|
||||||
|
for p in packages:
|
||||||
|
print(f"[*] Checking if {p} is installed")
|
||||||
|
pkg = host.package(p)
|
||||||
|
assert pkg.is_installed
|
||||||
|
|
||||||
|
#def test_nginx_service_running_and_enabled(host):
|
||||||
|
# service = host.service("nginx")
|
||||||
|
# assert service.is_running
|
||||||
|
# assert service.is_enabled
|
||||||
|
|
||||||
|
|
||||||
|
def test_ssh_is_listening(host):
|
||||||
|
socket = host.socket(f"tcp://0.0.0.0:22")
|
||||||
|
assert socket.is_listening
|
||||||
|
|
||||||
|
#
|
||||||
|
#def test_ufw_is_installed(host):
|
||||||
|
# pkg = host.package("ufw")
|
||||||
|
# assert pkg.is_installed
|
||||||
|
|
||||||
|
|
||||||
|
#def test_ufw_service_running_and_enabled(host):
|
||||||
|
# service = host.service("ufw")
|
||||||
|
# assert service.is_running
|
||||||
|
# assert service.is_enabled
|
||||||
|
#
|
||||||
|
#
|
||||||
|
#def test_fail2ban_is_installed(host):
|
||||||
|
# pkg = host.package("fail2ban")
|
||||||
|
# assert pkg.is_installed
|
||||||
|
#
|
||||||
|
#
|
||||||
|
#def test_fail2ban_is_enabled_and_running(host):
|
||||||
|
# service = host.service("fail2ban")
|
||||||
|
# assert service.is_running
|
||||||
|
# assert service.is_enabled
|
||||||
|
#
|
||||||
|
#
|
||||||
|
#def test_ssh_is_installed(host):
|
||||||
|
# pkg = host.package("openssh-server")
|
||||||
|
# assert pkg.is_installed
|
||||||
|
#
|
||||||
|
#
|
||||||
|
#def test_ssh_is_enabled_and_running(host):
|
||||||
|
# service = host.service("sshd")
|
||||||
|
# assert service.is_running
|
||||||
|
# assert service.is_enabled
|
Loading…
Reference in New Issue