On Wed, 14 May 2025 at 19:17, Adriano Cordova <adria...@gmail.com> wrote: > > Add an http server to CI tests so that HTTP booting and > loading can be tested. > > Signed-off-by: Adriano Cordova <adriano.cord...@canonical.com> > --- > > changes in v2: > - Remove HTTP_SERVER argument for test.py > > .azure-pipelines.yml | 11 +++++++++++ > .gitlab-ci.yml | 11 +++++++++++ > 2 files changed, 22 insertions(+) > > diff --git a/.azure-pipelines.yml b/.azure-pipelines.yml > index 9c136513bb9..334cf27cfb5 100644 > --- a/.azure-pipelines.yml > +++ b/.azure-pipelines.yml > @@ -316,9 +316,20 @@ stages: > fi > export PATH=/opt/qemu/bin:/tmp/uboot-test-hooks/bin:\${PATH} > export PYTHONPATH=/tmp/uboot-test-hooks/py/travis-ci > + python3 -m http.server 80 --directory "\${UBOOT_TRAVIS_BUILD_DIR}" > > /dev/null 2>&1 & > + HTTP_PID=\$! > + sleep 1 # Give the server a moment to start > + if ps -p \${HTTP_PID} > /dev/null; then > + export HTTP_PID > + else > + unset HTTP_PID > + fi > # "\${var:+"-k \$var"}" expands to "" if \$var is empty, "-k > \$var" if not > ./test/py/test.py -ra -o > cache_dir="\$UBOOT_TRAVIS_BUILD_DIR"/.pytest_cache --bd \${TEST_PY_BD} > \${TEST_PY_ID} \${TEST_PY_EXTRA} \${TEST_PY_TEST_SPEC:+"-k > \${TEST_PY_TEST_SPEC}"} --build-dir "\$UBOOT_TRAVIS_BUILD_DIR" --report-dir > "\$UBOOT_TRAVIS_BUILD_DIR" > --junitxml=\$(System.DefaultWorkingDirectory)/results.xml > # the below corresponds to .gitlab-ci.yml "after_script" > + if [[ -n "\${HTTP_PID}" ]]; then > + kill \${HTTP_PID}; > + fi > rm -rf /tmp/uboot-test-hooks /tmp/venv > EOF > - task: CopyFiles@2 > diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml > index 7aadd5d8b73..f320de0c29c 100644 > --- a/.gitlab-ci.yml > +++ b/.gitlab-ci.yml > @@ -106,10 +106,21 @@ stages: > # "${var:+"-k $var"}" expands to "" if $var is empty, "-k $var" if not > - export PATH=/opt/qemu/bin:/tmp/uboot-test-hooks/bin:${PATH}; > export PYTHONPATH=/tmp/uboot-test-hooks/py/travis-ci; > + python3 -m http.server 80 --directory "${UBOOT_TRAVIS_BUILD_DIR}" > > /dev/null 2>&1 & > + HTTP_PID=$! > + sleep 1 # Give the server a moment to start > + if ps -p ${HTTP_PID} > /dev/null; then > + export HTTP_PID > + else > + unset HTTP_PID > + fi > ./test/py/test.py -ra --bd ${TEST_PY_BD} ${TEST_PY_ID} ${TEST_PY_EXTRA} > ${TEST_PY_TEST_SPEC:+"-k ${TEST_PY_TEST_SPEC}"} > --build-dir "$UBOOT_TRAVIS_BUILD_DIR" > --junitxml=/tmp/${TEST_PY_BD}/results.xml > + if [[ -n "${HTTP_PID}" ]]; then > + kill ${HTTP_PID}; > + fi > artifacts: > when: always > paths: > -- > 2.48.1 >
Reviewed-by: Ilias Apalodimas <ilias.apalodi...@linaro.org>