Merge pull request #2179 from jjardon/jjardon/f44
ci: Add Fedora 44, remove other Fedora images
diff --git a/.github/common.env b/.github/common.env
index de24cb5..11ff253 100644
--- a/.github/common.env
+++ b/.github/common.env
@@ -1,6 +1,6 @@
# Shared common variables
-CI_IMAGE_VERSION=master-2310077904
+CI_IMAGE_VERSION=master-2779642792
CI_TOXENV_MAIN=py310,py311,py312,py313,py314
CI_TOXENV_PLUGINS=py310-plugins,py311-plugins,py312-plugins,py313-plugins,py314-plugins
CI_TOXENV_ALL="${CI_TOXENV_MAIN},${CI_TOXENV_PLUGINS}"
diff --git a/.github/compose/ci.docker-compose.yml b/.github/compose/ci.docker-compose.yml
index c0590e7..5dd7ac1 100644
--- a/.github/compose/ci.docker-compose.yml
+++ b/.github/compose/ci.docker-compose.yml
@@ -1,7 +1,7 @@
version: '3.4'
x-tests-template: &tests-template
- image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:42-${CI_IMAGE_VERSION:-latest}
+ image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:44-${CI_IMAGE_VERSION:-latest}
command: tox -vvvvv -- --color=yes --integration
environment:
TOXENV: ${CI_TOXENV_ALL}
@@ -30,13 +30,9 @@
<<: *tests-template
image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-debian:13-${CI_IMAGE_VERSION:-latest}
- fedora-42:
+ fedora-44:
<<: *tests-template
- image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:42-${CI_IMAGE_VERSION:-latest}
-
- fedora-43:
- <<: *tests-template
- image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:43-${CI_IMAGE_VERSION:-latest}
+ image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:44-${CI_IMAGE_VERSION:-latest}
ubuntu-22.04:
<<: *tests-template
diff --git a/.github/run-ci.sh b/.github/run-ci.sh
index 8118d0a..f369032 100755
--- a/.github/run-ci.sh
+++ b/.github/run-ci.sh
@@ -102,7 +102,7 @@
if [ -z "${test_names}" ]; then
- for test_name in mypy debian-12 debian-13 fedora-42 fedora-43 fedora-missing-deps ubuntu-22.04; do
+ for test_name in mypy debian-12 debian-13 fedora-44 fedora-missing-deps ubuntu-22.04; do
if ! runTest "${test_name}"; then
echo "Tests failed"
exit 1
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index c2c4d2a..657ad6f 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -38,8 +38,7 @@
test-name:
- debian-12
- debian-13
- - fedora-42
- - fedora-43
+ - fedora-44
- fedora-missing-deps
- ubuntu-22.04
- lint
diff --git a/tests/integration/interactive_build.py b/tests/integration/interactive_build.py
index 580d698..9a63ecf 100644
--- a/tests/integration/interactive_build.py
+++ b/tests/integration/interactive_build.py
@@ -36,6 +36,13 @@
def build_session(integration_cache, datafiles, element_name):
project = str(datafiles)
+ # Interactive tests need a usable TERM so tools like click's pager (less)
+ # run interactively. Containers used for CI often leave TERM unset even
+ # when pexpect allocates a PTY.
+ env = os.environ.copy()
+ if not env.get("TERM") or env["TERM"] == "dumb":
+ env["TERM"] = "xterm"
+
# Spawn interactive session using `configured()` context manager in order
# to get the same config file as the `cli` fixture.
with runcli.configured(project, config={"sourcedir": integration_cache.sources}) as config_file:
@@ -50,6 +57,7 @@
"build",
element_name,
],
+ env=env,
timeout=PEXPECT_TIMEOUT_SHORT,
)
yield session