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)
I think an easy solution would be a jam || 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)