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>

Reply via email to