deb-build-jobs issueshttps://source.puri.sm/Librem5/deb-build-jobs/-/issues2020-12-08T14:31:31Zhttps://source.puri.sm/Librem5/deb-build-jobs/-/issues/63Add blessed builds for byzantium2020-12-08T14:31:31ZGuido GuntherAdd blessed builds for byzantiumUntil laneakia builds straigt out of git add a pipeline for byzantium.Until laneakia builds straigt out of git add a pipeline for byzantium.https://source.puri.sm/Librem5/deb-build-jobs/-/issues/55blessed-builds: report success although no artifacts are produced2020-02-26T17:00:16ZGuido Guntherblessed-builds: report success although no artifacts are produced@arno.bauernoppel one more thing i noticed with your current pipeline logic:
if a job does not produce any debs the pipeline is marked as succesfull although it stops, see:
http://localhost:8080/job/Builds/job/debs/job/deb-folks-amber-...@arno.bauernoppel one more thing i noticed with your current pipeline logic:
if a job does not produce any debs the pipeline is marked as succesfull although it stops, see:
http://localhost:8080/job/Builds/job/debs/job/deb-folks-amber-phone-staging-aarch64/
(folks sets export-dir so the debs end up somehwere else but the pipeline must never report success then).Arno BauernoppelArno Bauernoppelhttps://source.puri.sm/Librem5/deb-build-jobs/-/issues/54blessed-builds: don't try to upload failed builds2021-11-11T09:16:38ZGuido Guntherblessed-builds: don't try to upload failed buildssee e.g. http://localhost:8080/job/Builds/job/debs/job/deb-mozjs60-amber-phone-staging-aarch64/2/console
when a build fails like
```
I: unmounting dev/shm filesystem
I: unmounting proc filesystem
I: unmounting sys filesystem
I: Cleanin...see e.g. http://localhost:8080/job/Builds/job/debs/job/deb-mozjs60-amber-phone-staging-aarch64/2/console
when a build fails like
```
I: unmounting dev/shm filesystem
I: unmounting proc filesystem
I: unmounting sys filesystem
I: Cleaning COW directory
I: forking: rm -rf /var/cache/pbuilder/build/cow.15260
gbp:error: 'git-pbuilder --jobs=auto -nc --build=full -sa' failed: it exited with 1
[Pipeline] echo
Script returned 1. Aborting build.
```
but then the upload step tries to pick up the pieces:
```
Running on Jenkins in /var/lib/jenkins/workspace/Builds/debs/deb-mozjs60-amber-phone-staging-aarch64@2
[Pipeline] {
[Pipeline] sh
...
+ + echo ./*.changes
wc -w
+ [ 1 -ne 1 ]
+ ls ./*.changes
ls: cannot access './*.changes': No such file or directory
+ changes_file=
[Pipeline] echo
Script returned 2. Aborting build.
```
and only this makes the pipeline stop. The pipeline should have stopped after the first build failure.https://source.puri.sm/Librem5/deb-build-jobs/-/issues/53blessed-builds: switch build machine to virtio2020-02-07T19:14:41ZGuido Guntherblessed-builds: switch build machine to virtio(filing it here since we don't have a dedicated visible repo for hw stuff):
The vm uses scsi emulation instead of virtio which is way more cpu intensive on I/O. We should switch to virtio.(filing it here since we don't have a dedicated visible repo for hw stuff):
The vm uses scsi emulation instead of virtio which is way more cpu intensive on I/O. We should switch to virtio.https://source.puri.sm/Librem5/deb-build-jobs/-/issues/52blessed-builds: autopkgtests rebuild the source tree2020-12-07T09:23:37ZGuido Guntherblessed-builds: autopkgtests rebuild the source treethis is usually not necessary when you pass the `.changes` file to autopkgtst (and copy the other build artifacts into the container too) . This saves lots of time when performing the test step and also makes sure you test the just built...this is usually not necessary when you pass the `.changes` file to autopkgtst (and copy the other build artifacts into the container too) . This saves lots of time when performing the test step and also makes sure you test the just built binaries.https://source.puri.sm/Librem5/deb-build-jobs/-/issues/51blessed-builds: 'test package' step should be more clever when no tests are ...2020-12-07T09:23:31ZGuido Guntherblessed-builds: 'test package' step should be more clever when no tests are presentThe current machinery fires of even if the package does not contain any autopktests, in this case i'd be better to skip all the work since most of the time is spent installing dependencies.The current machinery fires of even if the package does not contain any autopktests, in this case i'd be better to skip all the work since most of the time is spent installing dependencies.Arno BauernoppelArno Bauernoppelhttps://source.puri.sm/Librem5/deb-build-jobs/-/issues/50blessed-builds: tests not being run on succesuful uploads2020-12-14T10:45:30ZGuido Guntherblessed-builds: tests not being run on succesuful uploadsNote that for all builds passing the 'Upload Debian Packages' stage with success (instead of unstable) the test stage is then not being run, this is due to
https://source.puri.sm/Librem5/deb-build-jobs/blob/master/blessed_build_auto.gro...Note that for all builds passing the 'Upload Debian Packages' stage with success (instead of unstable) the test stage is then not being run, this is due to
https://source.puri.sm/Librem5/deb-build-jobs/blob/master/blessed_build_auto.groovy#L252
checking for `.SUCCESS` but that is not set in the 'Upload Debian Packages' stage (and no other stage before that afaik.
/cc @arno.bauernoppelArno BauernoppelArno Bauernoppelhttps://source.puri.sm/Librem5/deb-build-jobs/-/issues/49blessed-builds: build-status incorrect2020-01-23T16:36:21ZGuido Guntherblessed-builds: build-status incorrectSee e.g.
http://localhost:8080/job/Builds/job/debs/job/deb-gnome-2048-amber-phone-staging-aarch64/1/console
where the build status is 'unstable' although the dput did not happen due to a lintian error:
```
E: gnome-2048 changes: chang...See e.g.
http://localhost:8080/job/Builds/job/debs/job/deb-gnome-2048-amber-phone-staging-aarch64/1/console
where the build status is 'unstable' although the dput did not happen due to a lintian error:
```
E: gnome-2048 changes: changed-by-address-is-on-localhost Adrien Plazas <kekun@localhost.localdomain>
...
E: gnome-2048 source: missing-build-dependency debhelper`
```
/cc @arno.bauernoppelhttps://source.puri.sm/Librem5/deb-build-jobs/-/issues/42blessed builds autopkgtest fail on no available tests2020-12-08T15:15:38ZArno Bauernoppelblessed builds autopkgtest fail on no available testsIf a package has not tests available the package is marked as UNSTABLE. This needs to be discussed.If a package has not tests available the package is marked as UNSTABLE. This needs to be discussed.https://source.puri.sm/Librem5/deb-build-jobs/-/issues/40blessed-builds: blessed-builds: /usr/local/bin/docker_run_test.sh not packed2019-11-27T18:37:34ZGuido Guntherblessed-builds: blessed-builds: /usr/local/bin/docker_run_test.sh not packed`/usr/local/bin/docker_run_test.sh` should come out of a Debian package (that then links to a git repo naturally). otherwise it's hard to find the canonical source.`/usr/local/bin/docker_run_test.sh` should come out of a Debian package (that then links to a git repo naturally). otherwise it's hard to find the canonical source.https://source.puri.sm/Librem5/deb-build-jobs/-/issues/39blessed-builds: test stage uses outdated docker container2019-11-27T18:37:49ZGuido Guntherblessed-builds: test stage uses outdated docker containerit seemt the test step uses an older container and lacks an `apt update`, see e.g http://localhost:8080/job/Builds/job/debs/job/deb-gnome-taquin-amber-phone-aarch64/9/console
```
Err:67 https://repo.pureos.net/pureos amber/main arm64 sy...it seemt the test step uses an older container and lacks an `apt update`, see e.g http://localhost:8080/job/Builds/job/debs/job/deb-gnome-taquin-amber-phone-aarch64/9/console
```
Err:67 https://repo.pureos.net/pureos amber/main arm64 systemd arm64 240-5pureos1
404 Not Found [IP: 138.201.228.45 443]
Err:68 https://repo.pureos.net/pureos amber/main arm64 systemd-sysv arm64 240-5pureos1
404 Not Found [IP: 138.201.228.45 443]
Err:69 https://repo.pureos.net/pureos amber/main arm64 libpam-systemd arm64 240-5pureos1
404 Not Found [IP: 138.201.228.45 443]
```https://source.puri.sm/Librem5/deb-build-jobs/-/issues/37blessed-builds: lintian check always fails2020-01-23T17:14:05ZGuido Guntherblessed-builds: lintian check always failsthe lintian check checks the binary package but that will always fail since the `.dsc` got mangled by our `mergechanges` call:
```
E: mesa changes: bad-distribution-in-changes-file amber-phone
E: mesa changes: file-size-mismatch-in-chan...the lintian check checks the binary package but that will always fail since the `.dsc` got mangled by our `mergechanges` call:
```
E: mesa changes: bad-distribution-in-changes-file amber-phone
E: mesa changes: file-size-mismatch-in-changes-file mesa_19.2.4-1pureos+librem5.2.dsc 4524 != 5233
E: mesa changes: checksum-mismatch-in-changes-file md5 mesa_19.2.4-1pureos+librem5.2.dsc
E: mesa changes: checksum-mismatch-in-changes-file sha1 mesa_19.2.4-1pureos+librem5.2.dsc
E: mesa changes: checksum-mismatch-in-changes-file sha256 mesa_19.2.4-1pureos+librem5.2.dsc
```
@arno.bauernoppel to avoid that you can either change it to check the source changes file or (better) add `--source-only-changes` to `pbuilder-options` and drop the `mergechangelog` call completely.Arno BauernoppelArno Bauernoppelhttps://source.puri.sm/Librem5/deb-build-jobs/-/issues/35needs to fetch pristine-tar ref2019-12-09T08:33:52ZGuido Guntherneeds to fetch pristine-tar refit seems the blessed build jobs no longer fetch the `pristine-tar` ref by default (only tags are fetched) - this breaks builds since the checksums of the orig tarballs no longer match. Extending the `refspec` to fetch `refs/heads/pristin...it seems the blessed build jobs no longer fetch the `pristine-tar` ref by default (only tags are fetched) - this breaks builds since the checksums of the orig tarballs no longer match. Extending the `refspec` to fetch `refs/heads/pristine-tar` as well should to the trick.Arno BauernoppelArno Bauernoppelhttps://source.puri.sm/Librem5/deb-build-jobs/-/issues/34add a test build package2020-01-07T21:27:08ZGuido Guntheradd a test build packagewe should have a package that gets build every hour to ensure the pipeline is still working as expected.we should have a package that gets build every hour to ensure the pipeline is still working as expected.Arno BauernoppelArno Bauernoppelhttps://source.puri.sm/Librem5/deb-build-jobs/-/issues/33Better and official docs for blessed builds2019-12-02T16:46:21ZGuido GuntherBetter and official docs for blessed buildsThere was some discussion with @jeremiah.foster on updating the blessed build workflow and there's https://source.puri.sm/snippets/138 but we should have official docs that developers can follow.
see
- https://source.puri.sm/snippets/...There was some discussion with @jeremiah.foster on updating the blessed build workflow and there's https://source.puri.sm/snippets/138 but we should have official docs that developers can follow.
see
- https://source.puri.sm/snippets/138
- https://int.puri.sm/dev/librem-5/arm-64-packagebuildserver
related
- https://source.puri.sm/Librem5/developer.puri.sm/issues/124
- https://source.puri.sm/Librem5/developer.puri.sm/issues/43
parts of this should live on the pureos side (for everything past dput) while other things should live on the phone side (unless pureos proper wants to switch to git based builds soonish too).Jeremiah FosterJeremiah Fosterhttps://source.puri.sm/Librem5/deb-build-jobs/-/issues/30blessed-builds: Add build log to output2019-11-10T16:46:04ZGuido Guntherblessed-builds: Add build log to outputthe current mails like
```
Builds » debs » deb-epiphany-amber-phone-aarch64 - Build # 55 - Still Failing:
Check console output at http://localhost:8080/job/Builds/job/debs/job/deb-epiphany-amber-phone-aarch64/55/ to view the results.
...the current mails like
```
Builds » debs » deb-epiphany-amber-phone-aarch64 - Build # 55 - Still Failing:
Check console output at http://localhost:8080/job/Builds/job/debs/job/deb-epiphany-amber-phone-aarch64/55/ to view the results.
```
contain too little output to diagnose problems - it'd be good if the build log could be included (or alternatively synced to server that is accessible to everyone)Arno BauernoppelArno Bauernoppelhttps://source.puri.sm/Librem5/deb-build-jobs/-/issues/29blessed-builds: drop purple rewrite workaround2020-12-14T10:49:47ZGuido Guntherblessed-builds: drop purple rewrite workaroundwe can drop the rewrite from `purple` to `amber-phone` at 2019-10-25 since packages we care about got their changelog fixes (or are o.k. to fail if this didn't happen yet)we can drop the rewrite from `purple` to `amber-phone` at 2019-10-25 since packages we care about got their changelog fixes (or are o.k. to fail if this didn't happen yet)https://source.puri.sm/Librem5/deb-build-jobs/-/issues/27blessed-builds: succesful jobs should send mails as well2019-12-08T21:41:30ZGuido Guntherblessed-builds: succesful jobs should send mails as wellotherwise it's hard for devs to follow the full chain.otherwise it's hard for devs to follow the full chain.Arno BauernoppelArno Bauernoppelhttps://source.puri.sm/Librem5/deb-build-jobs/-/issues/26blessed-build-jobs: unify automatic and param build2020-12-14T10:46:52ZGuido Guntherblessed-build-jobs: unify automatic and param buildthey're basically doing the same so they can share a groovy lib. we might be able to extend this to the ci jobs later on.they're basically doing the same so they can share a groovy lib. we might be able to extend this to the ci jobs later on.Arno BauernoppelArno Bauernoppelhttps://source.puri.sm/Librem5/deb-build-jobs/-/issues/25blessed-builds: current logic schedules a built for every tag2020-12-15T12:09:51ZGuido Guntherblessed-builds: current logic schedules a built for every tagthe current logic looks for the latest tag for every tag it sees and schedules a build - it should only build if the latest tag matches the tag the job was triggered for though.the current logic looks for the latest tag for every tag it sees and schedules a build - it should only build if the latest tag matches the tag the job was triggered for though.Arno BauernoppelArno Bauernoppel