prplos/.gitlab-ci.yml
Petr Štetiar ac834c9082
ci: fix wasting of runtime testing resources after failed builds
Currently we're wasting roughly about 3 minutes of precious testbed time
when the firmware build CI job fails, every time. Due to increased
testing, this is no longer acceptable waste of testing resources.

During the investigation it was found out, that this is happening due to
changes introduced in commit febd8b0032fa (".gitlab: Only run tests when
TFTP_IMAGE_DOWNLOAD_URL is set"), feature which was mainly introduced to
allow testing of externally build firmware images inside SoftAtHome for
previous, pre-2024 contribution delivery workflow. This is no longer
being used.

So lets fix it, but removing of TFTP_IMAGE_DOWNLOAD_URL feature. If we
need this feature again, it should be implemented in a different way,
avoiding wasting of the testbed resources after failed build.

Additionally, we need to change `rules: - when: always` in testbed.yml,
as it would still make run the CI job, despite of the failed dependency,
resorting back to the default `on_success` when rules, where the job is
run only when no jobs in earlier stages fail.

Signed-off-by: Petr Štetiar <petr.stetiar@prplfoundation.org>
2025-07-31 15:27:24 +00:00

97 lines
2.9 KiB
YAML

variables:
CI_DESIGNATED_BRANCH: prpl/nightly
CI_DESIGNATED_BRANCH_SLUG: prpl-nightly
include:
- local: .gitlab/build.yml
- local: .gitlab/release.yml
- local: .gitlab/cdrouter.yml
- local: .gitlab/cdrouter/prpl-haze.yml
- local: .gitlab/cdrouter/turris-omnia.yml
- local: .gitlab/cdrouter/urx851-hdk-3.yml
- local: .gitlab/cdrouter/mxl25641-hdk-6.yml
- local: .gitlab/cdrouter/wnc-freedom.yml
- local: .gitlab/coverity.yml
- local: .gitlab/docker.yml
- local: .gitlab/docker/builder/gitlab.yml
- local: .gitlab/docker/testbed/gitlab.yml
- local: .gitlab/docker/sdk/gitlab.yml
- local: .gitlab/docker/ib/gitlab.yml
- local: .gitlab/docker/ib/lcm/gitlab.yml
- local: .gitlab/testbed.yml
- local: .gitlab/testbed/prpl-haze.yml
- local: .gitlab/testbed/turris-omnia.yml
- local: .gitlab/testbed/urx851-hdk-3.yml
- local: .gitlab/testbed/mxl25641-hdk-6.yml
- local: .gitlab/testbed/wnc-freedom.yml
stages:
- docker
- docker test
- docker deploy
- build
- release
- docker SDK and IB
- docker SDK and IB test
- docker SDK and IB deploy
- docker IB LCM container
- run
- cdrouter smoke
- cdrouter
- coverity
build test mxl_x86_osp_tb341 mxl_wlan_hostap_ng prpl security:
image: registry.gitlab.com/prpl-foundation/prplos/prplos/prplos-nightly/builder-osp@sha256:081488878a834952dbfd223f90dba987052082019f5816a0798f72bc4b3a95a1
extends: .build test config
artifacts:
tags:
- firmware-builder-osp
build test mxl_x86_osp_tb341_v2 mxl_wlan_hostap_ng_wav700 prpl cellular security:
image: registry.gitlab.com/prpl-foundation/prplos/prplos/prplos-nightly/builder-osp@sha256:081488878a834952dbfd223f90dba987052082019f5816a0798f72bc4b3a95a1
extends: .build test config
artifacts:
tags:
- firmware-builder-osp
build test mvebu prpl security:
extends: .build test config
build test x86_64 prpl security:
extends: .build test config
build test ipq807x prpl security:
extends: .build test config
build test qca_ipq95xx prpl cellular security thread:
extends: .build test config
coverity scan ipq807x prpl:
extends: .coverity scan config
variables:
CI_COVERITY_COMPILER_TEMPLATE_LIST: >
aarch64-openwrt-linux-gcc
aarch64-openwrt-linux-musl-gcc
run test Turris Omnia initramfs:
allow_failure: true
needs: ["build test mvebu prpl security"]
extends: .turris-omnia testbed
run test Haze initramfs:
allow_failure: true
needs: ["build test ipq807x prpl security"]
extends: .prpl-haze testbed
run test URX851-HDK-3 with system on eMMC:
needs: ["build test mxl_x86_osp_tb341 mxl_wlan_hostap_ng prpl security"]
extends: .urx851-hdk-3 testbed
run test MXL25641-HDK-6 with system on eMMC:
needs: ["build test mxl_x86_osp_tb341_v2 mxl_wlan_hostap_ng_wav700 prpl cellular security"]
extends: .mxl25641-hdk-6 testbed
run test Freedom initramfs:
needs: ["build test qca_ipq95xx prpl cellular security thread"]
extends: .wnc-freedom testbed