# Run sent to worker: reckless == 2026-09-08 14:23:46.124576: Setting up runner on worker == 2026-09-08 14:23:47.741490: Steps to recreate inside simulator wget -O simulate.sh https://api.gavelci.us/projects/jobserv/builds/2/runs/unit-test//.simulate.sh # wget'ing the file may require the --header flag if the # jobserv API requires authentication. sh ./simulate.sh == 2026-09-08 14:23:48.429043: Pulling container: python:3.11-alpine3.19 3.11-alpine3.19: Pulling from library/python Digest: sha256:135b0db9b7c3e33d654ba8893b63cbe9394768cc64fc2a2f283148125ae8aa1f Status: Image is up to date for python:3.11-alpine3.19 docker.io/library/python:3.11-alpine3.19 == 2026-09-08 14:23:50.315714: Preparing bind mounts 2026-09-08 14:23:50.559832: INFO Default docker configuration detected 2026-09-08 14:23:50.787883: INFO Creating secret: webhook-key 2026-09-08 14:23:51.007913: INFO Creating secret: githubtok 2026-09-08 14:23:51.227950: INFO Adding shared volume: /lmp-bitbake-cache == 2026-09-08 14:23:51.676802: Creating container .netrc file 2026-09-08 14:23:51.902870: INFO Creating token for jobserv run access 2026-09-08 14:23:52.118008: INFO Creating a github token entry == 2026-09-08 14:23:52.571832: Preparing script == 2026-09-08 14:23:53.010387: Cloning git repository 2026-09-08 14:23:53.253854: INFO Clone_url: https://github.com/foundriesio/jobserv.git 2026-09-08 14:23:53.496554: INFO Checking to see if https://github.com/foundriesio/jobserv.git requires authentication. 2026-09-08 14:23:53.962669: INFO Server does not appear to need credentials for cloning 2026-09-08 14:23:54.200308: INFO Adding githubtok to .gitconfig 2026-09-08 14:23:54.419217: INFO Git install supports submodules Cloning into '/srv/gavelci-worker/runs/tmpc3qaf_rc/repo'... 2026-09-08 14:23:55.542508: INFO Checking out: 730cebfc9dfe830f71f37e44624a9b20244f085e Switched to branch 'jobserv-run' == 2026-09-08 14:23:56.289465: Setting up container environment 2026-09-08 14:23:56.505830: INFO Container environment variables: GH_PRNUM=165 GH_OWNER=foundriesio GH_REPO=jobserv GH_STATUS_URL=https://api.github.com/repos/foundriesio/jobserv/statuses/730cebfc9dfe830f71f37e44624a9b20244f085e GH_TARGET_REPO=https://github.com/foundriesio/jobserv.git GIT_URL=https://github.com/foundriesio/jobserv.git GIT_SHA_BASE=e6b4c532d141049cab92986e24d600062131c2a8 GIT_OLD_SHA=e6b4c532d141049cab92986e24d600062131c2a8 GIT_SHA=730cebfc9dfe830f71f37e44624a9b20244f085e H_PROJECT=jobserv H_BUILD=2 H_RUN=unit-test H_WORKER=reckless == 2026-09-08 14:23:56.969886: Running script inside container + apk --no-cache add git python3-dev musl-dev g++ openssl libffi-dev openssl-dev rust cargo fetch https://dl-cdn.alpinelinux.org/alpine/v3.19/main/x86_64/APKINDEX.tar.gz fetch https://dl-cdn.alpinelinux.org/alpine/v3.19/community/x86_64/APKINDEX.tar.gz (1/45) Upgrading musl (1.2.4_git20230717-r4 -> 1.2.4_git20230717-r6) (2/45) Upgrading libcrypto3 (3.1.7-r1 -> 3.1.8-r1) (3/45) Upgrading libssl3 (3.1.7-r1 -> 3.1.8-r1) (4/45) Installing libgcc (13.2.1_git20231014-r0) (5/45) Installing jansson (2.14-r4) (6/45) Installing libstdc++ (13.2.1_git20231014-r0) (7/45) Installing zstd-libs (1.5.5-r8) (8/45) Installing binutils (2.41-r1) (9/45) Installing libgomp (13.2.1_git20231014-r0) (10/45) Installing libatomic (13.2.1_git20231014-r0) (11/45) Installing gmp (6.3.0-r0) (12/45) Installing isl26 (0.26-r1) (13/45) Installing mpfr4 (4.2.1-r0) (14/45) Installing mpc1 (1.3.1-r1) (15/45) Installing gcc (13.2.1_git20231014-r0) (16/45) Installing musl-dev (1.2.4_git20230717-r6) (17/45) Installing libxml2 (2.11.8-r3) (18/45) Installing llvm17-libs (17.0.5-r0) (19/45) Installing scudo-malloc (17.0.5-r0) (20/45) Installing rust (1.76.0-r0) (21/45) Installing brotli-libs (1.1.0-r1) (22/45) Installing c-ares (1.27.0-r0) (23/45) Installing libunistring (1.1-r2) (24/45) Installing libidn2 (2.3.4-r4) (25/45) Installing nghttp2-libs (1.58.0-r0) (26/45) Installing libpsl (0.21.5-r0) (27/45) Installing libcurl (8.14.1-r2) (28/45) Installing cargo (1.76.0-r0) (29/45) Installing libstdc++-dev (13.2.1_git20231014-r0) (30/45) Installing libc-dev (0.7.2-r5) (31/45) Installing g++ (13.2.1_git20231014-r0) (32/45) Installing libexpat (2.7.3-r0) (33/45) Installing pcre2 (10.42-r2) (34/45) Installing git (2.43.7-r0) (35/45) Installing linux-headers (6.5-r0) (36/45) Installing pkgconf (2.1.0-r0) (37/45) Installing libffi-dev (3.4.4-r3) (38/45) Installing openssl (3.1.8-r1) (39/45) Installing openssl-dev (3.1.8-r1) (40/45) Installing mpdecimal (2.5.1-r2) (41/45) Installing python3 (3.11.14-r0) (42/45) Installing python3-pycache-pyc0 (3.11.14-r0) (43/45) Installing pyc (3.11.14-r0) (44/45) Installing python3-pyc (3.11.14-r0) (45/45) Installing python3-dev (3.11.14-r0) Executing busybox-1.36.1-r19.trigger Executing ca-certificates-20240226-r0.trigger OK: 1077 MiB in 79 packages + git config --global user.email cibot@example.com + git config --global user.name cibot + git config --system protocol.file.allow always + git config --global --add safe.directory /repo/.git + ls /lmp-bitbake-cache/ dmesg.out + sh ./unit-test.sh + readlink -f ./unit-test.sh + dirname /repo/unit-test.sh + HERE=/repo + cd /repo + mktemp -d + VENV=/tmp/tmp.bDdgcH + trap '[ -z ] || docker kill jobserv-db; rm -rf /tmp/tmp.bDdgcH' EXIT + '[' -n ] + '[' -z ] WARNING: Using sqlite database - work queue testing will be skipped + echo 'WARNING: Using sqlite database - work queue testing will be skipped' + export 'SQLALCHEMY_DATABASE_URI=sqlite://' + python3 -m venv /tmp/tmp.bDdgcH + /tmp/tmp.bDdgcH/bin/pip3 install -U pip Requirement already satisfied: pip in /tmp/tmp.bDdgcH/lib/python3.11/site-packages (24.0) Collecting pip Downloading pip-26.2.1-py3-none-any.whl.metadata (4.6 kB) Downloading pip-26.2.1-py3-none-any.whl (1.8 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.8/1.8 MB 3.0 MB/s eta 0:00:00 Installing collected packages: pip Attempting uninstall: pip Found existing installation: pip 24.0 Uninstalling pip-24.0: Successfully uninstalled pip-24.0 Successfully installed pip-26.2.1 + /tmp/tmp.bDdgcH/bin/pip3 install -U setuptools Requirement already satisfied: setuptools in /tmp/tmp.bDdgcH/lib/python3.11/site-packages (65.5.0) Collecting setuptools Downloading setuptools-84.0.0-py3-none-any.whl.metadata (6.6 kB) Downloading setuptools-84.0.0-py3-none-any.whl (818 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 818.2/818.2 kB 4.7 MB/s 0:00:00 Installing collected packages: setuptools Attempting uninstall: setuptools Found existing installation: setuptools 65.5.0 Uninstalling setuptools-65.5.0: Successfully uninstalled setuptools-65.5.0 Successfully installed setuptools-84.0.0 + /tmp/tmp.bDdgcH/bin/pip3 install -r requirements.txt Collecting Flask-Migrate==4.0.7 (from -r requirements.txt (line 1)) Downloading Flask_Migrate-4.0.7-py3-none-any.whl.metadata (3.1 kB) Collecting Flask-SQLAlchemy==3.0.5 (from -r requirements.txt (line 2)) Downloading flask_sqlalchemy-3.0.5-py3-none-any.whl.metadata (3.3 kB) Collecting Flask-Testing==0.8.1 (from -r requirements.txt (line 3)) Downloading Flask-Testing-0.8.1.tar.gz (45 kB) Installing build dependencies: started Installing build dependencies: finished with status 'done' Getting requirements to build wheel: started Getting requirements to build wheel: finished with status 'done' Preparing metadata (pyproject.toml): started Preparing metadata (pyproject.toml): finished with status 'done' Collecting Flask==3.1.3 (from -r requirements.txt (line 4)) Downloading flask-3.1.3-py3-none-any.whl.metadata (3.2 kB) Collecting PyJWT==2.13.0 (from -r requirements.txt (line 5)) Downloading pyjwt-2.13.0-py3-none-any.whl.metadata (3.4 kB) Collecting PyMySQL==1.1.2 (from -r requirements.txt (line 6)) Downloading pymysql-1.1.2-py3-none-any.whl.metadata (4.3 kB) Collecting PyYAML==6.0.1 (from -r requirements.txt (line 7)) Downloading PyYAML-6.0.1-cp311-cp311-musllinux_1_1_x86_64.whl.metadata (2.1 kB) Collecting SQLAlchemy==1.4.54 (from -r requirements.txt (line 8)) Downloading sqlalchemy-1.4.54.tar.gz (8.5 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 8.5/8.5 MB 12.6 MB/s 0:00:00 Installing build dependencies: started Installing build dependencies: finished with status 'done' Getting requirements to build wheel: started Getting requirements to build wheel: finished with status 'done' Preparing metadata (pyproject.toml): started Preparing metadata (pyproject.toml): finished with status 'done' Collecting Werkzeug==3.1.6 (from -r requirements.txt (line 9)) Downloading werkzeug-3.1.6-py3-none-any.whl.metadata (4.0 kB) Collecting bcrypt==5.0.0 (from -r requirements.txt (line 10)) Downloading bcrypt-5.0.0-cp39-abi3-musllinux_1_2_x86_64.whl.metadata (10 kB) Collecting cryptography==50.0.0 (from -r requirements.txt (line 11)) Downloading cryptography-50.0.0-cp311-abi3-musllinux_1_2_x86_64.whl.metadata (4.3 kB) Collecting dataclasses==0.6 (from -r requirements.txt (line 12)) Downloading dataclasses-0.6-py3-none-any.whl.metadata (3.0 kB) Collecting google-cloud-storage==2.10.0 (from -r requirements.txt (line 13)) Downloading google_cloud_storage-2.10.0-py2.py3-none-any.whl.metadata (6.0 kB) Collecting gunicorn==23.0.0 (from -r requirements.txt (line 16)) Downloading gunicorn-23.0.0-py3-none-any.whl.metadata (4.4 kB) Collecting json-logging==1.5.1 (from -r requirements.txt (line 17)) Downloading json_logging-1.5.1-py2.py3-none-any.whl.metadata (1.1 kB) Collecting pykwalify==1.8.0 (from -r requirements.txt (line 18)) Downloading pykwalify-1.8.0-py2.py3-none-any.whl.metadata (5.3 kB) Collecting python-dateutil==2.8.2 (from -r requirements.txt (line 19)) Downloading python_dateutil-2.8.2-py2.py3-none-any.whl.metadata (8.2 kB) Collecting pytz==2023.3 (from -r requirements.txt (line 20)) Downloading pytz-2023.3-py2.py3-none-any.whl.metadata (22 kB) Collecting requests==2.33.0 (from -r requirements.txt (line 21)) Downloading requests-2.33.0-py3-none-any.whl.metadata (5.1 kB) Collecting wheel==0.46.2 (from -r requirements.txt (line 22)) Downloading wheel-0.46.2-py3-none-any.whl.metadata (2.4 kB) Collecting alembic>=1.9.0 (from Flask-Migrate==4.0.7->-r requirements.txt (line 1)) Downloading alembic-1.19.2-py3-none-any.whl.metadata (7.3 kB) Collecting blinker>=1.9.0 (from Flask==3.1.3->-r requirements.txt (line 4)) Downloading blinker-1.9.0-py3-none-any.whl.metadata (1.6 kB) Collecting click>=8.1.3 (from Flask==3.1.3->-r requirements.txt (line 4)) Downloading click-8.5.0-py3-none-any.whl.metadata (2.6 kB) Collecting itsdangerous>=2.2.0 (from Flask==3.1.3->-r requirements.txt (line 4)) Downloading itsdangerous-2.2.0-py3-none-any.whl.metadata (1.9 kB) Collecting jinja2>=3.1.2 (from Flask==3.1.3->-r requirements.txt (line 4)) Downloading jinja2-3.1.6-py3-none-any.whl.metadata (2.9 kB) Collecting markupsafe>=2.1.1 (from Flask==3.1.3->-r requirements.txt (line 4)) Downloading markupsafe-3.0.3-cp311-cp311-musllinux_1_2_x86_64.whl.metadata (2.7 kB) Collecting greenlet!=0.4.17 (from SQLAlchemy==1.4.54->-r requirements.txt (line 8)) Downloading greenlet-3.5.5-cp311-cp311-musllinux_1_2_x86_64.whl.metadata (3.8 kB) Collecting cffi>=2.0.0 (from cryptography==50.0.0->-r requirements.txt (line 11)) Downloading cffi-2.1.1-cp311-cp311-musllinux_1_2_x86_64.whl.metadata (2.5 kB) Collecting google-auth<3.0dev,>=1.25.0 (from google-cloud-storage==2.10.0->-r requirements.txt (line 13)) Downloading google_auth-2.57.1-py3-none-any.whl.metadata (6.0 kB) Collecting google-api-core!=2.0.*,!=2.1.*,!=2.2.*,!=2.3.0,<3.0.0dev,>=1.31.5 (from google-cloud-storage==2.10.0->-r requirements.txt (line 13)) Downloading google_api_core-2.36.0-py3-none-any.whl.metadata (3.2 kB) Collecting google-cloud-core<3.0dev,>=2.3.0 (from google-cloud-storage==2.10.0->-r requirements.txt (line 13)) Downloading google_cloud_core-2.7.0-py3-none-any.whl.metadata (2.8 kB) Collecting google-resumable-media>=2.3.2 (from google-cloud-storage==2.10.0->-r requirements.txt (line 13)) Downloading google_resumable_media-2.10.2-py3-none-any.whl.metadata (2.2 kB) Collecting charset_normalizer<4,>=2 (from requests==2.33.0->-r requirements.txt (line 21)) Downloading charset_normalizer-3.5.1-cp311-cp311-musllinux_1_2_x86_64.whl.metadata (45 kB) Collecting idna<4,>=2.5 (from requests==2.33.0->-r requirements.txt (line 21)) Downloading idna-3.19-py3-none-any.whl.metadata (9.2 kB) Collecting urllib3<3,>=1.26 (from requests==2.33.0->-r requirements.txt (line 21)) Downloading urllib3-2.7.0-py3-none-any.whl.metadata (6.9 kB) Collecting certifi>=2023.5.7 (from requests==2.33.0->-r requirements.txt (line 21)) Downloading certifi-2026.7.22-py3-none-any.whl.metadata (2.5 kB) Collecting packaging (from gunicorn==23.0.0->-r requirements.txt (line 16)) Downloading packaging-26.3-py3-none-any.whl.metadata (3.5 kB) Collecting docopt>=0.6.2 (from pykwalify==1.8.0->-r requirements.txt (line 18)) Downloading docopt-0.6.2.tar.gz (25 kB) Installing build dependencies: started Installing build dependencies: finished with status 'done' Getting requirements to build wheel: started Getting requirements to build wheel: finished with status 'done' Preparing metadata (pyproject.toml): started Preparing metadata (pyproject.toml): finished with status 'done' Collecting ruamel.yaml>=0.16.0 (from pykwalify==1.8.0->-r requirements.txt (line 18)) Downloading ruamel_yaml-0.19.1-py3-none-any.whl.metadata (16 kB) Collecting six>=1.5 (from python-dateutil==2.8.2->-r requirements.txt (line 19)) Downloading six-1.17.0-py2.py3-none-any.whl.metadata (1.7 kB) Collecting googleapis-common-protos<2.0.0,>=1.69.2 (from google-api-core!=2.0.*,!=2.1.*,!=2.2.*,!=2.3.0,<3.0.0dev,>=1.31.5->google-cloud-storage==2.10.0->-r requirements.txt (line 13)) Downloading googleapis_common_protos-1.75.3-py3-none-any.whl.metadata (8.5 kB) Collecting protobuf<8.0.0,>=6.33.5 (from google-api-core!=2.0.*,!=2.1.*,!=2.2.*,!=2.3.0,<3.0.0dev,>=1.31.5->google-cloud-storage==2.10.0->-r requirements.txt (line 13)) Downloading protobuf-7.36.1-py3-none-any.whl.metadata (595 bytes) Collecting proto-plus<2.0.0,>=1.26.1 (from google-api-core!=2.0.*,!=2.1.*,!=2.2.*,!=2.3.0,<3.0.0dev,>=1.31.5->google-cloud-storage==2.10.0->-r requirements.txt (line 13)) Downloading proto_plus-1.28.4-py3-none-any.whl.metadata (2.2 kB) Collecting opentelemetry-api<2.0.0,>=1.44.0 (from google-api-core!=2.0.*,!=2.1.*,!=2.2.*,!=2.3.0,<3.0.0dev,>=1.31.5->google-cloud-storage==2.10.0->-r requirements.txt (line 13)) Downloading opentelemetry_api-1.44.0-py3-none-any.whl.metadata (1.4 kB) Collecting pyasn1-modules>=0.2.1 (from google-auth<3.0dev,>=1.25.0->google-cloud-storage==2.10.0->-r requirements.txt (line 13)) Downloading pyasn1_modules-0.4.2-py3-none-any.whl.metadata (3.5 kB) Collecting typing-extensions>=4.5.0 (from opentelemetry-api<2.0.0,>=1.44.0->google-api-core!=2.0.*,!=2.1.*,!=2.2.*,!=2.3.0,<3.0.0dev,>=1.31.5->google-cloud-storage==2.10.0->-r requirements.txt (line 13)) Downloading typing_extensions-4.16.0-py3-none-any.whl.metadata (3.3 kB) Collecting Mako (from alembic>=1.9.0->Flask-Migrate==4.0.7->-r requirements.txt (line 1)) Downloading mako-1.4.1-py3-none-any.whl.metadata (2.9 kB) Collecting pycparser (from cffi>=2.0.0->cryptography==50.0.0->-r requirements.txt (line 11)) Downloading pycparser-3.0-py3-none-any.whl.metadata (8.2 kB) Collecting google-crc32c<2.0.0,>=1.0.0 (from google-resumable-media>=2.3.2->google-cloud-storage==2.10.0->-r requirements.txt (line 13)) Downloading google_crc32c-1.8.0.tar.gz (14 kB) Installing build dependencies: started Installing build dependencies: finished with status 'done' Getting requirements to build wheel: started Getting requirements to build wheel: finished with status 'done' Preparing metadata (pyproject.toml): started Preparing metadata (pyproject.toml): finished with status 'done' Collecting pyasn1<0.7.0,>=0.6.1 (from pyasn1-modules>=0.2.1->google-auth<3.0dev,>=1.25.0->google-cloud-storage==2.10.0->-r requirements.txt (line 13)) Downloading pyasn1-0.6.4-py3-none-any.whl.metadata (8.4 kB) Downloading Flask_Migrate-4.0.7-py3-none-any.whl (21 kB) Downloading flask_sqlalchemy-3.0.5-py3-none-any.whl (24 kB) Downloading flask-3.1.3-py3-none-any.whl (103 kB) Downloading pyjwt-2.13.0-py3-none-any.whl (31 kB) Downloading pymysql-1.1.2-py3-none-any.whl (45 kB) Downloading PyYAML-6.0.1-cp311-cp311-musllinux_1_1_x86_64.whl (748 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 748.5/748.5 kB 3.8 MB/s 0:00:00 Downloading werkzeug-3.1.6-py3-none-any.whl (225 kB) Downloading bcrypt-5.0.0-cp39-abi3-musllinux_1_2_x86_64.whl (359 kB) Downloading cryptography-50.0.0-cp311-abi3-musllinux_1_2_x86_64.whl (5.0 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 5.0/5.0 MB 11.5 MB/s 0:00:00 Downloading dataclasses-0.6-py3-none-any.whl (14 kB) Downloading google_cloud_storage-2.10.0-py2.py3-none-any.whl (114 kB) Downloading requests-2.33.0-py3-none-any.whl (65 kB) Downloading gunicorn-23.0.0-py3-none-any.whl (85 kB) Downloading json_logging-1.5.1-py2.py3-none-any.whl (23 kB) Downloading pykwalify-1.8.0-py2.py3-none-any.whl (24 kB) Downloading python_dateutil-2.8.2-py2.py3-none-any.whl (247 kB) Downloading pytz-2023.3-py2.py3-none-any.whl (502 kB) Downloading wheel-0.46.2-py3-none-any.whl (29 kB) Downloading charset_normalizer-3.5.1-cp311-cp311-musllinux_1_2_x86_64.whl (263 kB) Downloading google_api_core-2.36.0-py3-none-any.whl (184 kB) Downloading google_auth-2.57.1-py3-none-any.whl (259 kB) Downloading google_cloud_core-2.7.0-py3-none-any.whl (31 kB) Downloading googleapis_common_protos-1.75.3-py3-none-any.whl (306 kB) Downloading idna-3.19-py3-none-any.whl (68 kB) Downloading opentelemetry_api-1.44.0-py3-none-any.whl (60 kB) Downloading proto_plus-1.28.4-py3-none-any.whl (50 kB) Downloading protobuf-7.36.1-py3-none-any.whl (179 kB) Downloading urllib3-2.7.0-py3-none-any.whl (131 kB) Downloading alembic-1.19.2-py3-none-any.whl (267 kB) Downloading blinker-1.9.0-py3-none-any.whl (8.5 kB) Downloading certifi-2026.7.22-py3-none-any.whl (136 kB) Downloading cffi-2.1.1-cp311-cp311-musllinux_1_2_x86_64.whl (219 kB) Downloading click-8.5.0-py3-none-any.whl (125 kB) Downloading google_resumable_media-2.10.2-py3-none-any.whl (81 kB) Downloading greenlet-3.5.5-cp311-cp311-musllinux_1_2_x86_64.whl (1.7 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.7/1.7 MB 7.6 MB/s 0:00:00 Downloading itsdangerous-2.2.0-py3-none-any.whl (16 kB) Downloading jinja2-3.1.6-py3-none-any.whl (134 kB) Downloading markupsafe-3.0.3-cp311-cp311-musllinux_1_2_x86_64.whl (22 kB) Using cached packaging-26.3-py3-none-any.whl (129 kB) Downloading pyasn1_modules-0.4.2-py3-none-any.whl (181 kB) Downloading pyasn1-0.6.4-py3-none-any.whl (84 kB) Downloading ruamel_yaml-0.19.1-py3-none-any.whl (118 kB) Downloading six-1.17.0-py2.py3-none-any.whl (11 kB) Downloading typing_extensions-4.16.0-py3-none-any.whl (45 kB) Downloading mako-1.4.1-py3-none-any.whl (80 kB) Downloading pycparser-3.0-py3-none-any.whl (48 kB) Building wheels for collected packages: Flask-Testing, SQLAlchemy, docopt, google-crc32c Building wheel for Flask-Testing (pyproject.toml): started Building wheel for Flask-Testing (pyproject.toml): finished with status 'done' Created wheel for Flask-Testing: filename=flask_testing-0.8.1-py3-none-any.whl size=8269 sha256=8e96c38f9830dd4820e476a97099776ecd8c15254d75e331b38d7119fa59bb08 Stored in directory: /root/.cache/pip/wheels/9d/aa/a4/a97a989ae422b51b1f164f76b5bdfc21a9c30b1842b7403598 Building wheel for SQLAlchemy (pyproject.toml): started Building wheel for SQLAlchemy (pyproject.toml): finished with status 'done' Created wheel for SQLAlchemy: filename=sqlalchemy-1.4.54-cp311-cp311-linux_x86_64.whl size=1622623 sha256=17a3ce212fdaddaf0deec6b8c47a4a74b248102eb9b18bb82021a6d8cbb201df Stored in directory: /root/.cache/pip/wheels/e6/d5/db/f068d28cbd84d13f9f4c0d31dce260bc385dc39d9ea395bda5 Building wheel for docopt (pyproject.toml): started Building wheel for docopt (pyproject.toml): finished with status 'done' Created wheel for docopt: filename=docopt-0.6.2-py2.py3-none-any.whl size=13783 sha256=63d65feb36512cf28a59d0503ae246a5766962264f2f8ba63185b303c9762c0b Stored in directory: /root/.cache/pip/wheels/1a/b0/8c/4b75c4116c31f83c8f9f047231251e13cc74481cca4a78a9ce Building wheel for google-crc32c (pyproject.toml): started Building wheel for google-crc32c (pyproject.toml): finished with status 'done' Created wheel for google-crc32c: filename=google_crc32c-1.8.0-py3-none-any.whl size=13802 sha256=9b7087f12498b3a214fdf0abc3edb5cf3b2e697b4d1d1fe9c6e22ef35f9ffd98 Stored in directory: /root/.cache/pip/wheels/bf/c5/4d/1896ad3fcff8c08542fa9a4452e2dec9aa336fa1d63d5fdae6 Successfully built Flask-Testing SQLAlchemy docopt google-crc32c Installing collected packages: pytz, json-logging, docopt, dataclasses, urllib3, typing-extensions, six, ruamel.yaml, PyYAML, PyMySQL, PyJWT, pycparser, pyasn1, protobuf, packaging, markupsafe, itsdangerous, idna, greenlet, google-crc32c, click, charset_normalizer, certifi, blinker, bcrypt, wheel, Werkzeug, SQLAlchemy, requests, python-dateutil, pyasn1-modules, proto-plus, opentelemetry-api, Mako, jinja2, gunicorn, googleapis-common-protos, google-resumable-media, cffi, pykwalify, Flask, cryptography, alembic, google-auth, Flask-Testing, Flask-SQLAlchemy, google-api-core, Flask-Migrate, google-cloud-core, google-cloud-storage Successfully installed Flask-3.1.3 Flask-Migrate-4.0.7 Flask-SQLAlchemy-3.0.5 Flask-Testing-0.8.1 Mako-1.4.1 PyJWT-2.13.0 PyMySQL-1.1.2 PyYAML-6.0.1 SQLAlchemy-1.4.54 Werkzeug-3.1.6 alembic-1.19.2 bcrypt-5.0.0 blinker-1.9.0 certifi-2026.7.22 cffi-2.1.1 charset_normalizer-3.5.1 click-8.5.0 cryptography-50.0.0 dataclasses-0.6 docopt-0.6.2 google-api-core-2.36.0 google-auth-2.57.1 google-cloud-core-2.7.0 google-cloud-storage-2.10.0 google-crc32c-1.8.0 google-resumable-media-2.10.2 googleapis-common-protos-1.75.3 greenlet-3.5.5 gunicorn-23.0.0 idna-3.19 itsdangerous-2.2.0 jinja2-3.1.6 json-logging-1.5.1 markupsafe-3.0.3 opentelemetry-api-1.44.0 packaging-26.3 proto-plus-1.28.4 protobuf-7.36.1 pyasn1-0.6.4 pyasn1-modules-0.4.2 pycparser-3.0 pykwalify-1.8.0 python-dateutil-2.8.2 pytz-2023.3 requests-2.33.0 ruamel.yaml-0.19.1 six-1.17.0 typing-extensions-4.16.0 urllib3-2.7.0 wheel-0.46.2 + /tmp/tmp.bDdgcH/bin/pip3 install 'junitxml==0.7' 'python-subunit==1.3.0' Collecting junitxml==0.7 Downloading junitxml-0.7.tar.gz (26 kB) Installing build dependencies: started Installing build dependencies: finished with status 'done' Getting requirements to build wheel: started Getting requirements to build wheel: finished with status 'done' Preparing metadata (pyproject.toml): started Preparing metadata (pyproject.toml): finished with status 'done' Collecting python-subunit==1.3.0 Downloading python_subunit-1.3.0-py2.py3-none-any.whl.metadata (21 kB) Collecting extras (from python-subunit==1.3.0) Downloading extras-1.0.0-py2.py3-none-any.whl.metadata (1.7 kB) Collecting testtools>=0.9.34 (from python-subunit==1.3.0) Downloading testtools-2.9.1-py3-none-any.whl.metadata (5.4 kB) Downloading python_subunit-1.3.0-py2.py3-none-any.whl (104 kB) Downloading testtools-2.9.1-py3-none-any.whl (110 kB) Downloading extras-1.0.0-py2.py3-none-any.whl (7.3 kB) Building wheels for collected packages: junitxml Building wheel for junitxml (pyproject.toml): started Building wheel for junitxml (pyproject.toml): finished with status 'done' Created wheel for junitxml: filename=junitxml-0.7-py3-none-any.whl size=16365 sha256=308197822f6979ccbbfaa54c7bd84bdc657a7c991da7c857ffcc6baebc8dba14 Stored in directory: /root/.cache/pip/wheels/8a/7a/9b/f1dac57e815dbc28e3889797e53848042661a1143aa45f127f Successfully built junitxml Installing collected packages: junitxml, extras, testtools, python-subunit Successfully installed extras-1.0.0 junitxml-0.7 python-subunit-1.3.0 testtools-2.9.1 + set -o pipefail + PYTHONPATH=./ /tmp/tmp.bDdgcH/bin/python3 -m subunit.run discover + /tmp/tmp.bDdgcH/bin/subunit2junitxml --no-passthrough + tee /archive/junit.xml hint: Using 'master' as the name for the initial branch. This default branch name hint: is subject to change. To configure the initial branch name to use in all hint: of your new repositories, which will suppress this warning, call: hint: hint: git config --global init.defaultBranch hint: hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and hint: 'development'. The just-created branch can be renamed via this command: hint: hint: git branch -m hint: Using 'master' as the name for the initial branch. This default branch name hint: is subject to change. To configure the initial branch name to use in all hint: of your new repositories, which will suppress this warning, call: hint: hint: git config --global init.defaultBranch hint: hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and hint: 'development'. The just-created branch can be renamed via this command: hint: hint: git branch -m Cloning into '/tmp/tmp58_ade8p/repo-src/submod'... done. hint: Using 'master' as the name for the initial branch. This default branch name hint: is subject to change. To configure the initial branch name to use in all hint: of your new repositories, which will suppress this warning, call: hint: hint: git config --global init.defaultBranch hint: hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and hint: 'development'. The just-created branch can be renamed via this command: hint: hint: git branch -m Cloning into '/tmp/tmp58_ade8p/nested-par/repo-src'... done. hint: Using 'master' as the name for the initial branch. This default branch name hint: is subject to change. To configure the initial branch name to use in all hint: of your new repositories, which will suppress this warning, call: hint: hint: git config --global init.defaultBranch hint: hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and hint: 'development'. The just-created branch can be renamed via this command: hint: hint: git branch -m hint: Using 'master' as the name for the initial branch. This default branch name hint: is subject to change. To configure the initial branch name to use in all hint: of your new repositories, which will suppress this warning, call: hint: hint: git config --global init.defaultBranch hint: hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and hint: 'development'. The just-created branch can be renamed via this command: hint: hint: git branch -m 2026-09-08 14:28:27.858945: ERROR foo bar == 2026-09-08 14:28:27.859230: test_exec 2026-09-08 14:28:27.859230: ERROR Traceback (most recent call last): | File "/repo/tests/runner/test_logging.py", line 44, in test_exec | raise RuntimeError() |RuntimeError | == 2026-09-08 14:28:27.859700: test_exec_cancelled 2026-09-08 14:28:27.859852: INFO foo bar 2026-09-08 14:28:27.859990: WARN foo bar 2026-09-08 14:28:27,861 DEBUG: Update all existing logger to using JSONLogFormatter {"written_at": "2026-09-08T14:28:28.715Z", "written_ts": 1788877708715405000, "msg": "Run requested a host-tag that is not configured for this project: dont_allow_this", "type": "log", "logger": "root", "thread": "MainThread", "level": "ERROR", "module": "trigger", "line_no": 61, "correlation_id": "8f389752-ab91-11f1-be36-0242ac110002"} {"written_at": "2026-09-08T14:28:29.050Z", "written_ts": 1788877709050814000, "msg": "Unexpected error creating runs for: {'name': 'git', 'type': 'git_poller', 'runs': [{'name': 'run0', 'host-tag': 'foo*', 'container': 'alpine', 'script': 'test'}]}", "type": "log", "logger": "root", "thread": "MainThread", "level": "ERROR", "module": "trigger", "line_no": 72, "exc_info": "Traceback (most recent call last):\n File \"/repo/jobserv/trigger.py\", line 65, in trigger_runs\n storage.set_run_definition(r, rundef)\n File \"/usr/local/lib/python3.11/unittest/mock.py\", line 1124, in __call__\n return self._mock_call(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/usr/local/lib/python3.11/unittest/mock.py\", line 1128, in _mock_call\n return self._execute_mock_call(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/usr/local/lib/python3.11/unittest/mock.py\", line 1183, in _execute_mock_call\n raise effect\nRuntimeError: edge case!!!\n", "filename": "trigger.py", "correlation_id": "8f6c2ee6-ab91-11f1-be36-0242ac110002"} {"written_at": "2026-09-08T14:28:31.146Z", "written_ts": 1788877711146725000, "msg": "Delivered webhook to https://example.com", "type": "log", "logger": "jobserv.flask", "thread": "Thread-1 (deliver)", "level": "INFO", "module": "notify", "line_no": 169, "correlation_id": "90b3379a-ab91-11f1-88c1-0242ac110002"} {"written_at": "2026-09-08T14:28:31.387Z", "written_ts": 1788877711387807000, "msg": "Updating the rundef from simple->github_pr", "type": "log", "logger": "root", "thread": "MainThread", "level": "INFO", "module": "trigger", "line_no": 30, "correlation_id": "90d57f76-ab91-11f1-be36-0242ac110002"} {"written_at": "2026-09-08T14:28:31.937Z", "written_ts": 1788877711937249000, "msg": "Updating the rundef from simple->gith_poller", "type": "log", "logger": "root", "thread": "MainThread", "level": "INFO", "module": "trigger", "line_no": 34, "correlation_id": "9129c860-ab91-11f1-be36-0242ac110002"} {"written_at": "2026-09-08T14:28:32.001Z", "written_ts": 1788877712001498000, "msg": "Caught integrity error and failed run: 1", "type": "log", "logger": "jobserv.flask", "thread": "MainThread", "level": "ERROR", "module": "run", "line_no": 172, "exc_info": "Traceback (most recent call last):\n File \"/repo/jobserv/api/run.py\", line 155, in _handle_triggers\n _create_triggers(\n File \"/repo/jobserv/api/run.py\", line 79, in _create_triggers\n trigger_runs(\n File \"/repo/jobserv/trigger.py\", line 53, in trigger_runs\n raise ValueError('A run named \"%s\" already exists' % name)\nValueError: A run named \"collision-name\" already exists\n", "filename": "run.py", "correlation_id": "9133d706-ab91-11f1-be36-0242ac110002"} {"written_at": "2026-09-08T14:28:32.066Z", "written_ts": 1788877712066026000, "msg": "Updating the rundef from simple->github_pr", "type": "log", "logger": "root", "thread": "MainThread", "level": "INFO", "module": "trigger", "line_no": 30, "correlation_id": "913d982c-ab91-11f1-be36-0242ac110002"} {"written_at": "2026-09-08T14:28:40.945Z", "written_ts": 1788877720945887000, "msg": "Unable to check doesnot matter.git/info/refs?service=git-upload-pack for changes: 500 ", "type": "log", "logger": "root", "thread": "MainThread", "level": "ERROR", "module": "git_poller", "line_no": 167, "correlation_id": "968a7e4e-ab91-11f1-be36-0242ac110002"} {"written_at": "2026-09-08T14:28:40.953Z", "written_ts": 1788877720953080000, "msg": "Adding foo to poller list", "type": "log", "logger": "root", "thread": "MainThread", "level": "INFO", "module": "git_poller", "line_no": 435, "correlation_id": "968b8b2c-ab91-11f1-be36-0242ac110002"} {"written_at": "2026-09-08T14:28:40.957Z", "written_ts": 1788877720957508000, "msg": "Updating foo", "type": "log", "logger": "root", "thread": "MainThread", "level": "INFO", "module": "git_poller", "line_no": 440, "correlation_id": "968c381a-ab91-11f1-be36-0242ac110002"} {"written_at": "2026-09-08T14:28:40.959Z", "written_ts": 1788877720959759000, "msg": "Looking for changes to: url1", "type": "log", "logger": "root", "thread": "MainThread", "level": "INFO", "module": "git_poller", "line_no": 186, "correlation_id": "968c8ffe-ab91-11f1-be36-0242ac110002"} {"written_at": "2026-09-08T14:28:40.960Z", "written_ts": 1788877720960033000, "msg": "url1 ref1 change oldsha->sha1", "type": "log", "logger": "root", "thread": "MainThread", "level": "INFO", "module": "git_poller", "line_no": 197, "correlation_id": "968c9a94-ab91-11f1-be36-0242ac110002"} {"written_at": "2026-09-08T14:28:40.960Z", "written_ts": 1788877720960604000, "msg": "Looking for changes to: url1", "type": "log", "logger": "root", "thread": "MainThread", "level": "INFO", "module": "git_poller", "line_no": 186, "correlation_id": "968cb0ec-ab91-11f1-be36-0242ac110002"} {"written_at": "2026-09-08T14:28:40.960Z", "written_ts": 1788877720960751000, "msg": "First run detected for url1 - ref1", "type": "log", "logger": "root", "thread": "MainThread", "level": "INFO", "module": "git_poller", "line_no": 195, "correlation_id": "968cb7a4-ab91-11f1-be36-0242ac110002"} {"written_at": "2026-09-08T14:28:40.960Z", "written_ts": 1788877720960910000, "msg": "Looking for changes to: url1", "type": "log", "logger": "root", "thread": "MainThread", "level": "INFO", "module": "git_poller", "line_no": 186, "correlation_id": "968cbd58-ab91-11f1-be36-0242ac110002"} {"written_at": "2026-09-08T14:28:40.961Z", "written_ts": 1788877720961137000, "msg": "First run detected for url1 - ref2", "type": "log", "logger": "root", "thread": "MainThread", "level": "INFO", "module": "git_poller", "line_no": 195, "correlation_id": "968cc604-ab91-11f1-be36-0242ac110002"} {"written_at": "2026-09-08T14:28:40.961Z", "written_ts": 1788877720961835000, "msg": "Trigger build for proj with params: {'GIT_URL': 'fake'}", "type": "log", "logger": "root", "thread": "MainThread", "level": "INFO", "module": "git_poller", "line_no": 352, "correlation_id": "968ce120-ab91-11f1-be36-0242ac110002"} {"written_at": "2026-09-08T14:28:40.962Z", "written_ts": 1788877720962020000, "msg": "Skipping build for proj because of skip-ci message", "type": "log", "logger": "root", "thread": "MainThread", "level": "INFO", "module": "git_poller", "line_no": 382, "correlation_id": "968ce8a0-ab91-11f1-be36-0242ac110002"} {"written_at": "2026-09-08T14:28:40.962Z", "written_ts": 1788877720962746000, "msg": "Trigger build for proj with params: {'GIT_URL': 'https://github.com'}", "type": "log", "logger": "root", "thread": "MainThread", "level": "INFO", "module": "git_poller", "line_no": 352, "correlation_id": "968d04b6-ab91-11f1-be36-0242ac110002"} {"written_at": "2026-09-08T14:28:40.963Z", "written_ts": 1788877720963022000, "msg": "Skipping build for proj because of skip-ci message", "type": "log", "logger": "root", "thread": "MainThread", "level": "INFO", "module": "git_poller", "line_no": 382, "correlation_id": "968d0f6a-ab91-11f1-be36-0242ac110002"} {"written_at": "2026-09-08T14:28:40.963Z", "written_ts": 1788877720963745000, "msg": "Trigger build for proj with params: {'GIT_URL': 'https://fake.com'}", "type": "log", "logger": "root", "thread": "MainThread", "level": "INFO", "module": "git_poller", "line_no": 352, "correlation_id": "968d2bd0-ab91-11f1-be36-0242ac110002"} {"written_at": "2026-09-08T14:28:40.963Z", "written_ts": 1788877720963900000, "msg": "Skipping build for proj because of skip-ci message", "type": "log", "logger": "root", "thread": "MainThread", "level": "INFO", "module": "git_poller", "line_no": 382, "correlation_id": "968d31b6-ab91-11f1-be36-0242ac110002"} {"written_at": "2026-09-08T14:28:44.357Z", "written_ts": 1788877724357935000, "msg": "validation.invalid", "type": "log", "logger": "pykwalify.core", "thread": "MainThread", "level": "ERROR", "module": "core", "line_no": 190, "correlation_id": "9893161a-ab91-11f1-be36-0242ac110002"} {"written_at": "2026-09-08T14:28:44.358Z", "written_ts": 1788877724358081000, "msg": " --- All found errors ---", "type": "log", "logger": "pykwalify.core", "thread": "MainThread", "level": "ERROR", "module": "core", "line_no": 191, "correlation_id": "9893161a-ab91-11f1-be36-0242ac110002"} {"written_at": "2026-09-08T14:28:44.358Z", "written_ts": 1788877724358189000, "msg": "[\"Cannot find required key 'timeout'. Path: ''\"]", "type": "log", "logger": "pykwalify.core", "thread": "MainThread", "level": "ERROR", "module": "core", "line_no": 192, "correlation_id": "9893161a-ab91-11f1-be36-0242ac110002"} {"written_at": "2026-09-08T14:28:44.648Z", "written_ts": 1788877724648605000, "msg": "Failing cancelled run: proj1/1/bla", "type": "log", "logger": "root", "thread": "MainThread", "level": "ERROR", "module": "worker", "line_no": 235, "correlation_id": "98bf7048-ab91-11f1-be36-0242ac110002"} {"written_at": "2026-09-08T14:28:44.932Z", "written_ts": 1788877724932771000, "msg": "marking w1 offline 81s without a check-in", "type": "log", "logger": "root", "thread": "MainThread", "level": "INFO", "module": "worker", "line_no": 46, "correlation_id": "98eacc70-ab91-11f1-be36-0242ac110002"} {"written_at": "2026-09-08T14:28:45.216Z", "written_ts": 1788877725216618000, "msg": "marking w1 offline (no pings log)", "type": "log", "logger": "root", "thread": "MainThread", "level": "INFO", "module": "worker", "line_no": 75, "correlation_id": "99161c36-ab91-11f1-be36-0242ac110002"} {"written_at": "2026-09-08T14:28:45.504Z", "written_ts": 1788877725504746000, "msg": "rotating pings log to: /tmp/tmpxqpysoix/w1/pings.log.1788877725", "type": "log", "logger": "root", "thread": "MainThread", "level": "INFO", "module": "worker", "line_no": 57, "correlation_id": "99421368-ab91-11f1-be36-0242ac110002"} {"written_at": "2026-09-08T14:28:45.799Z", "written_ts": 1788877725799176000, "msg": "Run has not been acked by worker: 1 ", "type": "log", "logger": "root", "thread": "MainThread", "level": "ERROR", "module": "worker", "line_no": 269, "correlation_id": "996f00da-ab91-11f1-be36-0242ac110002"} {"written_at": "2026-09-08T14:28:46.095Z", "written_ts": 1788877726095376000, "msg": "Found stuck run proj1/1/bla on worker None", "type": "log", "logger": "root", "thread": "MainThread", "level": "ERROR", "module": "worker", "line_no": 212, "correlation_id": "999c32d0-ab91-11f1-be36-0242ac110002"} {"written_at": "2026-09-08T14:28:46.098Z", "written_ts": 1788877726098866000, "msg": "Found stuck run proj1/1/bla on worker None", "type": "log", "logger": "root", "thread": "MainThread", "level": "ERROR", "module": "worker", "line_no": 212, "correlation_id": "999c32d0-ab91-11f1-be36-0242ac110002"} {"written_at": "2026-09-08T14:28:46.871Z", "written_ts": 1788877726871073000, "msg": "Entering surge support for armhf: count=1", "type": "log", "logger": "root", "thread": "MainThread", "level": "INFO", "module": "worker", "line_no": 170, "correlation_id": "9a128f70-ab91-11f1-be36-0242ac110002"} {"written_at": "2026-09-08T14:28:46.880Z", "written_ts": 1788877726880004000, "msg": "Exiting surge support for armhf", "type": "log", "logger": "root", "thread": "MainThread", "level": "INFO", "module": "worker", "line_no": 158, "correlation_id": "9a128f70-ab91-11f1-be36-0242ac110002"} {"written_at": "2026-09-08T14:28:46.880Z", "written_ts": 1788877726880258000, "msg": "Entering surge support for amd64: count=2", "type": "log", "logger": "root", "thread": "MainThread", "level": "INFO", "module": "worker", "line_no": 170, "correlation_id": "9a128f70-ab91-11f1-be36-0242ac110002"} {"written_at": "2026-09-08T14:28:46.882Z", "written_ts": 1788877726882136000, "msg": "Entering surge support for armhf: count=3", "type": "log", "logger": "root", "thread": "MainThread", "level": "INFO", "module": "worker", "line_no": 170, "correlation_id": "9a128f70-ab91-11f1-be36-0242ac110002"} {"written_at": "2026-09-08T14:28:47.171Z", "written_ts": 1788877727171922000, "msg": "Entering surge support for amd64: count=1", "type": "log", "logger": "root", "thread": "MainThread", "level": "INFO", "module": "worker", "line_no": 170, "correlation_id": "9a407750-ab91-11f1-be36-0242ac110002"} {"written_at": "2026-09-08T14:28:47.176Z", "written_ts": 1788877727176151000, "msg": "Exiting surge support for amd64", "type": "log", "logger": "root", "thread": "MainThread", "level": "INFO", "module": "worker", "line_no": 158, "correlation_id": "9a407750-ab91-11f1-be36-0242ac110002"} {"written_at": "2026-09-08T14:28:47.462Z", "written_ts": 1788877727462721000, "msg": "truncating the pings log", "type": "log", "logger": "root", "thread": "MainThread", "level": "INFO", "module": "worker", "line_no": 60, "correlation_id": "9a6cd6ce-ab91-11f1-be36-0242ac110002"} {"written_at": "2026-09-08T14:28:47.543Z", "written_ts": 1788877727543763000, "msg": "Unable to read: bad: Unable to load PEM file. See https://cryptography.io/en/latest/faq/#why-can-t-i-import-my-pem-file for more details. MalformedFraming", "type": "log", "logger": "root", "thread": "MainThread", "level": "ERROR", "module": "worker_jwt", "line_no": 44, "correlation_id": "9a79341e-ab91-11f1-be36-0242ac110002"} Docker not available Docker not available Test requires MySQL Test requires MySQL Test requires MySQL Test requires MySQL Test requires MySQL Test requires MySQL + '[' -z ] + rm -rf /tmp/tmp.bDdgcH Script completed == 2026-09-08 14:28:54.591224: Finding artifacts to upload Uploading 1 items 20583 bytes == 2026-09-08 14:28:55.586441: Analyzing junit results(/srv/gavelci-worker/runs/tmpc3qaf_rc/archive/junit.xml) == 2026-09-08 14:28:56.439909: Runner has completed _ _ | \/ | \__|____|__/ | o o| Thumbs Up |___\/_|_____||_ | _____|__| | | |______| | | | | | | | | |_| |_|