Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions MANIFEST.in
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
recursive-include integration_tests/data/compose *.yml
File renamed without changes.
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,8 @@
from . import get_container_manager
from .requests_helpers import requests_retry

from testutils.infra.cli import CliUseradm, CliTenantadm
from testutils.infra.container_manager.kubernetes_manager import isK8S
from integration_testutils.infra.cli import CliUseradm, CliTenantadm
from integration_testutils.infra.container_manager.kubernetes_manager import isK8S


class Authentication:
Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,8 @@
# See the License for the specific language governing permissions and
# limitations under the License.

from testutils.util import websockets
from testutils.api import deviceconnect
from integration_testutils.util import websockets
from integration_testutils.api import deviceconnect
from . import api_version
from . import get_container_manager

Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
12 changes: 6 additions & 6 deletions tests/common_setup.py → integration_tests/common_setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,14 +16,14 @@
import pytest
import uuid

from . import conftest
from integration_tests import conftest

from .MenderAPI import authentication, auth, devauth, reset_mender_api, DeviceAuthV2
from integration_tests.MenderAPI import authentication, auth, devauth, reset_mender_api, DeviceAuthV2

from testutils.common import User, new_tenant_client
from testutils.infra.cli import CliTenantadm
from testutils.infra.device import MenderDevice, MenderDeviceGroup
from testutils.infra.container_manager import factory
from integration_testutils.common import User, new_tenant_client
from integration_testutils.infra.cli import CliTenantadm
from integration_testutils.infra.device import MenderDevice, MenderDeviceGroup
from integration_testutils.infra.container_manager import factory

container_factory = factory.get_factory()

Expand Down
29 changes: 24 additions & 5 deletions tests/conftest.py → integration_tests/conftest.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,15 +21,16 @@
import packaging.version

import multiprocessing
import importlib.resources

import filelock
import pytest
from filelock import FileLock
from testutils.infra.container_manager.base import BaseContainerManagerNamespace
from testutils.infra.device import MenderDevice, MenderDeviceGroup
from integration_testutils.infra.container_manager.base import BaseContainerManagerNamespace
from integration_testutils.infra.device import MenderDevice, MenderDeviceGroup

from . import log
from .tests.mendertesting import MenderTesting
from integration_tests import log
from integration_tests.tests.mendertesting import MenderTesting

THIS_DIR = os.path.dirname(os.path.abspath(__file__))
RELEASE_TOOL = os.path.join(THIS_DIR, "..", "extra", "release_tool.py")
Expand Down Expand Up @@ -111,8 +112,9 @@ def image(compose_file, filename):
with FileLock(f".extract_fs_lock.lock"):
if os.path.exists(os.path.join(THIS_DIR, filename)):
return filename
compose_file_path = importlib.resources.files('integration_tests.data.compose').joinpath(compose_file)
return next(
_extract_fs_from_image(os.path.join(THIS_DIR, "..", compose_file), filename)
_extract_fs_from_image(str(compose_file_path), filename)
)


Expand Down Expand Up @@ -465,3 +467,20 @@ def version_is_minimum(version, min_version):
return True

return version_parsed >= packaging.version.Version(min_version)


@pytest.fixture(scope="session")
def docker_compose_demo_server(request):
"""
Start demo server using docker compose files from integration package
"""
from integration_testutils.infra.container_manager import factory
from integration_tests.MenderAPI import reset_mender_api

container_factory = factory.get_factory()
env = container_factory.get_standard_setup(num_clients=0) # just the demo server with no clients
request.addfinalizer(env.teardown)

env.setup()
reset_mender_api(env)
yield env
Empty file.
Empty file.
5 changes: 5 additions & 0 deletions integration_tests/data/compose/common.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
services:
mender-base:
stdin_open: false
tty: false
restart: on-failure
File renamed without changes.
File renamed without changes.
6 changes: 6 additions & 0 deletions integration_tests/data/compose/docker-compose.gateway.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@

services:
mender-api-gateway:
ports: !reset []
environment:
TESTING: "true"
File renamed without changes.
File renamed without changes.
2 changes: 1 addition & 1 deletion tests/helpers.py → integration_tests/helpers.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@
import json
import time

from .MenderAPI import devauth
from integration_tests.MenderAPI import devauth

logger = logging.getLogger()

Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -17,12 +17,12 @@
import redo
import uuid

import testutils.api.deviceconnect as deviceconnect
from testutils.common import User, update_tenant, new_tenant_client
from testutils.infra.cli import CliTenantadm
import integration_testutils.api.deviceconnect as deviceconnect
from integration_testutils.common import User, update_tenant, new_tenant_client
from integration_testutils.infra.cli import CliTenantadm

from testutils.api.client import ApiClient
from ..MenderAPI import (
from integration_testutils.api.client import ApiClient
from integration_tests.MenderAPI import (
authentication,
get_container_manager,
logger,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,9 @@

import pytest

from .. import conftest
from ..MenderAPI import devauth, deploy, image, logger
from . import artifact_lock
from integration_tests import conftest
from integration_tests.MenderAPI import devauth, deploy, image, logger
from integration_tests.tests import artifact_lock


def common_update_procedure(
Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -15,12 +15,12 @@
import uuid
import time

from ..common_setup import enterprise_no_client
from ..helpers import Helpers
from ..MenderAPI import auth, devauth, logger, inv
from .common_update import update_image
from .mendertesting import MenderTesting
from testutils.common import new_tenant_client
from integration_tests.common_setup import enterprise_no_client
from integration_tests.helpers import Helpers
from integration_tests.MenderAPI import auth, devauth, logger, inv
from integration_tests.tests.common_update import update_image
from integration_tests.tests.mendertesting import MenderTesting
from integration_testutils.common import new_tenant_client


class TestMultiTenancyEnterprise(MenderTesting):
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,13 +16,13 @@

import pytest

from .. import conftest
from ..common_setup import enterprise_one_rofs_commercial_client_bootstrapped
from integration_tests import conftest
from integration_tests.common_setup import enterprise_one_rofs_commercial_client_bootstrapped
from .common_update import update_image
from testutils.common import ApiClient
import testutils.api.deployments as deployments
from integration_testutils.common import ApiClient
import integration_testutils.api.deployments as deployments

from ..MenderAPI import (
from integration_tests.MenderAPI import (
image,
DeviceAuthV2,
Deployments,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
import shutil
import time

from ..common_setup import (
from integration_tests.common_setup import (
standard_setup_one_rofs_client_bootstrapped,
standard_setup_with_short_lived_token,
setup_failover,
Expand All @@ -27,7 +27,7 @@
enterprise_with_short_lived_token,
)
from .common_update import update_image, update_image_failed
from ..MenderAPI import (
from integration_tests.MenderAPI import (
image,
logger,
devauth,
Expand All @@ -37,7 +37,7 @@
get_container_manager,
)
from .mendertesting import MenderTesting
from ..helpers import Helpers
from integration_tests.helpers import Helpers


class DeviceAuthFailover(DeviceAuthV2):
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,15 +16,15 @@

import pytest

from ..common_setup import (
from integration_tests.common_setup import (
standard_setup_one_client,
standard_setup_one_client_bootstrapped,
enterprise_one_client,
enterprise_one_client_bootstrapped,
)
from .common_update import common_update_procedure
from ..MenderAPI import DeviceAuthV2, Deployments, logger
from ..helpers import Helpers
from integration_tests.MenderAPI import DeviceAuthV2, Deployments, logger
from integration_tests.helpers import Helpers
from .mendertesting import MenderTesting


Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,19 +19,19 @@
import time
import uuid

from testutils.infra.cli import CliTenantadm
from testutils.common import Tenant, User, update_tenant, new_tenant_client
from integration_testutils.infra.cli import CliTenantadm
from integration_testutils.common import Tenant, User, update_tenant, new_tenant_client

from ..common_setup import standard_setup_one_client, enterprise_no_client
from ..MenderAPI import (
from integration_tests.common_setup import standard_setup_one_client, enterprise_no_client
from integration_tests.MenderAPI import (
Authentication,
DeviceAuthV2,
authentication,
devauth,
get_container_manager,
logger,
)
from ..MenderAPI.requests_helpers import requests_retry
from integration_tests.MenderAPI.requests_helpers import requests_retry
from .mendertesting import MenderTesting
from .common_connect import wait_for_connect

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,13 +18,13 @@
import shutil
import tempfile

from ..common_setup import (
from integration_tests.common_setup import (
setup_with_legacy_v1_client,
enterprise_with_legacy_v1_client,
)
from .common_update import update_image, common_update_procedure
from ..MenderAPI import DeviceAuthV2, Deployments, logger
from .mendertesting import MenderTesting
from integration_tests.tests.common_update import update_image, common_update_procedure
from integration_tests.MenderAPI import DeviceAuthV2, Deployments, logger
from integration_tests.tests.mendertesting import MenderTesting


class BaseTestDBMigration(MenderTesting):
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,13 +15,13 @@
import os
import pytest

from ..common_setup import (
from integration_tests.common_setup import (
standard_setup_one_client_bootstrapped,
enterprise_one_client_bootstrapped,
)
from .common_update import common_update_procedure
from ..MenderAPI import DeviceAuthV2, Deployments
from .mendertesting import MenderTesting
from integration_tests.tests.common_update import common_update_procedure
from integration_tests.MenderAPI import DeviceAuthV2, Deployments
from integration_tests.tests.mendertesting import MenderTesting


class BaseTestDeploymentAborting(MenderTesting):
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,14 +18,14 @@
import tempfile
import uuid

from .. import conftest
from ..common_setup import enterprise_no_client
from ..MenderAPI import logger, Authentication, DeviceAuthV2, Deployments
from ..helpers import Helpers
from testutils.infra.cli import CliTenantadm
from testutils.common import Tenant, User, new_tenant_client
from .common_artifact import get_script_artifact
from .mendertesting import MenderTesting
from integration_tests import conftest
from integration_tests.common_setup import enterprise_no_client
from integration_tests.MenderAPI import logger, Authentication, DeviceAuthV2, Deployments
from integration_tests.helpers import Helpers
from integration_testutils.infra.cli import CliTenantadm
from integration_testutils.common import Tenant, User, new_tenant_client
from integration_tests.tests.common_artifact import get_script_artifact
from integration_tests.tests.mendertesting import MenderTesting


def make_script_artifact(artifact_name, device_type, output_path):
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,15 +19,15 @@
import tempfile
import time

from .. import conftest
from ..common_setup import (
from integration_tests import conftest
from integration_tests.common_setup import (
standard_setup_one_client_bootstrapped,
enterprise_one_client_bootstrapped,
)
from .common_update import common_update_procedure, update_image_failed
from ..MenderAPI import DeviceAuthV2, Deployments, logger
from .mendertesting import MenderTesting
from testutils.infra.container_manager.kubernetes_manager import isK8S
from integration_tests.tests.common_update import common_update_procedure, update_image_failed
from integration_tests.MenderAPI import DeviceAuthV2, Deployments, logger
from integration_tests.tests.mendertesting import MenderTesting
from integration_testutils.infra.container_manager.kubernetes_manager import isK8S


@pytest.mark.skipif(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,25 +30,25 @@

from tempfile import NamedTemporaryFile

from ..common_setup import (
from integration_tests.common_setup import (
standard_setup_one_client,
enterprise_no_client_class,
class_persistent_standard_setup_one_client_bootstrapped,
)

from ..MenderAPI import (
from integration_tests.MenderAPI import (
auth,
authentication,
get_container_manager,
reset_mender_api,
logger,
devauth,
)
from .common_connect import prepare_env_for_connect, wait_for_connect
from .common import md5sum
from .mendertesting import MenderTesting
from testutils.infra.container_manager import factory
from testutils.infra.device import MenderDevice
from integration_tests.tests.common_connect import prepare_env_for_connect, wait_for_connect
from integration_tests.tests.common import md5sum
from integration_tests.tests.mendertesting import MenderTesting
from integration_testutils.infra.container_manager import factory
from integration_testutils.infra.device import MenderDevice


container_factory = factory.get_factory()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,11 +18,11 @@

from tempfile import NamedTemporaryFile

from ..common_setup import standard_setup_one_client_bootstrapped, enterprise_no_client
from ..MenderAPI import authentication, get_container_manager, logger, DeviceAuthV2
from .common_connect import prepare_env_for_connect, wait_for_connect
from .common import md5sum
from .mendertesting import MenderTesting
from integration_tests.common_setup import standard_setup_one_client_bootstrapped, enterprise_no_client
from integration_tests.MenderAPI import authentication, get_container_manager, logger, DeviceAuthV2
from integration_tests.tests.common_connect import prepare_env_for_connect, wait_for_connect
from integration_tests.tests.common import md5sum
from integration_tests.tests.mendertesting import MenderTesting


class BaseTestFileTransferCLI(MenderTesting):
Expand Down
Loading