Build and upload deb packages on every commit
The goal is to have .deb packages built on every commit for all packages we provide Currently ppl need to push to debian/platform-0.9 in order to trigger a jenkins package build.
So we need to fix the following steps:
- Create a http://deb.leap.se/experimental-platform repo
- configure all jenkins deb package projects to trigger a build on every commit to the main branch (for most repos this would be the develop branch)
- automatically sign the package and uploaded it to the experimental reprepro
With this approach we could reduce the numbers of deb repo we are maintaining, because we would only need the experimental one, plus the release repos (0.8, 0.9 etc) where hand-signed, manually chosen packages go when releasing.
(from redmine: created on 2016-09-05, relates #7996, relates #8698)
Todo
-
Upload the resulting .debs to squirrel -
Fix discrepancy between debian and pip versions (see below) #8754 (closed) -
Make scripts break on errors -
-Add the i386 build images- Postpone this until someone actually requests it -
Review files only present in leap_mx:debian/platform-0.10
(git diff --name-only master..debian/platform-0.10
)-
debian/ -
pkg/utils/gpg-keys/
-
-
Review debhelper generated scripts (is service enabled+started by default etc) -
Rename leap_mx:debian/platform-0.10
toleap_mx:build_packages
-
Mark LEAP packages that they come from LEAPs debian repository -
Split building and uploading of package -
Only upload packages built from main branch to main deb repo ("dev-platform" ?) -
Upload packages from other branches to different deb repo ("experimental" ?)
-
-
Fix the lintian warnings/errors https://0xacab.org/leap/leap_mx/builds/5635 -
W: leap-mx source: changelog-should-mention-nmu
-
W: leap-mx source: source-nmu-has-incorrect-version-number 0.9.1+0~20170217091914.6019+debian.platform0.10+jessie~1.gbaea679
-
W: leap-mx: init.d-script-not-marked-as-conffile etc/init.d/leap-mx
-
E: leap-mx: init.d-script-not-included-in-package etc/init.d/leap-mx
-
leap-mx: package-has-long-file-name 81 > 80
-
leap-mx: executable-not-elf-or-script usr/share/app/mx.tac
should be fixed by leap_mx!4 (closed)
-
-
Renew experimental signing keyValid until 2018 -
Simplify .gitlab-ci.yml
even more-
Move out default variables into docker images
-
-
Have a dedicated publish stage after the lintian -
Override max. allowed packaged filename length for lintian ( package-has-long-file-name 87 > 80
,source-package-component-has-long-file-name
) -
Merge leap_mx:build_packages
intoleap_mx:master
-
Try with python-leap-common to try packaging for different distributions -
Debian jessie,stretch (amd64) -
Ubuntu 16.04 + 16.10 (amd64)
-
-
Don't add deb-src to sources.list on build (see https://0xacab.org/meskio/leap_mx/builds/11584) -
Upload package only for master branch -
Fix stretch build job -
Pull /home/gitlab-runner/gitlab-buildpackage
on changes -
Fix pip versioning for soledad -
Merge leap_pycommon:build_packages
intoleap_pycommon:master
-
Roll out to all projects -
Use actual repositories and not the gitbuildpackage
one for uploading
Cleanup
-
Make sure to turn of cmd tracing when configuring ssh priv key, even when script is run with bash -x
-
Remove gitlab-ci-mulitrunner from squirrel -
Put manually added stuff on squirrel into puppet like .gitlab-buildpackagerc
-
Remove jenkins -
Update our documentation -
Contribute back to the Upstream gitlab-buildpackage repo
Related, but not needed for this task
Edited by Varac