This change reworks the packaging scripts to build inside Docker, since we can no longer build for both Ubuntu and Fedora on an Ubuntu machine.
Dockerfiles for bare Ubuntu, Debian, Debian (i386) and Fedora images are added with necessary build dependencies
Two new build scripts are created to replace build_packages.py:
build_packages.sh: builds all DEB and RPM packages in Docker containers
build_repos.sh: builds the apt and yum repos including these packages
Since we are building in clean Docker containers under the appropriate OS, we no longer need an additional chroot for each build, so we simplify the scripts to call debuild and rpmbuild directly rather than via pbuilder and mock
All build results are output to build/ and this directory is added to .gitignore
HOWTO_PACKAGE.md is updated with the new procedures to follow
Some files related to RPM signing are removed since this will be handled internally
Fedora 39 is added to distro-info.sh since it has begun development
In our production builds (internally), we will first run build_packages.sh, then sign the packages, then run build_repos.sh and tar up all the build artifacts.
This change reworks the packaging scripts to build inside Docker, since we can no longer build for both Ubuntu and Fedora on an Ubuntu machine.
build_packages.py
:build_packages.sh
: builds all DEB and RPM packages in Docker containersbuild_repos.sh
: builds the apt and yum repos including these packagesdebuild
andrpmbuild
directly rather than viapbuilder
andmock
build/
and this directory is added to.gitignore
HOWTO_PACKAGE.md
is updated with the new procedures to followdistro-info.sh
since it has begun developmentIn our production builds (internally), we will first run
build_packages.sh
, then sign the packages, then runbuild_repos.sh
and tar up all the build artifacts.Tested by running: