Opened 2 years ago
Closed 2 years ago
#17959 closed bug (fixed)
Some build failures not detected by concourse
Reported by: | bipolar | Owned by: | kallisti5 |
---|---|---|---|
Priority: | critical | Milestone: | R1/beta4 |
Component: | Sys-Admin | Version: | R1/Development |
Keywords: | Cc: | ||
Blocked By: | Blocking: | ||
Platform: | All |
Description
Reported on IRC by rubberduck:
For hrev56490 and hrev56480, the download .zip files from
https://download.haiku-os.org/nightly-images/x86_gcc2h/
and
https://download.haiku-os.org/nightly-images/x86_64/
Only contain the Readme.md
file, but no .iso files (zip size 1.2 KB).
---
See (for example): https://ci.haiku-os.org/teams/nightly/pipelines/master-x86_64/jobs/image-master-x86_64/builds/1125
Task "build-master-anyboot" appears green despite ending in "BUILD FAILURE".
Change History (8)
comment:1 by , 2 years ago
Milestone: | Unscheduled → R1/beta4 |
---|---|
Priority: | normal → critical |
comment:2 by , 2 years ago
Component: | - General → Sys-Admin |
---|---|
Owner: | changed from | to
Status: | new → assigned |
comment:3 by , 2 years ago
comment:4 by , 2 years ago
See https://dev.haiku-os.org/ticket/17961 to fix the actual bug.
lets keep this one open to track the build system issue.
comment:5 by , 2 years ago
Summary: | Download (.zip) files for the latest nightlies do not contain the .iso file → Some build failures not detected by concourse |
---|
So, the suspect cause is concourse only detects the "last" return status in a set of steps.
The build pipeline for nightly images is as follows:
run: path: /bin/bash args: - -c - | doing stuff jam rm
If Jam returns non-0, the failure isn't detected by concourse since rm is the "final" command to run. The continuous builds have jam as the last command executed (so failures are properly detected)
exit 1" instead. This would guarantee an exit on error. |
comment:6 by , 2 years ago
waddlesplash mentioned passing -e to bash which is an even better solution. I'm going to give that a try as soon as the CI builds slow down
comment:7 by , 2 years ago
You should be able to use "set -e" to make bash fail at the first failed command instead of continuing the script.
comment:8 by , 2 years ago
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
Checking. I've seen concourse not detect failures before resulting in empty zip files. This appears to be what happened in this instance.
https://ci.haiku-os.org/teams/nightly/pipelines/master-x86_64/jobs/image-master-x86_64/builds/1125#L631da77d:2318
When the build failure isn't detected, the zip gets created minus the actual iso file (since the build failed)