2024-02-05 01:10:22 +00:00
|
|
|
local distro = 'noble';
|
2021-10-26 18:02:04 +00:00
|
|
|
local distro_name = 'Ubuntu ' + distro;
|
|
|
|
local distro_docker = 'registry.oxen.rocks/lokinet-ci-ubuntu-' + distro + '-builder';
|
2020-05-15 23:29:05 +00:00
|
|
|
|
2020-09-22 19:52:58 +00:00
|
|
|
local apt_get_quiet = 'apt-get -o=Dpkg::Use-Pty=0 -q';
|
2020-06-17 13:42:11 +00:00
|
|
|
|
2021-10-12 17:11:41 +00:00
|
|
|
local repo_suffix = '/staging'; // can be /beta or /staging for non-primary repo deps
|
2020-06-17 13:42:11 +00:00
|
|
|
|
2020-06-12 16:57:59 +00:00
|
|
|
local submodules = {
|
2021-10-19 19:37:14 +00:00
|
|
|
name: 'submodules',
|
|
|
|
image: 'drone/git',
|
|
|
|
commands: ['git fetch --tags', 'git submodule update --init --recursive --depth=1'],
|
2020-06-12 16:57:59 +00:00
|
|
|
};
|
|
|
|
|
2020-09-23 20:00:10 +00:00
|
|
|
local deb_pipeline(image, buildarch='amd64', debarch='amd64', jobs=6) = {
|
2021-10-19 19:37:14 +00:00
|
|
|
kind: 'pipeline',
|
|
|
|
type: 'docker',
|
|
|
|
name: distro_name + ' (' + debarch + ')',
|
|
|
|
platform: { arch: buildarch },
|
|
|
|
steps: [
|
|
|
|
submodules,
|
|
|
|
{
|
|
|
|
name: 'build',
|
|
|
|
image: image,
|
|
|
|
environment: { SSH_KEY: { from_secret: 'SSH_KEY' } },
|
|
|
|
commands: [
|
|
|
|
'echo "Building on ${DRONE_STAGE_MACHINE}"',
|
|
|
|
'echo "man-db man-db/auto-update boolean false" | debconf-set-selections',
|
|
|
|
apt_get_quiet + ' update',
|
|
|
|
apt_get_quiet + ' install -y eatmydata gpgv',
|
|
|
|
'echo deb http://deb.oxen.io' + repo_suffix + ' ' + distro + ' main >/etc/apt/sources.list.d/oxen.list',
|
|
|
|
'cp contrib/deb.oxen.io.gpg /etc/apt/trusted.gpg.d',
|
|
|
|
'eatmydata ' + apt_get_quiet + ' update',
|
|
|
|
'eatmydata ' + apt_get_quiet + ' dist-upgrade -y',
|
|
|
|
'eatmydata ' + apt_get_quiet + ' install --no-install-recommends -y git-buildpackage devscripts equivs ccache openssh-client',
|
|
|
|
'cd debian',
|
|
|
|
'eatmydata mk-build-deps -i -r --tool="' + apt_get_quiet + ' -o Debug::pkgProblemResolver=yes --no-install-recommends -y" control',
|
|
|
|
'cd ..',
|
|
|
|
"eatmydata gbp buildpackage --git-no-pbuilder --git-builder='debuild --preserve-envvar=CCACHE_*' --git-upstream-tag=HEAD -us -uc -j" + jobs,
|
|
|
|
'./debian/ci-upload.sh ' + distro + ' ' + debarch,
|
|
|
|
],
|
|
|
|
},
|
|
|
|
],
|
2020-05-23 14:46:45 +00:00
|
|
|
};
|
|
|
|
|
2020-05-15 23:29:05 +00:00
|
|
|
[
|
2021-10-19 19:37:14 +00:00
|
|
|
deb_pipeline(distro_docker),
|
2021-10-26 18:02:04 +00:00
|
|
|
deb_pipeline(distro_docker + '/arm64v8', buildarch='arm64', debarch='arm64', jobs=4),
|
|
|
|
deb_pipeline(distro_docker + '/arm32v7', buildarch='arm64', debarch='armhf', jobs=4),
|
2020-05-15 23:29:05 +00:00
|
|
|
]
|