Select Git revision
test_it_iem.py
-
Diaz de Arcaya Serrano, Josu authoredDiaz de Arcaya Serrano, Josu authored
test_it_iem.py 2.57 KiB
import base64
import logging
import os
import unittest
import uuid
from src.core.iem import Iem
from src.core.utils import Aws, Credentials, Openstack
LOGGER = logging.getLogger(__name__)
class TestIem(unittest.TestCase):
def __init__(self, *args, **kwargs):
super(TestIem, self).__init__(*args, **kwargs)
# Check IEM_HOME variable
self._iem_home = os.environ["IEM_HOME"]
@unittest.skipUnless(os.getenv("AWS"), "Define AWS variable to execute")
def test_deploy_destroy_aws(self):
deployment_id = str(uuid.uuid4())
a = Iem(
Credentials(
aws=Aws(
access_key_id=os.environ["AWS_ACCESS_KEY_ID"],
secret_access_key=os.environ["AWS_SECRET_ACCESS_KEY"],
)
)
)
with open("tests/resources/aws.zip", "rb") as binary_file:
bundle = base64.b64encode(binary_file.read())
a.deploy(deployment_id=deployment_id, bundle=bundle)
a.destroy(deployment_id=deployment_id)
@unittest.skipUnless(
os.getenv("INTEGRATION"), "Define INTEGRATION variable to execute"
)
def test_deploy_destroy_openstack(self):
deployment_id = str(uuid.uuid4())
a = Iem(
Credentials(
openstack=Openstack(
user_name=os.environ["OS_USERNAME"],
password=os.environ["OS_PASSWORD"],
auth_url=os.environ["OS_AUTH_URL"],
project_name=os.environ["OS_PROJECT_NAME"],
)
)
)
with open("tests/resources/openstack.zip", "rb") as binary_file:
bundle = base64.b64encode(binary_file.read())
a.deploy(deployment_id=deployment_id, bundle=bundle)
a.destroy(deployment_id=deployment_id)
@unittest.skipUnless(
os.getenv("INTEGRATION"), "Define INTEGRATION variable to execute"
)
def test_deploy_destroy_docker(self):
deployment_id = str(uuid.uuid4())
a = Iem(
Credentials(
openstack=Openstack(
user_name=os.environ["OS_USERNAME"],
password=os.environ["OS_PASSWORD"],
auth_url=os.environ["OS_AUTH_URL"],
project_name=os.environ["OS_PROJECT_NAME"],
)
)
)
with open("tests/resources/docker.zip", "rb") as binary_file:
bundle = base64.b64encode(binary_file.read())
a.deploy(deployment_id=deployment_id, bundle=bundle)
a.destroy(deployment_id=deployment_id)