diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 71459469fc967e8e1b129e338d38bb7c9e8899aa..5e7b26942b89dbc2a42372599da5e6a31275f517 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,4 +1,4 @@ -image: git.astron.nl:5000/lofar2.0/tango/lofar-device-base:l2ss-951 +image: git.astron.nl:5000/lofar2.0/tango/lofar-device-base:latest variables: GIT_SUBMODULE_STRATEGY: recursive PIP_CACHE_DIR: "$CI_PROJECT_DIR/.cache/pip" diff --git a/docker-compose/integration-test.yml b/docker-compose/integration-test.yml index 1a856078d6649b966cd196713383066138daaaed..5d27f716ab07c69d061cfaa6dd883798e0c2bab5 100644 --- a/docker-compose/integration-test.yml +++ b/docker-compose/integration-test.yml @@ -31,6 +31,11 @@ services: - --strict - -- - tox -e integration +# TODO(L2SS-992): Update me to use sitepackages once L2SS-992 is fixed. +# sitepackages can be enabled for inside docker once pytango is installed from +# requirements.txt (To ensure reliable builds / all environments same versions) +# When run outside of docker, environment will be recreated if mismatched +# - tox --sitepackages -e integration command: # Allow for arguments to be passed that wil be put after the entrypoint # tox is configured to take these arguments as integration test directory diff --git a/sbin/run_integration_test.sh b/sbin/run_integration_test.sh index 50e488d5032bb5fc0c0f5258fc84063cd0817617..367d96f7f418755d0f28a645fb4167b233dbb7cb 100755 --- a/sbin/run_integration_test.sh +++ b/sbin/run_integration_test.sh @@ -96,6 +96,10 @@ make stop elk # Run dummy integration test to install pytango in tox virtualenv without # the memory pressure of the ELK stack. +# Alternatively this step can be avoided if we use: +# `tox --sitepackages -e integration` for the integration docker container, +# however, that does require creating a container specific integration job. +# TODO(L2SS-992): Remove me and above documentation integration_test dummy make start elk diff --git a/tangostationcontrol/tox.ini b/tangostationcontrol/tox.ini index f6cedb23e9a2778d12c07b67e2a42b91d5e87863..f4d8ddce0312c73dc9d43a7b439c6a2beae8a535 100644 --- a/tangostationcontrol/tox.ini +++ b/tangostationcontrol/tox.ini @@ -6,7 +6,7 @@ skipsdist = True [testenv] usedevelop = True ; Python and tox variables are used to access modules and binaries instead of -; directly. This is an artifact of having used sitepackages = true in the past. +; directly. This makes the setup robust for using sitepackages=True. install_command = {envbindir}/pip3 install {opts} {packages} passenv = HOME setenv = @@ -14,6 +14,8 @@ setenv = PYTHONWARNINGS=default::DeprecationWarning ; Share the same envdir with as many jobs as possible due to extensive time it ; takes to compile the pytango wheel, in addition to its large install size. +; should the environment change (such as the Python version) the environment +; will automatically be recreated. envdir = {toxworkdir}/testenv deps = -r{toxinidir}/requirements.txt @@ -41,8 +43,6 @@ envdir = {toxworkdir}/testenvpy39 envdir = {toxworkdir}/testenvpy310 [testenv:integration] -; Warning running integration tests will make changes to your docker system! -; These tests should only be run by the integration-test docker container. allowlist_externals = echo passenv = TANGO_HOST setenv =