Browse Source

Reduce number of binary packages (Closes #131)

When uploading towards Debian we shouldn't have to deal with
so many Debian packages, instead provide one single package
which depends on all relevant packages and if someone
wants to have just a specific subset installed on their
system they should do so through their own metapackage or
configuration management.

Thanks: Christian Hofstaedtler <christian@hofstaedtler.name>
tags/0.18.4
Michael Prokop 6 years ago
parent
commit
8e8842219b
8 changed files with 88 additions and 104 deletions
  1. +22
    -0
      debian/NEWS
  2. +49
    -90
      debian/control
  3. +0
    -1
      debian/jenkins-debian-glue-buildenv-lintian.install
  4. +0
    -2
      debian/jenkins-debian-glue-buildenv-piuparts.install
  5. +0
    -6
      debian/jenkins-debian-glue-buildenv-taptools.install
  6. +9
    -0
      debian/jenkins-debian-glue.install
  7. +7
    -0
      debian/jenkins-debian-glue.lintian-overrides
  8. +1
    -5
      puppet/jenkins_debian_glue.pp

+ 22
- 0
debian/NEWS View File

@@ -1,3 +1,25 @@
jenkins-debian-glue (0.14.0) unstable; urgency=medium

To reduce the amount of Debian binary packages we decided to
minimize the number of packages we ship via jenkins-debian-glue.
This means that the packages named
jenkins-debian-glue-buildenv-git,
jenkins-debian-glue-buildenv-svn,
jenkins-debian-glue-buildenv-slave,
jenkins-debian-glue-buildenv-lintian,
jenkins-debian-glue-buildenv-taptools and
jenkins-debian-glue-buildenv-piuparts are deprecated now.
To get all the scripts just the jenkins-debian-glue package is
needed. To install all the Debian packages that might be needed
to be useful with all the scripts the
jenkins-debian-glue-buildenv package can be used. If you don't
want to install all the packages which are listed in
jenkins-debian-glue-buildenv's Depends/Recommends you're
encouraged to create your own metapackage or use the
configuration management system of your choice.

-- Michael Prokop <mika@grml.org> Sat, 22 Aug 2015 12:26:59 +0200

jenkins-debian-glue (0.6.0) unstable; urgency=low

The timestamp format used in automatically generated version


+ 49
- 90
debian/control View File

@@ -11,110 +11,69 @@ Vcs-Browser: https://github.com/mika/jenkins-debian-glue

Package: jenkins-debian-glue
Architecture: all
Depends: fakeroot,
reprepro | freight,
sudo | sudo-ldap,
Depends: sudo | sudo-ldap,
${misc:Depends}
Recommends: curl,
gnupg,
jenkins-debian-glue-buildenv-git,
qemu-user-static
Description: glue scripts for building Debian packages inside Jenkins
This package provides scripts which should make building Debian
package inside Jenkins (a Continuous Integration suite) easier.
Recommends: jenkins-debian-glue-buildenv
Description: Jenkins Debian glue scripts
This package provides scripts which make building Debian
packages inside Jenkins (a Continuous Integration suite) easier.
.
It's meant to make Q/A builds of Debian packages inside Jenkins
as manageable and homogeneous as possible.
.
Please note that you might want to also install the
jenkins-debian-glue-buildenv-git or the jenkins-debian-glue-buildenv-svn
package, depending on your needs.
You need to install the according packaging tools, depending on
your VCS type and the features you want to use. To get all tools
you can just install the jenkins-debian-glue-buildenv package.

Package: jenkins-debian-glue-buildenv
Architecture: all
Depends: cowbuilder,
Depends: build-essential,
cowbuilder,
devscripts,
dpkg-dev,
jenkins-debian-glue,
quilt
Description: Virtual package to be used on build slaves
This virtual package depends on the software packages required
for using jenkins-debian-glue as build environment.

Package: jenkins-debian-glue-buildenv-git
Architecture: all
Depends: build-essential,
git-buildpackage,
jenkins-debian-glue-buildenv,
pristine-tar,
${misc:Depends}
Description: virtual package for Git build environment of jenkins-debian-glue
This virtual package depends on the software packages required
for using jenkins-debian-glue as standalone build environment
with Git.

Package: jenkins-debian-glue-buildenv-svn
Architecture: all
Depends: build-essential,
jenkins-debian-glue-buildenv,
subversion-tools (<= 1.6.18dfsg-1) | svn2cl,
xsltproc,
${misc:Depends}
Description: virtual package for Subversion build environment of jenkins-debian-glue
This virtual package depends on the software packages required
for using jenkins-debian-glue as standalone build environment
with Subversion.

Package: jenkins-debian-glue-buildenv-slave
Architecture: all
Depends: build-essential,
jenkins-debian-glue-buildenv,
openjdk-7-jre-headless | sun-java6-jre | java-runtime-headless,
rsync,
${misc:Depends}
Description: virtual package for basic build environment of jenkins-debian-glue
This virtual package depends on the software packages required
for using jenkins-debian-glue on a slave system inside Jenkins.

Package: jenkins-debian-glue-buildenv-lintian
Architecture: all
Depends: lintian,
ruby,
${misc:Depends}
Description: lintian integration in Jenkins
This package provides the lintian-junit-report script. The
script can be used for generating JUnit reports of lintian
checking Debian packages inside Jenkins jobs.

Package: jenkins-debian-glue-buildenv-taptools
Architecture: all
Depends: devscripts,
fakeroot,
file,
git-buildpackage,
gnupg,
jenkins-debian-glue,
libperl-critic-perl,
lintian,
parallel,
piuparts,
pristine-tar,
quilt,
reprepro | freight,
rsync,
ruby,
subversion-tools (<= 1.6.18dfsg-1) | svn2cl,
${misc:Depends}
Recommends: pep8 (>= 1.4.6~),
Conflicts: jenkins-debian-glue-buildenv-git,
jenkins-debian-glue-buildenv-lintian,
jenkins-debian-glue-buildenv-piuparts,
jenkins-debian-glue-buildenv-slave,
jenkins-debian-glue-buildenv-svn,
jenkins-debian-glue-buildenv-taptools
Provides: jenkins-debian-glue-buildenv-git,
jenkins-debian-glue-buildenv-lintian,
jenkins-debian-glue-buildenv-piuparts,
jenkins-debian-glue-buildenv-slave,
jenkins-debian-glue-buildenv-svn,
jenkins-debian-glue-buildenv-taptools
Replaces: jenkins-debian-glue-buildenv-git,
jenkins-debian-glue-buildenv-lintian,
jenkins-debian-glue-buildenv-piuparts,
jenkins-debian-glue-buildenv-slave,
jenkins-debian-glue-buildenv-svn,
jenkins-debian-glue-buildenv-taptools
Recommends: curl,
pep8 (>= 1.4.6~),
perlcritic,
qemu-user-static,
shellcheck
Description: taptools integration in Jenkins
This package provides scripts to check Shell, Perl and Python
source code for common errors, using checkbashism and perlcritic
to generate according TAP reports for usage inside Jenkins.
.
The provided tap_tool_dispatcher script can be used to automatically
detect according Shell scripts, Perl and Python scripts to execute
checkbashism_tap, perlcritic_tap and pep8_tap accordingly.
Description: Jenkins Debian glue scripts - dependency package
This package depends on all Debian packaging/repository
management and VCS tools which may be used with
jenkins-debian-glue for easier installation.
.
Please notice that pep8 isn't a hard dependency because it's not yet
available in the required version in Debian/wheezy.

Package: jenkins-debian-glue-buildenv-piuparts
Architecture: all
Depends: piuparts,
ruby,
${misc:Depends}
Description: piuparts integration in Jenkins
This package provides the piuparts integration for testing
package installation and upgrades of generated Debian packages.
The scripts can be used for generating TAP reports of piuparts
runs checking Debian packages inside Jenkins jobs.
If disk space is a concern consider installing only the subset
of packages you actually need.

+ 0
- 1
debian/jenkins-debian-glue-buildenv-lintian.install View File

@@ -1 +0,0 @@
debian/tmp/usr/bin/lintian-junit-report usr/bin/

+ 0
- 2
debian/jenkins-debian-glue-buildenv-piuparts.install View File

@@ -1,2 +0,0 @@
debian/tmp/usr/bin/piuparts_tap usr/bin/
debian/tmp/usr/bin/piuparts_wrapper usr/bin/

+ 0
- 6
debian/jenkins-debian-glue-buildenv-taptools.install View File

@@ -1,6 +0,0 @@
debian/tmp/usr/bin/adtsummary_tap usr/bin/
debian/tmp/usr/bin/checkbashism_tap usr/bin/
debian/tmp/usr/bin/pep8_tap usr/bin/
debian/tmp/usr/bin/perlcritic_tap usr/bin/
debian/tmp/usr/bin/shellcheck_tap usr/bin/
debian/tmp/usr/bin/tap_tool_dispatcher usr/bin/

+ 9
- 0
debian/jenkins-debian-glue.install View File

@@ -1,10 +1,19 @@
debian/tmp/usr/bin/adtsummary_tap usr/bin/
debian/tmp/usr/bin/build-and-provide-package usr/bin/
debian/tmp/usr/bin/checkbashism_tap usr/bin/
debian/tmp/usr/bin/generate-git-snapshot usr/bin/
debian/tmp/usr/bin/generate-reprepro-codename usr/bin/
debian/tmp/usr/bin/generate-svn-snapshot usr/bin/
debian/tmp/usr/bin/increase-version-number usr/bin/
debian/tmp/usr/bin/jdg-debc usr/bin/
debian/tmp/usr/bin/lintian-junit-report usr/bin/
debian/tmp/usr/bin/pep8_tap usr/bin/
debian/tmp/usr/bin/perlcritic_tap usr/bin/
debian/tmp/usr/bin/piuparts_tap usr/bin/
debian/tmp/usr/bin/piuparts_wrapper usr/bin/
debian/tmp/usr/bin/remove-reprepro-codename usr/bin/
debian/tmp/usr/bin/repository_checker usr/bin/
debian/tmp/usr/bin/shellcheck_tap usr/bin/
debian/tmp/usr/bin/tap_tool_dispatcher usr/bin/
debian/tmp/usr/share/jenkins-debian-glue/examples/debian_glue etc/jenkins/
debian/tmp/usr/share/jenkins-debian-glue/pbuilder-hookdir/ usr/share/jenkins-debian-glue/

+ 7
- 0
debian/jenkins-debian-glue.lintian-overrides View File

@@ -0,0 +1,7 @@
jenkins-debian-glue: ruby-script-but-no-ruby-dep usr/bin/adtsummary_tap
jenkins-debian-glue: ruby-script-but-no-ruby-dep usr/bin/checkbashism_tap
jenkins-debian-glue: ruby-script-but-no-ruby-dep usr/bin/lintian-junit-report
jenkins-debian-glue: ruby-script-but-no-ruby-dep usr/bin/pep8_tap
jenkins-debian-glue: ruby-script-but-no-ruby-dep usr/bin/perlcritic_tap
jenkins-debian-glue: ruby-script-but-no-ruby-dep usr/bin/piuparts_tap
jenkins-debian-glue: ruby-script-but-no-ruby-dep usr/bin/shellcheck_tap

+ 1
- 5
puppet/jenkins_debian_glue.pp View File

@@ -189,11 +189,7 @@ class jenkins::software {
}

package { [ 'jenkins-debian-glue',
'jenkins-debian-glue-buildenv-git',
'jenkins-debian-glue-buildenv-lintian',
'jenkins-debian-glue-buildenv-svn',
'jenkins-debian-glue-buildenv-taptools',
'jenkins-debian-glue-buildenv-piuparts' ]:
'jenkins-debian-glue-buildenv' ]:
ensure => present,
require => [
File['/etc/apt/sources.list.d/jenkins-debian-glue.list'],


Loading…
Cancel
Save