Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[v3.6-branch] ci: Use zephyr-runner v2 #70131

Commits on Mar 12, 2024

  1. ci: twister: Use zephyr-runner v2

    This commit updates the twister workflow to use the new zephyr-runner v2 CI
    runner deployment.
    
    It also updates the workflow to use the `ci-repo-cache` Docker image, which
    includes the Zephyr repository cache, because the node level repository
    cache is no longer available in the zephyr-runner v2.
    
    Signed-off-by: Stephanos Ioannidis <[email protected]>
    (cherry picked from commit 7c19bc7)
    stephanosio committed Mar 12, 2024
    Configuration menu
    Copy the full SHA
    d190d1f View commit details
    Browse the repository at this point in the history
  2. ci: twister: Print cloud service information

    This commit updates the twister workflow jobs that run on the zephyr-runner
    v2 to print the underlying cloud service information in the logs to help
    trace and debug potential runner issues.
    
    Signed-off-by: Stephanos Ioannidis <[email protected]>
    (cherry picked from commit 9a9bebb)
    stephanosio committed Mar 12, 2024
    Configuration menu
    Copy the full SHA
    79cb317 View commit details
    Browse the repository at this point in the history
  3. ci: twister: Store ccache data in node cache

    This commit updates the twister workflow to store ccache data in the
    zephyr-runner v2 node cache.
    
    Signed-off-by: Stephanos Ioannidis <[email protected]>
    (cherry picked from commit 1be3aac)
    stephanosio committed Mar 12, 2024
    Configuration menu
    Copy the full SHA
    3005a62 View commit details
    Browse the repository at this point in the history
  4. ci: twister: Use Redis remote storage for ccache

    This commit updates the twister workflow to, when available, use Redis
    remote storage backend for the ccache compilation cache data.
    
    The Redis cache server is hosted in the Kubernetes cluster in which the
    zephyr-runner pods run -- the Redis remote storage backend will be ignored
    if the server is unavailable.
    
    Signed-off-by: Stephanos Ioannidis <[email protected]>
    (cherry picked from commit 3823f1f)
    stephanosio committed Mar 12, 2024
    Configuration menu
    Copy the full SHA
    0782c6a View commit details
    Browse the repository at this point in the history
  5. ci: twister: Add --specs to ccache ignore option list

    This commit adds the compiler `--specs=*` flag to the ccache ignore option
    list because ccache is unable to resolve the toolchain-provided specs file
    path and will consider source files to be uncacheable if it is unable to
    read the specified specs file.
    
    Note that adding `--specs=*` to the ignore option list is not a problem
    because it is unlikely for the content of the toolchain libc spec file to
    change without the compiler executable itself changing.
    
    Signed-off-by: Stephanos Ioannidis <[email protected]>
    (cherry picked from commit d3f9f39)
    stephanosio committed Mar 12, 2024
    Configuration menu
    Copy the full SHA
    244bf55 View commit details
    Browse the repository at this point in the history
  6. ci: twister: Prioritise remote Redis cache storage

    This commit updates the twister workflow such that ccache only uses remote
    Redis cache storage when available.
    
    The purpose of this to reduce the individual runner local disk IOPS
    requirement; thereby, reducing the overall load on the SAN.
    
    Signed-off-by: Stephanos Ioannidis <[email protected]>
    (cherry picked from commit 527435d)
    stephanosio committed Mar 12, 2024
    Configuration menu
    Copy the full SHA
    1d5c67b View commit details
    Browse the repository at this point in the history
  7. ci: twister: Set twister timeout multiplier to 2

    This commit sets the twister timeout multiplier to 2, which effectively
    increases the default test timeout from 60 to 120 seconds, because the new
    cost-effective Zephyr runners may take longer to execute tests and the
    default timeout is not sufficient for some tests to complete.
    
    Signed-off-by: Stephanos Ioannidis <[email protected]>
    (cherry picked from commit de68ea7)
    stephanosio committed Mar 12, 2024
    Configuration menu
    Copy the full SHA
    147d3a6 View commit details
    Browse the repository at this point in the history
  8. ci: twister: Set build job timeout to 24 hours

    This commit increases the twister build job timeout from the default value
    of 6 hours to 24 hours because scheduled (weekly) build runs take longer
    than 6 hours to complete.
    
    Signed-off-by: Stephanos Ioannidis <[email protected]>
    (cherry picked from commit 7df7e83)
    stephanosio committed Mar 12, 2024
    Configuration menu
    Copy the full SHA
    acd8bfa View commit details
    Browse the repository at this point in the history
  9. ci: twister: increase matrix size for push jobs

    Increase matrix size to 20 from 15 on push events.
    
    Signed-off-by: Anas Nashif <[email protected]>
    (cherry picked from commit 9970724)
    nashif authored and stephanosio committed Mar 12, 2024
    Configuration menu
    Copy the full SHA
    593a8eb View commit details
    Browse the repository at this point in the history
  10. ci: doc-build: Use zephyr-runner v2

    This commit updates the doc-build workflow to use the new zephyr-runner v2
    CI runner deployment.
    
    It also installs additional system packages that are not available by
    default in the zephyr-runner v2.
    
    Signed-off-by: Stephanos Ioannidis <[email protected]>
    (cherry picked from commit 2819c35)
    stephanosio committed Mar 12, 2024
    Configuration menu
    Copy the full SHA
    2d09c9a View commit details
    Browse the repository at this point in the history
  11. ci: footprint-tracking: Use zephyr-runner v2

    This commit updates the bsim-tests workflow to use the new zephyr-runner v2
    CI runner deployment.
    
    Signed-off-by: Stephanos Ioannidis <[email protected]>
    (cherry picked from commit 9838633)
    stephanosio committed Mar 12, 2024
    Configuration menu
    Copy the full SHA
    06dc26a View commit details
    Browse the repository at this point in the history
  12. ci: codecov: Run on all zephyrproject-rtos organisation repositories

    This commit updates the codecov workflow to run on all forks under the
    zephyrproject-rtos organisation.
    
    The purpose of this is mainly to simplify the process of testing of this
    workflow under the zephyr-testing repository.
    
    Signed-off-by: Stephanos Ioannidis <[email protected]>
    (cherry picked from commit c1bd5a6)
    stephanosio committed Mar 12, 2024
    Configuration menu
    Copy the full SHA
    da6ec9d View commit details
    Browse the repository at this point in the history
  13. ci: codecov: Use zephyr-runner v2

    This commit updates the codecov workflow to use the new zephyr-runner v2 CI
    runner deployment.
    
    It also updates the workflow to use the `ci-repo-cache` Docker image, which
    includes the Zephyr repository cache, because the node level repository
    cache is no longer available in the zephyr-runner v2.
    
    Signed-off-by: Stephanos Ioannidis <[email protected]>
    (cherry picked from commit 354e290)
    stephanosio committed Mar 12, 2024
    Configuration menu
    Copy the full SHA
    72d33df View commit details
    Browse the repository at this point in the history
  14. ci: codecov: Store ccache data in node cache

    This commit updates the codecov workflow to store ccache data in the
    zephyr-runner v2 node cache.
    
    Signed-off-by: Stephanos Ioannidis <[email protected]>
    (cherry picked from commit 36b0b10)
    stephanosio committed Mar 12, 2024
    Configuration menu
    Copy the full SHA
    0a351ea View commit details
    Browse the repository at this point in the history
  15. ci: codecov: Use Redis remote storage for ccache

    This commit updates the codecov workflow to, when available, use Redis
    remote storage backend for the ccache compilation cache data.
    
    The Redis cache server is hosted in the Kubernetes cluster in which the
    zephyr-runner pods run -- the Redis remote storage backend will be ignored
    if the server is unavailable.
    
    Signed-off-by: Stephanos Ioannidis <[email protected]>
    (cherry picked from commit b57f1b5)
    stephanosio committed Mar 12, 2024
    Configuration menu
    Copy the full SHA
    8700594 View commit details
    Browse the repository at this point in the history
  16. ci: codecov: Add --specs to ccache ignore option list

    This commit adds the compiler `--specs=*` flag to the ccache ignore option
    list because ccache is unable to resolve the toolchain-provided specs file
    path and will consider source files to be uncacheable if it is unable to
    read the specified specs file.
    
    Note that adding `--specs=*` to the ignore option list is not a problem
    because it is unlikely for the content of the toolchain libc spec file to
    change without the compiler executable itself changing.
    
    Signed-off-by: Stephanos Ioannidis <[email protected]>
    (cherry picked from commit ab9f6b4)
    stephanosio committed Mar 12, 2024
    Configuration menu
    Copy the full SHA
    ef5c3d9 View commit details
    Browse the repository at this point in the history
  17. ci: codecov: Prioritise remote Redis cache storage

    This commit updates the codecov workflow such that ccache only uses remote
    Redis cache storage when available.
    
    The purpose of this to reduce the individual runner local disk IOPS
    requirement; thereby, reducing the overall load on the SAN.
    
    Signed-off-by: Stephanos Ioannidis <[email protected]>
    (cherry picked from commit a636c52)
    stephanosio committed Mar 12, 2024
    Configuration menu
    Copy the full SHA
    8595592 View commit details
    Browse the repository at this point in the history
  18. ci: codecov: Set twister timeout multiplier to 2

    This commit sets the codecov workflow twister timeout multiplier to 2,
    which effectively increases the default test timeout from 60 to 120
    seconds, because the new cost-effective Zephyr runners may take longer to
    execute tests and the default timeout is not sufficient for some tests to
    complete.
    
    Signed-off-by: Stephanos Ioannidis <[email protected]>
    (cherry picked from commit 550bb4e)
    stephanosio committed Mar 12, 2024
    Configuration menu
    Copy the full SHA
    20011da View commit details
    Browse the repository at this point in the history
  19. ci: clang: Use zephyr-runner v2

    This commit updates the clang workflow to use the new zephyr-runner v2 CI
    runner deployment.
    
    It also updates the workflow to use the `ci-repo-cache` Docker image, which
    includes the Zephyr repository cache, because the node level repository
    cache is no longer available in the zephyr-runner v2.
    
    Signed-off-by: Stephanos Ioannidis <[email protected]>
    (cherry picked from commit 64ca699)
    stephanosio committed Mar 12, 2024
    Configuration menu
    Copy the full SHA
    d0c0b54 View commit details
    Browse the repository at this point in the history
  20. ci: clang: Store ccache data in node cache

    This commit updates the clang workflow to store ccache data in the
    zephyr-runner v2 node cache.
    
    Signed-off-by: Stephanos Ioannidis <[email protected]>
    (cherry picked from commit cd83f07)
    stephanosio committed Mar 12, 2024
    Configuration menu
    Copy the full SHA
    33185a6 View commit details
    Browse the repository at this point in the history
  21. ci: clang: Use Redis remote storage for ccache

    This commit updates the clang workflow to, when available, use Redis remote
    storage backend for the ccache compilation cache data.
    
    The Redis cache server is hosted in the Kubernetes cluster in which the
    zephyr-runner pods run -- the Redis remote storage backend will be ignored
    if the server is unavailable.
    
    Signed-off-by: Stephanos Ioannidis <[email protected]>
    (cherry picked from commit 4a2884c)
    stephanosio committed Mar 12, 2024
    Configuration menu
    Copy the full SHA
    987a590 View commit details
    Browse the repository at this point in the history
  22. ci: clang: Prioritise remote Redis cache storage

    This commit updates the clang workflow such that ccache only uses remote
    Redis cache storage when available.
    
    The purpose of this to reduce the individual runner local disk IOPS
    requirement; thereby, reducing the overall load on the SAN.
    
    Signed-off-by: Stephanos Ioannidis <[email protected]>
    (cherry picked from commit 95e7eb3)
    stephanosio committed Mar 12, 2024
    Configuration menu
    Copy the full SHA
    1e81815 View commit details
    Browse the repository at this point in the history
  23. ci: bsim-tests: Use zephyr-runner v2

    This commit updates the bsim-tests workflow to use the new zephyr-runner v2
    CI runner deployment.
    
    It also updates the workflow to use the `ci-repo-cache` Docker image, which
    includes the Zephyr repository cache, because the node level repository
    cache is no longer available in the zephyr-runner v2.
    
    Signed-off-by: Stephanos Ioannidis <[email protected]>
    (cherry picked from commit 9f9a6c5)
    stephanosio committed Mar 12, 2024
    Configuration menu
    Copy the full SHA
    4af59f2 View commit details
    Browse the repository at this point in the history
  24. testsuite: ztest: Increase ZTEST_TEST_DELAY_MS to 5000

    This commit increases the default value of `ZTEST_TEST_DELAY_MS` from 3000
    to 5000 milliseconds because the current value of 3000ms may not be
    sufficient for the hosts with lower CPU clock frequency (e.g. new Zephyr CI
    runners with cost-effective processors).
    
    Signed-off-by: Stephanos Ioannidis <[email protected]>
    (cherry picked from commit 1bf7510)
    stephanosio committed Mar 12, 2024
    Configuration menu
    Copy the full SHA
    59cb2fa View commit details
    Browse the repository at this point in the history
  25. tests: kernel: thread_runtime_stats: Relax precision test for QEMU

    This commit relaxes the idle event statistics test precision requirement
    for emulated QEMU targets because the cycle counts may be inaccurate when
    the host CPU is overloaded (e.g. when running tests with twister) and a
    high failure rate is observed for this test in the CI.
    
    Signed-off-by: Stephanos Ioannidis <[email protected]>
    (cherry picked from commit 2b2dd01)
    stephanosio committed Mar 12, 2024
    Configuration menu
    Copy the full SHA
    bf36753 View commit details
    Browse the repository at this point in the history