Commit fef02237 authored by Holger Levsen's avatar Holger Levsen
Browse files

reproducible Debian: WIP for s#testing#stretch#g - see TODO4stretch_rename.txt for status



Signed-off-by: Holger Levsen's avatarHolger Levsen <holger@layer-acht.org>
parent ef7fe352
...@@ -135,7 +135,7 @@ Installation tests inside chroot environments. ...@@ -135,7 +135,7 @@ Installation tests inside chroot environments.
* The (current) purpose of https://tests.reproducible-builds.org is to show the potential of reproducible builds for Debian - and six other projects currently. This is research, showing what could (and should) be done... check https://wiki.debian.org/ReproducibleBuilds for the real status of the project for Debian! * The (current) purpose of https://tests.reproducible-builds.org is to show the potential of reproducible builds for Debian - and six other projects currently. This is research, showing what could (and should) be done... check https://wiki.debian.org/ReproducibleBuilds for the real status of the project for Debian!
* For Debian, three suites, 'testing', 'unstable' and 'experimental', are tested on four architectures: 'amd64', 'i386', 'arm64' and 'armhf'. The tests are done using 'pbuilder' through several concurrent workers: 40 for 'amd64', 24 for 'i386', 32 for 'arm64' and 51 for 'armhf', which are each constantly testing packages and saving the results of these tests. There's a single link:https://anonscm.debian.org/git/qa/jenkins.debian.net.git/tree/bin/reproducible_build_service.sh[systemd service] starting all of these link:https://anonscm.debian.org/git/qa/jenkins.debian.net.git/tree/bin/reproducible_worker.sh[workers] which in turn launch the actual link:https://anonscm.debian.org/git/qa/jenkins.debian.net.git/tree/bin/reproducible_build.sh[build script]. (So the actual builds and tests are happening outside the jenkins service.) * For Debian, three suites, 'stretch', 'unstable' and 'experimental', are tested on four architectures: 'amd64', 'i386', 'arm64' and 'armhf'. The tests are done using 'pbuilder' through several concurrent workers: 40 for 'amd64', 24 for 'i386', 32 for 'arm64' and 51 for 'armhf', which are each constantly testing packages and saving the results of these tests. There's a single link:https://anonscm.debian.org/git/qa/jenkins.debian.net.git/tree/bin/reproducible_build_service.sh[systemd service] starting all of these link:https://anonscm.debian.org/git/qa/jenkins.debian.net.git/tree/bin/reproducible_worker.sh[workers] which in turn launch the actual link:https://anonscm.debian.org/git/qa/jenkins.debian.net.git/tree/bin/reproducible_build.sh[build script]. (So the actual builds and tests are happening outside the jenkins service.)
* These builds on remote nodes run on very different hardware: * These builds on remote nodes run on very different hardware:
** for 'amd64' we are using four virtual machines, profitbricks-build(1+5+11+15)-amd64, which have 15 or 16 cores and 48gb ram each. These nodes are sponsored by link:https://jenkins.debian.net/userContent/thanks.html[Profitbricks]. ** for 'amd64' we are using four virtual machines, profitbricks-build(1+5+11+15)-amd64, which have 15 or 16 cores and 48gb ram each. These nodes are sponsored by link:https://jenkins.debian.net/userContent/thanks.html[Profitbricks].
...@@ -152,7 +152,7 @@ Installation tests inside chroot environments. ...@@ -152,7 +152,7 @@ Installation tests inside chroot environments.
* We would love to have more or more powerful ARM hardware in the future, if you can help, please talk to us! * We would love to have more or more powerful ARM hardware in the future, if you can help, please talk to us!
* Packages to be build are scheduled in the database via a scheduler job, which runs every hour and if the queue is below a certain threshold schedules four types of packages: * Packages to be build are scheduled in the database via a scheduler job, which runs every hour and if the queue is below a certain threshold schedules four types of packages:
** new untested packages (either uploaded to 'unstable' or 'experimental' or migrated to 'testing'), ** new untested packages (either uploaded to 'unstable' or 'experimental' or migrated to 'stretch'),
** new versions of existing packages, which were already tested - these are always scheduled, no matter how full the queue is ** new versions of existing packages, which were already tested - these are always scheduled, no matter how full the queue is
** old versions, already tested (at least two weeks ago) ** old versions, already tested (at least two weeks ago)
** and also some old versions which failed to build (at least ten days ago), if no bug has been filed. ** and also some old versions which failed to build (at least ten days ago), if no bug has been filed.
......
...@@ -174,7 +174,7 @@ The idea is to run a jenkins.d.o host, which is maintained by DSA, but we are ma ...@@ -174,7 +174,7 @@ The idea is to run a jenkins.d.o host, which is maintained by DSA, but we are ma
*** new page with notes that doesnt make sense: a.) packages which are reproducible but should not, packages that build but shouldn't, etc. *** new page with notes that doesnt make sense: a.) packages which are reproducible but should not, packages that build but shouldn't, etc.
*** new page with packages which are reproducible on one arch and unreproducible on another arch (in the same suite, so unstable only atm) *** new page with packages which are reproducible on one arch and unreproducible on another arch (in the same suite, so unstable only atm)
*** new page with packages which ftbfs on one arch and build fine on another arch (in the same suite, so unstable only atm) *** new page with packages which ftbfs on one arch and build fine on another arch (in the same suite, so unstable only atm)
*** new page with packages which ftbfs in testing but build fine on sid *** new page with packages which ftbfs in stretch but build fine on sid
*** new page with packages which are orphaned but have a reproducible usertagged patch *** new page with packages which are orphaned but have a reproducible usertagged patch
*** new page showing arch all packages which are cross-reproducible, and those which are not *** new page showing arch all packages which are cross-reproducible, and those which are not
** new pages: r.d.n/$maintainer-email redirecting to r.d.n/maintainers/unstable/${maintainer-email}.html, showing the unreproducible packages for that address. and a sunny "yay, thank you"-summary for those with only reproducible packages. ** new pages: r.d.n/$maintainer-email redirecting to r.d.n/maintainers/unstable/${maintainer-email}.html, showing the unreproducible packages for that address. and a sunny "yay, thank you"-summary for those with only reproducible packages.
......
special deployement needed for this:
------------------------------------
stop workers (cleanup nodes) and build_service
prepare jenkins shutdown in gui
do run update_jdn.sh
rename dirs in the filesystem as needed, FIXME: proper mv commands…
root@jenkins:/var/lib/jenkins/userContent# find . -type d -name "*testing*"
./reproducible/debian/issues/testing
./reproducible/debian/logs/testing
./reproducible/debian/rb-pkg/testing
./reproducible/debian/logdiffs/testing
./reproducible/debian/buildinfo/testing
./reproducible/debian/dbdtxt/testing
./reproducible/debian/rbuild/testing
./reproducible/debian/dbd/testing
./reproducible/debian/testing
./reproducible/rpms/fedora-23/x86_64/gnome-desktop-testing
root@jenkins:/var/lib/jenkins/userContent#
root@jenkins:/srv/reproducible-results# find . -type d -name "*testing*"
./meta_pkgsets-testing
./chdist-testing
./chdist-testing/testing-amd64
root@jenkins:/srv/reproducible-results#
run reproducible_db_maintenance
reenable job execution
do run update_jdn.sh again
remove all jobs which match reproducible*testing*
changes not to be done
----------------------
hosts/jenkins/etc/apache2/sites-available/jenkins.debian.net.conf has no (new) redirects from testing to stretch, I think that's good enough
changes not yet prepared in git
-------------------------------
db changes
prepare to add buster on 2017-06-17
finally, remove this file again.
#!/usr/bin/env bash #!/usr/bin/env bash
# Copyright (c) 2009, 2010, 2012, 2015 Peter Palfrader # Copyright (c) 2009, 2010, 2012, 2015 Peter Palfrader
# 2015-2016 Holger Levsen # 2015-2017 Holger Levsen
# #
# Permission is hereby granted, free of charge, to any person obtaining # Permission is hereby granted, free of charge, to any person obtaining
# a copy of this software and associated documentation files (the # a copy of this software and associated documentation files (the
...@@ -103,8 +103,8 @@ elif [[ "$*" =~ ^rm\ -r\ /var/lib/jenkins/jobs/.*/workspace/results ]] ; then ...@@ -103,8 +103,8 @@ elif [[ "$*" =~ ^rm\ -r\ /var/lib/jenkins/jobs/.*/workspace/results ]] ; then
exec rm -r "$3" ; croak "Exec failed"; exec rm -r "$3" ; croak "Exec failed";
elif [[ "$*" =~ ^reproducible_setup_pbuilder_unstable_.*_.* ]] ; then elif [[ "$*" =~ ^reproducible_setup_pbuilder_unstable_.*_.* ]] ; then
exec /srv/jenkins/bin/reproducible_setup_pbuilder.sh unstable ; croak "Exec failed"; exec /srv/jenkins/bin/reproducible_setup_pbuilder.sh unstable ; croak "Exec failed";
elif [[ "$*" =~ ^reproducible_setup_pbuilder_testing_.*_.* ]] ; then elif [[ "$*" =~ ^reproducible_setup_pbuilder_stretch_.*_.* ]] ; then
exec /srv/jenkins/bin/reproducible_setup_pbuilder.sh testing ; croak "Exec failed"; exec /srv/jenkins/bin/reproducible_setup_pbuilder.sh stretch ; croak "Exec failed";
elif [[ "$*" =~ ^reproducible_setup_pbuilder_experimental_.*_.* ]] ; then elif [[ "$*" =~ ^reproducible_setup_pbuilder_experimental_.*_.* ]] ; then
exec /srv/jenkins/bin/reproducible_setup_pbuilder.sh experimental ; croak "Exec failed"; exec /srv/jenkins/bin/reproducible_setup_pbuilder.sh experimental ; croak "Exec failed";
elif [[ "$*" =~ ^reproducible_maintenance_.*_.* ]] ; then elif [[ "$*" =~ ^reproducible_maintenance_.*_.* ]] ; then
...@@ -115,8 +115,8 @@ elif [[ "$*" =~ ^reproducible_setup_schroot_unstable_diffoscope_.*_.* ]] ; then ...@@ -115,8 +115,8 @@ elif [[ "$*" =~ ^reproducible_setup_schroot_unstable_diffoscope_.*_.* ]] ; then
exec /srv/jenkins/bin/schroot-create.sh reproducible reproducible-unstable-diffoscope unstable diffoscope locales-all ; croak "Exec failed"; exec /srv/jenkins/bin/schroot-create.sh reproducible reproducible-unstable-diffoscope unstable diffoscope locales-all ; croak "Exec failed";
elif [[ "$*" =~ ^reproducible_setup_schroot_unstable_.*_.* ]] ; then elif [[ "$*" =~ ^reproducible_setup_schroot_unstable_.*_.* ]] ; then
exec /srv/jenkins/bin/schroot-create.sh reproducible reproducible-unstable unstable botch ; croak "Exec failed"; exec /srv/jenkins/bin/schroot-create.sh reproducible reproducible-unstable unstable botch ; croak "Exec failed";
elif [[ "$*" =~ ^reproducible_setup_schroot_testing_.*_.* ]] ; then elif [[ "$*" =~ ^reproducible_setup_schroot_stretch_.*_.* ]] ; then
exec /srv/jenkins/bin/schroot-create.sh reproducible reproducible-testing testing ; croak "Exec failed"; exec /srv/jenkins/bin/schroot-create.sh reproducible reproducible-stretch stretch ; croak "Exec failed";
elif [[ "$*" =~ ^reproducible_setup_schroot_experimental_.*_.* ]] ; then elif [[ "$*" =~ ^reproducible_setup_schroot_experimental_.*_.* ]] ; then
exec /srv/jenkins/bin/schroot-create.sh reproducible reproducible-experimental experimental ; croak "Exec failed"; exec /srv/jenkins/bin/schroot-create.sh reproducible reproducible-experimental experimental ; croak "Exec failed";
elif [[ "$*" =~ ^reproducible_coreboot ]] ; then elif [[ "$*" =~ ^reproducible_coreboot ]] ; then
......
#!/bin/bash #!/bin/bash
# Copyright 2014-2016 Holger Levsen <holger@layer-acht.org> # Copyright 2014-2017 Holger Levsen <holger@layer-acht.org>
# © 2015 Mattia Rizzolo <mattia@mapreri.org> # © 2015 Mattia Rizzolo <mattia@mapreri.org>
# released under the GPLv=2 # released under the GPLv=2
...@@ -74,7 +74,7 @@ case $SUITE in ...@@ -74,7 +74,7 @@ case $SUITE in
sid) echo "WARNING: sid has been renamed to unstable." sid) echo "WARNING: sid has been renamed to unstable."
SUITE=unstable SUITE=unstable
;; ;;
testing|unstable|experimental) ;; stretch|unstable|experimental) ;;
*) echo "$SUITE is not a valid suite". *) echo "$SUITE is not a valid suite".
explain_syntax explain_syntax
exit 1 exit 1
......
...@@ -133,7 +133,7 @@ update_db_and_html() { ...@@ -133,7 +133,7 @@ update_db_and_html() {
local OLD_STATUS=$(query_db "SELECT status FROM results WHERE package_id='${SRCPKGID}'" || \ local OLD_STATUS=$(query_db "SELECT status FROM results WHERE package_id='${SRCPKGID}'" || \
query_db "SELECT status FROM results WHERE package_id='${SRCPKGID}'") query_db "SELECT status FROM results WHERE package_id='${SRCPKGID}'")
# irc+mail notifications for changing status in unstable and experimental # irc+mail notifications for changing status in unstable and experimental
if [ "$SUITE" != "testing" ] ; then if [ "$SUITE" != "stretch" ] ; then
if [ "${OLD_STATUS}" = "reproducible" ] && [ "$STATUS" != "depwait" ] && \ if [ "${OLD_STATUS}" = "reproducible" ] && [ "$STATUS" != "depwait" ] && \
( [ "$STATUS" = "unreproducible" ] || [ "$STATUS" = "FTBFS" ] ) ; then ( [ "$STATUS" = "unreproducible" ] || [ "$STATUS" = "FTBFS" ] ) ; then
MESSAGE="${DEBIAN_URL}/${SUITE}/${ARCH}/${SRCPACKAGE} : reproducible ➤ ${STATUS}" MESSAGE="${DEBIAN_URL}/${SUITE}/${ARCH}/${SRCPACKAGE} : reproducible ➤ ${STATUS}"
...@@ -626,8 +626,8 @@ export LANG="C" ...@@ -626,8 +626,8 @@ export LANG="C"
unset LC_ALL unset LC_ALL
export LANGUAGE="en_US:en" export LANGUAGE="en_US:en"
EOF EOF
# build path is not yet varied on testing # build path is not yet varied on stretch
if [ "${SUITE}" != "testing" ]; then if [ "${SUITE}" != "stretch" ]; then
echo "BUILDDIR=/build/1st" >> "$TMPCFG" echo "BUILDDIR=/build/1st" >> "$TMPCFG"
else else
echo "BUILDDIR=/build" >> "$TMPCFG" echo "BUILDDIR=/build" >> "$TMPCFG"
...@@ -689,8 +689,8 @@ export LC_ALL="$locale.UTF-8" ...@@ -689,8 +689,8 @@ export LC_ALL="$locale.UTF-8"
export LANGUAGE="$locale:$language" export LANGUAGE="$locale:$language"
umask 0002 umask 0002
EOF EOF
# build path is not yet varied on testing # build path is not yet varied on stretch
if [ "${SUITE}" != "testing" ]; then if [ "${SUITE}" != "stretch" ]; then
local src_dir_name="$(perl -mDpkg::Source::Package -e '$_ = Dpkg::Source::Package->new(filename => $ARGV[0])->get_basename; s/_/-/g; print' -- "${SRCPACKAGE}_${EVERSION}.dsc")" local src_dir_name="$(perl -mDpkg::Source::Package -e '$_ = Dpkg::Source::Package->new(filename => $ARGV[0])->get_basename; s/_/-/g; print' -- "${SRCPACKAGE}_${EVERSION}.dsc")"
echo "BUILDDIR=/build/$src_dir_name" >> "$TMPCFG" echo "BUILDDIR=/build/$src_dir_name" >> "$TMPCFG"
echo "BUILDSUBDIR=2nd" >> "$TMPCFG" echo "BUILDSUBDIR=2nd" >> "$TMPCFG"
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# #
# Copyright © 2015 Mattia Rizzolo <mattia@mapreri.org> # Copyright © 2015 Mattia Rizzolo <mattia@mapreri.org>
# Copyright © 2015-2016 Holger Levsen <holger@layer-acht.org> # Copyright © 2015-2017 Holger Levsen <holger@layer-acht.org>
# Based on the reproducible_common.sh by © 2014 Holger Levsen <holger@layer-acht.org> # Based on the reproducible_common.sh by © 2014 Holger Levsen <holger@layer-acht.org>
# Licensed under GPL-2 # Licensed under GPL-2
# #
...@@ -39,7 +39,7 @@ if os.uname()[1] == 'jenkins-test-vm': ...@@ -39,7 +39,7 @@ if os.uname()[1] == 'jenkins-test-vm':
sys.exit() sys.exit()
# tested suites # tested suites
SUITES = ['testing', 'unstable', 'experimental'] SUITES = ['stretch', 'unstable', 'experimental']
# tested architectures # tested architectures
ARCHS = ['amd64', 'i386', 'arm64', 'armhf'] ARCHS = ['amd64', 'i386', 'arm64', 'armhf']
# defaults # defaults
......
...@@ -32,7 +32,7 @@ BIN_PATH=/srv/jenkins/bin ...@@ -32,7 +32,7 @@ BIN_PATH=/srv/jenkins/bin
TEMPLATE_PATH=/srv/jenkins/mustache-templates/reproducible TEMPLATE_PATH=/srv/jenkins/mustache-templates/reproducible
# Debian suites being tested # Debian suites being tested
SUITES="testing unstable experimental" SUITES="stretch unstable experimental"
# Debian architectures being tested # Debian architectures being tested
ARCHS="amd64 i386 arm64 armhf" ARCHS="amd64 i386 arm64 armhf"
...@@ -670,7 +670,7 @@ create_png_from_table() { ...@@ -670,7 +670,7 @@ create_png_from_table() {
WHERE_EXTRA="$WHERE_EXTRA AND architecture = '$ARCH'" WHERE_EXTRA="$WHERE_EXTRA AND architecture = '$ARCH'"
if [ "$ARCH" = "armhf" ] ; then if [ "$ARCH" = "armhf" ] ; then
if [ $1 -eq 2 ] ; then if [ $1 -eq 2 ] ; then
# unstable/armhf was only build since 2015-08-30 (and experimental/armhf since 2015-12-19 and testing/armhf since 2016-01-01) # unstable/armhf was only build since 2015-08-30 (and experimental/armhf since 2015-12-19 and stretch/armhf since 2016-01-01)
WHERE_EXTRA="$WHERE_EXTRA AND datum >= '2015-08-30'" WHERE_EXTRA="$WHERE_EXTRA AND datum >= '2015-08-30'"
fi fi
elif [ "$ARCH" = "i386" ] ; then elif [ "$ARCH" = "i386" ] ; then
...@@ -684,7 +684,7 @@ create_png_from_table() { ...@@ -684,7 +684,7 @@ create_png_from_table() {
WHERE_EXTRA="$WHERE_EXTRA AND datum >= '2016-12-23'" WHERE_EXTRA="$WHERE_EXTRA AND datum >= '2016-12-23'"
fi fi
fi fi
# testing/amd64 was only build since... # stretch/amd64 was only build since...
# WHERE2_EXTRA="WHERE s.datum >= '2015-03-08'" # WHERE2_EXTRA="WHERE s.datum >= '2015-03-08'"
# experimental/amd64 was only build since... # experimental/amd64 was only build since...
# WHERE2_EXTRA="WHERE s.datum >= '2015-02-28'" # WHERE2_EXTRA="WHERE s.datum >= '2015-02-28'"
...@@ -697,29 +697,29 @@ create_png_from_table() { ...@@ -697,29 +697,29 @@ create_png_from_table() {
# This query becomes much more obnoxious when gaining # This query becomes much more obnoxious when gaining
# compatibility with postgres # compatibility with postgres
query_to_csv "SELECT stats.datum, query_to_csv "SELECT stats.datum,
COALESCE(reproducible_testing,0) AS reproducible_testing, COALESCE(reproducible_stretch,0) AS reproducible_stretch,
COALESCE(reproducible_unstable,0) AS reproducible_unstable, COALESCE(reproducible_unstable,0) AS reproducible_unstable,
COALESCE(reproducible_experimental,0) AS reproducible_experimental, COALESCE(reproducible_experimental,0) AS reproducible_experimental,
COALESCE(unreproducible_testing,0) AS unreproducible_testing, COALESCE(unreproducible_stretch,0) AS unreproducible_stretch,
COALESCE(unreproducible_unstable,0) AS unreproducible_unstable, COALESCE(unreproducible_unstable,0) AS unreproducible_unstable,
COALESCE(unreproducible_experimental,0) AS unreproducible_experimental, COALESCE(unreproducible_experimental,0) AS unreproducible_experimental,
COALESCE(FTBFS_testing,0) AS FTBFS_testing, COALESCE(FTBFS_stretch,0) AS FTBFS_stretch,
COALESCE(FTBFS_unstable,0) AS FTBFS_unstable, COALESCE(FTBFS_unstable,0) AS FTBFS_unstable,
COALESCE(FTBFS_experimental,0) AS FTBFS_experimental, COALESCE(FTBFS_experimental,0) AS FTBFS_experimental,
COALESCE(other_testing,0) AS other_testing, COALESCE(other_stretch,0) AS other_stretch,
COALESCE(other_unstable,0) AS other_unstable, COALESCE(other_unstable,0) AS other_unstable,
COALESCE(other_experimental,0) AS other_experimental COALESCE(other_experimental,0) AS other_experimental
FROM (SELECT s.datum, FROM (SELECT s.datum,
COALESCE((SELECT e.reproducible FROM stats_builds_per_day AS e WHERE s.datum=e.datum AND suite='testing' $WHERE_EXTRA),0) AS reproducible_testing, COALESCE((SELECT e.reproducible FROM stats_builds_per_day AS e WHERE s.datum=e.datum AND suite='stretch' $WHERE_EXTRA),0) AS reproducible_stretch,
COALESCE((SELECT e.reproducible FROM stats_builds_per_day AS e WHERE s.datum=e.datum AND suite='unstable' $WHERE_EXTRA),0) AS reproducible_unstable, COALESCE((SELECT e.reproducible FROM stats_builds_per_day AS e WHERE s.datum=e.datum AND suite='unstable' $WHERE_EXTRA),0) AS reproducible_unstable,
COALESCE((SELECT e.reproducible FROM stats_builds_per_day AS e WHERE s.datum=e.datum AND suite='experimental' $WHERE_EXTRA),0) AS reproducible_experimental, COALESCE((SELECT e.reproducible FROM stats_builds_per_day AS e WHERE s.datum=e.datum AND suite='experimental' $WHERE_EXTRA),0) AS reproducible_experimental,
(SELECT e.unreproducible FROM stats_builds_per_day e WHERE s.datum=e.datum AND suite='testing' $WHERE_EXTRA) AS unreproducible_testing, (SELECT e.unreproducible FROM stats_builds_per_day e WHERE s.datum=e.datum AND suite='stretch' $WHERE_EXTRA) AS unreproducible_stretch,
(SELECT e.unreproducible FROM stats_builds_per_day e WHERE s.datum=e.datum AND suite='unstable' $WHERE_EXTRA) AS unreproducible_unstable, (SELECT e.unreproducible FROM stats_builds_per_day e WHERE s.datum=e.datum AND suite='unstable' $WHERE_EXTRA) AS unreproducible_unstable,
(SELECT e.unreproducible FROM stats_builds_per_day e WHERE s.datum=e.datum AND suite='experimental' $WHERE_EXTRA) AS unreproducible_experimental, (SELECT e.unreproducible FROM stats_builds_per_day e WHERE s.datum=e.datum AND suite='experimental' $WHERE_EXTRA) AS unreproducible_experimental,
(SELECT e.FTBFS FROM stats_builds_per_day e WHERE s.datum=e.datum AND suite='testing' $WHERE_EXTRA) AS FTBFS_testing, (SELECT e.FTBFS FROM stats_builds_per_day e WHERE s.datum=e.datum AND suite='stretch' $WHERE_EXTRA) AS FTBFS_stretch,
(SELECT e.FTBFS FROM stats_builds_per_day e WHERE s.datum=e.datum AND suite='unstable' $WHERE_EXTRA) AS FTBFS_unstable, (SELECT e.FTBFS FROM stats_builds_per_day e WHERE s.datum=e.datum AND suite='unstable' $WHERE_EXTRA) AS FTBFS_unstable,
(SELECT e.FTBFS FROM stats_builds_per_day e WHERE s.datum=e.datum AND suite='experimental' $WHERE_EXTRA) AS FTBFS_experimental, (SELECT e.FTBFS FROM stats_builds_per_day e WHERE s.datum=e.datum AND suite='experimental' $WHERE_EXTRA) AS FTBFS_experimental,
(SELECT e.other FROM stats_builds_per_day e WHERE s.datum=e.datum AND suite='testing' $WHERE_EXTRA) AS other_testing, (SELECT e.other FROM stats_builds_per_day e WHERE s.datum=e.datum AND suite='stretch' $WHERE_EXTRA) AS other_stretch,
(SELECT e.other FROM stats_builds_per_day e WHERE s.datum=e.datum AND suite='unstable' $WHERE_EXTRA) AS other_unstable, (SELECT e.other FROM stats_builds_per_day e WHERE s.datum=e.datum AND suite='unstable' $WHERE_EXTRA) AS other_unstable,
(SELECT e.other FROM stats_builds_per_day e WHERE s.datum=e.datum AND suite='experimental' $WHERE_EXTRA) AS other_experimental (SELECT e.other FROM stats_builds_per_day e WHERE s.datum=e.datum AND suite='experimental' $WHERE_EXTRA) AS other_experimental
FROM stats_builds_per_day AS s $WHERE2_EXTRA GROUP BY s.datum) as stats FROM stats_builds_per_day AS s $WHERE2_EXTRA GROUP BY s.datum) as stats
...@@ -741,7 +741,7 @@ create_png_from_table() { ...@@ -741,7 +741,7 @@ create_png_from_table() {
COLORS=${COLOR[$1]} COLORS=${COLOR[$1]}
if [ $1 -eq 2 ] ; then if [ $1 -eq 2 ] ; then
case "$SUITE" in case "$SUITE" in
testing) COLORS=40 ;; stretch) COLORS=40 ;;
unstable) COLORS=41 ;; unstable) COLORS=41 ;;
experimental) COLORS=42 ;; experimental) COLORS=42 ;;
esac esac
......
...@@ -109,12 +109,12 @@ def lack_buildinfo(): ...@@ -109,12 +109,12 @@ def lack_buildinfo():
def pbuilder_dep_fail(): def pbuilder_dep_fail():
log.info('running pbuilder_dep_fail check...') log.info('running pbuilder_dep_fail check...')
bad_pkgs = [] bad_pkgs = []
# we only care about these failures in the testing suite as they happen # we only care about these failures in the stretch suite as they happen
# all the time in other suites, as packages are buggy # all the time in other suites, as packages are buggy
# and specific versions also come and go # and specific versions also come and go
query = '''SELECT s.name, r.version, s.suite, s.architecture query = '''SELECT s.name, r.version, s.suite, s.architecture
FROM sources AS s JOIN results AS r ON r.package_id=s.id FROM sources AS s JOIN results AS r ON r.package_id=s.id
WHERE r.status = 'FTBFS' AND s.suite = 'testing' WHERE r.status = 'FTBFS' AND s.suite = 'stretch'
ORDER BY s.name ASC, s.suite DESC, s.architecture ASC''' ORDER BY s.name ASC, s.suite DESC, s.architecture ASC'''
results = query_db(query) results = query_db(query)
for pkg, version, suite, arch in results: for pkg, version, suite, arch in results:
......
...@@ -329,12 +329,12 @@ write_build_performance_stats() { ...@@ -329,12 +329,12 @@ write_build_performance_stats() {
for ARCH in ${ARCHS} ; do for ARCH in ${ARCHS} ; do
write_page " <th>$ARCH</th>" write_page " <th>$ARCH</th>"
done done
write_page "</tr><tr><td class=\"left\">oldest build result in testing / unstable / experimental</td>" write_page "</tr><tr><td class=\"left\">oldest build result in stretch / unstable / experimental</td>"
for ARCH in ${ARCHS} ; do for ARCH in ${ARCHS} ; do
AGE_UNSTABLE=$(query_db "SELECT CAST(greatest(max(oldest_reproducible), max(oldest_unreproducible), max(oldest_FTBFS)) AS INTEGER) FROM ${TABLE[2]} WHERE suite='unstable' AND architecture='$ARCH' AND datum='$DATE'") AGE_UNSTABLE=$(query_db "SELECT CAST(greatest(max(oldest_reproducible), max(oldest_unreproducible), max(oldest_FTBFS)) AS INTEGER) FROM ${TABLE[2]} WHERE suite='unstable' AND architecture='$ARCH' AND datum='$DATE'")
AGE_EXPERIMENTAL=$(query_db "SELECT CAST(greatest(max(oldest_reproducible), max(oldest_unreproducible), max(oldest_FTBFS)) AS INTEGER) FROM ${TABLE[2]} WHERE suite='experimental' AND architecture='$ARCH' AND datum='$DATE'") AGE_EXPERIMENTAL=$(query_db "SELECT CAST(greatest(max(oldest_reproducible), max(oldest_unreproducible), max(oldest_FTBFS)) AS INTEGER) FROM ${TABLE[2]} WHERE suite='experimental' AND architecture='$ARCH' AND datum='$DATE'")
AGE_TESTING=$(query_db "SELECT CAST(greatest(max(oldest_reproducible), max(oldest_unreproducible), max(oldest_FTBFS)) AS INTEGER) FROM ${TABLE[2]} WHERE suite='testing' AND architecture='$ARCH' AND datum='$DATE'") AGE_STRETCH=$(query_db "SELECT CAST(greatest(max(oldest_reproducible), max(oldest_unreproducible), max(oldest_FTBFS)) AS INTEGER) FROM ${TABLE[2]} WHERE suite='stretch' AND architecture='$ARCH' AND datum='$DATE'")
write_page "<td>$AGE_TESTING / $AGE_UNSTABLE / $AGE_EXPERIMENTAL days</td>" write_page "<td>$AGE_STRETCH / $AGE_UNSTABLE / $AGE_EXPERIMENTAL days</td>"
done done
write_page "</tr><tr><td class=\"left\">Build jobs configured</td>" write_page "</tr><tr><td class=\"left\">Build jobs configured</td>"
for ARCH in ${ARCHS} ; do for ARCH in ${ARCHS} ; do
...@@ -553,10 +553,10 @@ create_dashboard_page() { ...@@ -553,10 +553,10 @@ create_dashboard_page() {
local TD_PKG_SID_FTBR="<tr><td class=\"left\">&nbsp;&nbsp;- unreproducible ones</a></td><td></td>" local TD_PKG_SID_FTBR="<tr><td class=\"left\">&nbsp;&nbsp;- unreproducible ones</a></td><td></td>"
local TD_PKG_SID_FTBFS="<tr><td class=\"left\">&nbsp;&nbsp;- failing to build</a></td><td></td>" local TD_PKG_SID_FTBFS="<tr><td class=\"left\">&nbsp;&nbsp;- failing to build</a></td><td></td>"
local TD_PKG_SID_ISSUES="<tr><td class=\"left\">packages in unstable which need to be fixed</td><td></td>" local TD_PKG_SID_ISSUES="<tr><td class=\"left\">packages in unstable which need to be fixed</td><td></td>"
local TD_PKG_TESTING_NOISSUES="<tr><td class=\"left\">packages in testing with issues but without identified ones</td><td></td>" local TD_PKG_STRETCH_NOISSUES="<tr><td class=\"left\">packages in stretch with issues but without identified ones</td><td></td>"
local TD_PKG_TESTING_FTBR="<tr><td class=\"left\">&nbsp;&nbsp;- unreproducible ones</a></td><td></td>" local TD_PKG_STRETCH_FTBR="<tr><td class=\"left\">&nbsp;&nbsp;- unreproducible ones</a></td><td></td>"
local TD_PKG_TESTING_FTBFS="<tr><td class=\"left\">&nbsp;&nbsp;- failing to build</a></td><td></td>" local TD_PKG_STRETCH_FTBFS="<tr><td class=\"left\">&nbsp;&nbsp;- failing to build</a></td><td></td>"
local TD_PKG_TESTING_ISSUES="<tr><td class=\"left\">packages in testing which need to be fixed</td><td></td>" local TD_PKG_STRETCH_ISSUES="<tr><td class=\"left\">packages in stretch which need to be fixed</td><td></td>"
for ARCH in ${ARCHS} ; do for ARCH in ${ARCHS} ; do
SUITE="unstable" SUITE="unstable"
gather_suite_arch_stats gather_suite_arch_stats
...@@ -569,24 +569,24 @@ create_dashboard_page() { ...@@ -569,24 +569,24 @@ create_dashboard_page() {
RESULT=$(query_db "SELECT COUNT(*) FROM (SELECT s.id FROM sources AS s JOIN results AS r ON r.package_id=s.id WHERE r.status='FTBFS' AND s.id NOT IN (SELECT package_id FROM notes) AND s.suite='$SUITE' AND s.architecture='$ARCH') tmp") RESULT=$(query_db "SELECT COUNT(*) FROM (SELECT s.id FROM sources AS s JOIN results AS r ON r.package_id=s.id WHERE r.status='FTBFS' AND s.id NOT IN (SELECT package_id FROM notes) AND s.suite='$SUITE' AND s.architecture='$ARCH') tmp")
TD_PKG_SID_FTBFS="$TD_PKG_SID_FTBFS<td>$RESULT / $(echo "scale=1 ; ($RESULT*100/$COUNT_TOTAL)" | bc)%</td>" TD_PKG_SID_FTBFS="$TD_PKG_SID_FTBFS<td>$RESULT / $(echo "scale=1 ; ($RESULT*100/$COUNT_TOTAL)" | bc)%</td>"
SUITE="testing" SUITE="stretch"
gather_suite_arch_stats gather_suite_arch_stats
TD_PKG_TESTING_ISSUES="$TD_PKG_TESTING_ISSUES<td>$(echo $COUNT_BAD + $COUNT_UGLY |bc) / $(echo $PERCENT_BAD + $PERCENT_UGLY|bc)%</td>" TD_PKG_STRETCH_ISSUES="$TD_PKG_STRETCH_ISSUES<td>$(echo $COUNT_BAD + $COUNT_UGLY |bc) / $(echo $PERCENT_BAD + $PERCENT_UGLY|bc)%</td>"
RESULT=$(query_db "SELECT COUNT(*) FROM (SELECT s.id FROM sources AS s JOIN results AS r ON r.package_id=s.id WHERE r.status IN ('unreproducible', 'FTBFS', 'blacklisted') AND s.id NOT IN (SELECT package_id FROM notes) AND s.suite='$SUITE' AND s.architecture='$ARCH') tmp") RESULT=$(query_db "SELECT COUNT(*) FROM (SELECT s.id FROM sources AS s JOIN results AS r ON r.package_id=s.id WHERE r.status IN ('unreproducible', 'FTBFS', 'blacklisted') AND s.id NOT IN (SELECT package_id FROM notes) AND s.suite='$SUITE' AND s.architecture='$ARCH') tmp")
TD_PKG_TESTING_NOISSUES="$TD_PKG_TESTING_NOISSUES<td><a href=\"/debian/$SUITE/$ARCH/index_no_notes.html\">$RESULT</a> / $(echo "scale=1 ; ($RESULT*100/$COUNT_TOTAL)" | bc)%</td>" TD_PKG_STRETCH_NOISSUES="$TD_PKG_STRETCH_NOISSUES<td><a href=\"/debian/$SUITE/$ARCH/index_no_notes.html\">$RESULT</a> / $(echo "scale=1 ; ($RESULT*100/$COUNT_TOTAL)" | bc)%</td>"
RESULT=$(query_db "SELECT COUNT(*) FROM (SELECT s.id FROM sources AS s JOIN results AS r ON r.package_id=s.id WHERE r.status='unreproducible' AND s.id NOT IN (SELECT package_id FROM notes) AND s.suite='$SUITE' AND s.architecture='$ARCH') tmp") RESULT=$(query_db "SELECT COUNT(*) FROM (SELECT s.id FROM sources AS s JOIN results AS r ON r.package_id=s.id WHERE r.status='unreproducible' AND s.id NOT IN (SELECT package_id FROM notes) AND s.suite='$SUITE' AND s.architecture='$ARCH') tmp")
TD_PKG_TESTING_FTBR="$TD_PKG_TESTING_FTBR<td>$RESULT / $(echo "scale=1 ; ($RESULT*100/$COUNT_TOTAL)" | bc)%</td>" TD_PKG_STRETCH_FTBR="$TD_PKG_STRETCH_FTBR<td>$RESULT / $(echo "scale=1 ; ($RESULT*100/$COUNT_TOTAL)" | bc)%</td>"
RESULT=$(query_db "SELECT COUNT(*) FROM (SELECT s.id FROM sources AS s JOIN results AS r ON r.package_id=s.id WHERE r.status='FTBFS' AND s.id NOT IN (SELECT package_id FROM notes) AND s.suite='$SUITE' AND s.architecture='$ARCH') tmp") RESULT=$(query_db "SELECT COUNT(*) FROM (SELECT s.id FROM sources AS s JOIN results AS r ON r.package_id=s.id WHERE r.status='FTBFS' AND s.id NOT IN (SELECT package_id FROM notes) AND s.suite='$SUITE' AND s.architecture='$ARCH') tmp")
TD_PKG_TESTING_FTBFS="$TD_PKG_TESTING_FTBFS<td>$RESULT / $(echo "scale=1 ; ($RESULT*100/$COUNT_TOTAL)" | bc)%</td>" TD_PKG_STRETCH_FTBFS="$TD_PKG_STRETCH_FTBFS<td>$RESULT / $(echo "scale=1 ; ($RESULT*100/$COUNT_TOTAL)" | bc)%</td>"
done done
write_page "$TD_PKG_SID_NOISSUES</tr>" write_page "$TD_PKG_SID_NOISSUES</tr>"
write_page "$TD_PKG_SID_FTBR</tr>" write_page "$TD_PKG_SID_FTBR</tr>"
write_page "$TD_PKG_SID_FTBFS</tr>" write_page "$TD_PKG_SID_FTBFS</tr>"
write_page "$TD_PKG_SID_ISSUES</tr>" write_page "$TD_PKG_SID_ISSUES</tr>"
write_page "$TD_PKG_TESTING_NOISSUES</tr>" write_page "$TD_PKG_STRETCH_NOISSUES</tr>"
write_page "$TD_PKG_TESTING_FTBR</tr>" write_page "$TD_PKG_STRETCH_FTBR</tr>"
write_page "$TD_PKG_TESTING_FTBFS</tr>" write_page "$TD_PKG_STRETCH_FTBFS</tr>"
write_page "$TD_PKG_TESTING_ISSUES</tr>" write_page "$TD_PKG_STRETCH_ISSUES</tr>"
ARCH="amd64" ARCH="amd64"
SUITE="unstable" SUITE="unstable"
......
#!/bin/bash #!/bin/bash
# Copyright 2015-2016 Holger Levsen <holger@layer-acht.org> # Copyright 2015-2017 Holger Levsen <holger@layer-acht.org>
# released under the GPLv=2 # released under the GPLv=2
DEBUG=false DEBUG=false
...@@ -58,7 +58,7 @@ for PKG in $SOURCEPKGS ; do ...@@ -58,7 +58,7 @@ for PKG in $SOURCEPKGS ; do
CRUFT="" CRUFT=""
BET="" BET=""
OBSOLETE_IN_SID=false OBSOLETE_IN_SID=false
OBSOLETE_IN_TESTING=false OBSOLETE_IN_STRETCH=false
OBSOLETE_IN_EXP=false OBSOLETE_IN_EXP=false
# #
# gather versions of a package # gather versions of a package
...@@ -77,23 +77,23 @@ for PKG in $SOURCEPKGS ; do ...@@ -77,23 +77,23 @@ for PKG in $SOURCEPKGS ; do
CRUFT="$CRUFT ${VERSION}" CRUFT="$CRUFT ${VERSION}"
fi fi
done done
TESTING=$(rmadison -s testing $PKG | egrep -v '^(debian|new):' | cut -d "|" -f2|xargs echo) STRETCH=$(rmadison -s stretch $PKG | egrep -v '^(debian|new):' | cut -d "|" -f2|xargs echo)
EXPERIMENTAL=$(rmadison -s experimental $PKG | egrep -v '^(debian|new):' | cut -d "|" -f2|xargs echo) EXPERIMENTAL=$(rmadison -s experimental $PKG | egrep -v '^(debian|new):' | cut -d "|" -f2|xargs echo)
# #
# format output # format output
# #
CSID="" CSID=""
CTEST="" CSTRETCH=""
CEXP="" CEXP=""
if [ ! -z "$TESTING" ] ; then if [ ! -z "$STRETCH" ] ; then
for i in $TESTING ; do for i in $STRETCH ; do
if dpkg --compare-versions "$i" gt "$BET" ; then if dpkg --compare-versions "$i" gt "$BET" ; then
CTEST="$CTEST<span class=\"green\">$i</span><br />" CSTRETCH="$CSTRETCH<span class=\"green\">$i</span><br />"
OBSOLETE_IN_TESTING=true OBSOLETE_IN_STRETCH=true
OBSOLETE_IN_SID=true OBSOLETE_IN_SID=true
OBSOLETE_IN_EXP=true OBSOLETE_IN_EXP=true
else else
CTEST="$CTEST$i<br />" CSTRETCH="$CSTRETCH$i<br />"
fi fi
done done
fi fi
...@@ -179,8 +179,8 @@ for PKG in $SOURCEPKGS ; do ...@@ -179,8 +179,8 @@ for PKG in $SOURCEPKGS ; do
else else
write_row "<a href=\"$URL\">$GIT</a>" write_row "<a href=\"$URL\">$GIT</a>"
MERGEINFO="" MERGEINFO=""
if $OBSOLETE_IN_TESTING ; then if $OBSOLETE_IN_STRETCH ; then
MERGEINFO=" and available in testing and unstable" MERGEINFO=" and available in stretch and unstable"
elif $OBSOLETE_IN_SID ; then elif $OBSOLETE_IN_SID ; then
MERGEINFO=" and available in unstable" MERGEINFO=" and available in unstable"
elif $OBSOLETE_IN_EXP ; then elif $OBSOLETE_IN_EXP ; then
...@@ -191,14 +191,14 @@ for PKG in $SOURCEPKGS ; do ...@@ -191,14 +191,14 @@ for PKG in $SOURCEPKGS ; do
else else
write_row "<a href=\"$URL\">$GIT</a>" write_row "<a href=\"$URL\">$GIT</a>"
if [ "$PKG" != "strip-nondeterminism" ] && [ "$PKG" != "diffoscope" ] && [ "$PKG" != "debbindiff" ] && [ "$PKG" != "disorderfs" ] ; then if [ "$PKG" != "strip-nondeterminism" ] && [ "$PKG" != "diffoscope" ] && [ "$PKG" != "debbindiff" ] && [ "$PKG" != "disorderfs" ] ; then
if $OBSOLETE_IN_TESTING && $OBSOLETE_IN_SID && $OBSOLETE_IN_EXP ; then if $OBSOLETE_IN_STRETCH && $OBSOLETE_IN_SID && $OBSOLETE_IN_EXP ; then
write_row "<br />(unused?" write_row "<br />(unused?"
write_row "<br /><span class=\"purple\">Then the branch should probably renamed.</span>)" write_row "<br /><span class=\"purple\">Then the branch should probably renamed.</span>)"
elif $OBSOLETE_IN_SID && $OBSOLETE_IN_EXP ; then elif $OBSOLETE_IN_SID && $OBSOLETE_IN_EXP ; then
write_row "<br />(only used in testing, fixed in sid," write_row "<br />(only used in stretch, fixed in sid,"
write_row "<br /><span class=\"purple\">branch probably either should be renamed to <em>merged/reproducible_builds</em> or a new upload to our repo is needed?</span>)" write_row "<br /><span class=\"purple\">branch probably either should be renamed to <em>merged/reproducible_builds</em> or a new upload to our repo is needed?</span>)"
elif $OBSOLETE_IN_EXP ; then elif $OBSOLETE_IN_EXP ; then
write_row "<br />(only used in testing and unstable, fixed in experimental)" write_row "<br />(only used in stretch and unstable, fixed in experimental)"
fi fi
elif [ "$PKG" = "disorderfs" ] ; then elif [ "$PKG" = "disorderfs" ] ; then
write_row "<br />(only used to modify the build environment in the 2nd build)" write_row "<br />(only used to modify the build environment in the 2nd build)"
...@@ -221,7 +221,7 @@ for PKG in $SOURCEPKGS ; do ...@@ -221,7 +221,7 @@ for PKG in $SOURCEPKGS ; do
write_row " <td><a href=\"$URL\">bugs</a></td>" write_row " <td><a href=\"$URL\">bugs</a></td>"
write_row " <td>$CRUFT</td>" write_row " <td>$CRUFT</td>"
write_row " <td>$BET $CBINARIES</td>" write_row " <td>$BET $CBINARIES</td>"
write_row " <td>$CTEST</td>" write_row " <td>$CSTRETCH</td>"
write_row " <td>$CSID</td>" write_row " <td>$CSID</td>"
write_row " <td>$CEXP</td>" write_row " <td>$CEXP</td>"
write_row "</tr>" write_row "</tr>"
...@@ -229,14 +229,14 @@ for PKG in $SOURCEPKGS ; do ...@@ -229,14 +229,14 @@ for PKG in $SOURCEPKGS ; do
echo echo
done done
if [ -s $TABLE_TODO ] ; then if [ -s $TABLE_TODO ] ; then
write_page "<p><table><tr><th class=\"center\">package</th><th class=\"center\">git repo</th><th class=\"center\">PTS link</th><th class=\"center\">usertagged bug(s)</th><th class=\"center\">old versions in our repo<br />(needed for reproducing old builds)</th><th class=\"center\">version in our repo<br />(available binary packages per architecture)</th><th class=\"center\">version in 'testing'</th><th class=\"center\">version in 'unstable'</th><th class=\"center\">version in 'experimental'</th></tr>" write_page "<p><table><tr><th class=\"center\">package</th><th class=\"center\">git repo</th><th class=\"center\">PTS link</th><th class=\"center\">usertagged bug(s)</th><th class=\"center\">old versions in our repo<br />(needed for reproducing old builds)</th><th class=\"center\">version in our repo<br />(available binary packages per architecture)</th><th class=\"center\">version in 'stretch'</th><th class=\"center\">version in 'unstable'</th><th class=\"center\">version in 'experimental'</th></tr>"
cat $TABLE_TODO >> $PAGE cat $TABLE_TODO >> $PAGE
write_page "</table></p>" write_page "</table></p>"
else else
write_page "<p>Congratulations! There are no modified packages in our repository compared to unstable. (Yes, that means our repository is obsolete now.)" write_page "<p>Congratulations! There are no modified packages in our repository compared to unstable. (Yes, that means our repository is obsolete now.)"
fi fi
if [ -s $TABLE_DONE ] ; then if [ -s $TABLE_DONE ] ; then
write_page "<p><table><tr><th class=\"center\">obsoleted package,<br />version in sid higher than in our repo</th><th class=\"center\">git repo</th><th class=\"center\">PTS link</th><th class=\"center\">usertagged bug(s)</th><th class=\"center\">old version(s) in our repo<br />(needed for reproducing old builds)</th><th class=\"center\">version in our repo<br />(available binary packages per architecture)</th><th class=\"center\">version in 'testing'</th><th class=\"center\">version in 'unstable'</th><th class=\"center\">version in 'experimental'</th></tr>" write_page "<p><table><tr><th class=\"center\">obsoleted package,<br />version in sid higher than in our repo</th><th class=\"center\">git repo</th><th class=\"center\">PTS link</th><th class=\"center\">usertagged bug(s)</th><th class=\"center\">old version(s) in our repo<br />(needed for reproducing old builds)</th><th class=\"center\">version in our repo<br />(available binary packages per architecture)</th><th class=\"center\">version in 'stretch'</th><th class=\"center\">version in 'unstable'</th><th class=\"center\">version in 'experimental'</th></tr>"
cat $TABLE_DONE >> $PAGE cat $TABLE_DONE >> $PAGE
write_page "</table></p>" write_page "</table></p>"
fi fi
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# #
# Copyright © 2015 Mattia Rizzolo <mattia@mapreri.org> # Copyright © 2015 Mattia Rizzolo <mattia@mapreri.org>
# Copyright © 2015 Holger Levsen <holger@layer-acht.org> # Copyright © 2015-2017 Holger Levsen <holger@layer-acht.org>
# Based on reproducible_json.sh © 2014 Holger Levsen <holger@layer-acht.org> # Based on reproducible_json.sh © 2014 Holger Levsen <holger@layer-acht.org>
# Licensed under GPL-2 # Licensed under GPL-2
# #
...@@ -48,8 +48,8 @@ for row in result: ...@@ -48,8 +48,8 @@ for row in result:
log.debug(pkg) log.debug(pkg)
output.append(pkg) output.append(pkg)
# tracker.d.o should only care about results in testing # tracker.d.o should only care about results in stretch
if pkg['suite'] == 'testing': if pkg['suite'] == 'stretch':
package = pkg['package'] package = pkg['package']
if package in crossarch: if package in crossarch:
......
...@@ -419,7 +419,7 @@ fi ...@@ -419,7 +419,7 @@ fi
# find + chmod files with bad permissions # find + chmod files with bad permissions
echo "$(date -u) - Checking for files with bad permissions." echo "$(date -u) - Checking for files with bad permissions."
BADPERMS=$(find $DEBIAN_BASE/{buildinfo,dbd,rbuild,artifacts,unstable,experimental,testing,rb-pkg} ! -perm 644 -type f 2>/dev/null|| true) BADPERMS=$(find $DEBIAN_BASE/{buildinfo,dbd,rbuild,artifacts,unstable,experimental,stretch,rb-pkg} ! -perm 644 -type f 2>/dev/null|| true)
if [ ! -z "$BADPERMS" ] ; then if [ ! -z "$BADPERMS" ] ; then
DIRTY=true DIRTY=true
echo echo
......
...@@ -27,7 +27,7 @@ def load_notes(): ...@@ -27,7 +27,7 @@ def load_notes():
{ 'package_name': [ { 'package_name': [
{'suite': 'unstable', 'version': '0.0', 'comments': None, {'suite': 'unstable', 'version': '0.0', 'comments': None,
'bugs': [1234, 5678], 'issues': ['blalba','auauau']}, 'bugs': [1234, 5678], 'issues': ['blalba','auauau']},
{'suite': 'testing', 'version': None, 'comments': 'strstr', {'suite': 'stretch', 'version': None, 'comments': 'strstr',
'bugs': [], 'issues': []}], 'bugs': [], 'issues': []}],
'package_name':<etc> } 'package_name':<etc> }
""" """
......
...@@ -71,110 +71,110 @@ MAXIMA = {'amd64': 1600, 'i386': 1500, 'arm64': 1500, 'armhf': 1000} ...@@ -71,110 +71,110 @@ MAXIMA = {'amd64': 1600, 'i386': 1500, 'arm64': 1500, 'armhf': 1000}
LIMITS = { LIMITS = {
'untested': { 'untested': {
'amd64': { 'amd64': {
'testing': {'*': 100}, 'stretch': {'*': 100},
'unstable': {'*': 100}, 'unstable': {'*': 100},
'experimental': {'*': 100}, 'experimental': {'*': 100},
}, },
'i386': { 'i386': {
'testing': {'*': 100}, 'stretch': {'*': 100},
'unstable': {'*': 100}, 'unstable': {'*': 100},
'experimental': {'*': 100}, 'experimental': {'*': 100},
}, },
'arm64': { 'arm64': {
'testing': {'*': 100}, 'stretch': {'*': 100},
'unstable': {'*': 100}, 'unstable': {'*': 100},
'experimental': {'*': 100}, 'experimental': {'*': 100},
}, },
'armhf': { 'armhf': {
'testing': {'*': 100}, 'stretch': {'*': 100},
'unstable': {'*': 100}, 'unstable': {'*': 100},
'experimental': {'*': 100}, 'experimental': {'*': 100},
}, },
}, },
'new': { 'new': {
'amd64': { 'amd64': {
'testing': {1: (100, 250), 2: (200, 200), '*': 100}, 'stretch': {1: (100, 250), 2: (200, 200), '*': 100},
'unstable': {1: (100, 250), 2: (200, 200), '*': 150}, 'unstable': {1: (100, 250), 2: (200, 200), '*': 150},
'experimental': {1: (100, 250), 2: (200, 200), '*': 50}, 'experimental': {1: (100, 250), 2: (200, 200), '*': 50},
}, },
'i386': { 'i386': {
'testing': {1: (100, 250), 2: (200, 200), '*': 100}, 'stretch': {1: (100, 250), 2: (200, 200), '*': 100},
'unstable': {1: (100, 250), 2: (200, 200), '*': 150}, 'unstable': {1: (100, 250), 2: (200, 200), '*': 150},
'experimental': {1: (100, 250), 2: (200, 200), '*': 50}, 'experimental': {1: (100, 250), 2: (200, 200), '*': 50},
}, },
'arm64': { 'arm64': {
'testing': {1: (100, 250), 2: (200, 200), '*': 50}, 'stretch': {1: (100, 250), 2: (200, 200), '*': 50},
'unstable': {1: (100, 250), 2: (200, 200), '*': 75}, 'unstable': {1: (100, 250), 2: (200, 200), '*': 75},
'experimental': {1: (100, 200), 2: (200, 200), '*': 25}, 'experimental': {1: (100, 200), 2: (200, 200), '*': 25},
}, },
'armhf': { 'armhf': {
'testing': {1: (100, 200), 2: (200, 200), '*': 50}, 'stretch': {1: (100, 200), 2: (200, 200), '*': 50},
'unstable': {1: (100, 200), 2: (200, 200), '*': 75}, 'unstable': {1: (100, 200), 2: (200, 200), '*': 75},
'experimental': {1: (100, 200), 2: (200, 200), '*': 25}, 'experimental': {1: (100, 200), 2: (200, 200), '*': 25},
}, },
}, },
'ftbfs': { 'ftbfs': {
'amd64': { 'amd64': {
'testing': {1: (700, 40), 2: (500, 20), '*': 5}, 'stretch': {1: (700, 40), 2: (500, 20), '*': 5},
'unstable': {1: (700, 40), 2: (500, 20), '*': 5}, 'unstable': {1: (700, 40), 2: (500, 20), '*': 5},
'experimental': {1: (700, 40), 2: (500, 20), '*': 2}, 'experimental': {1: (700, 40), 2: (500, 20), '*': 2},
}, },
'i386': { 'i386': {
'testing': {1: (700, 40), 2: (500, 20), '*': 5}, 'stretch': {1: (700, 40), 2: (500, 20), '*': 5},
'unstable': {1: (700, 40), 2: (500, 20), '*': 5}, 'unstable': {1: (700, 40), 2: (500, 20), '*': 5},
'experimental': {1: (700, 40), 2: (500, 20), '*': 2}, 'experimental': {1: (700, 40), 2: (500, 20), '*': 2},
}, },
'arm64': { 'arm64': {
'testing': {1: (700, 40), 2: (500, 20), '*': 5}, 'stretch': {1: (700, 40), 2: (500, 20), '*': 5},
'unstable': {1: (700, 40), 2: (500, 20), '*': 5}, 'unstable': {1: (700, 40), 2: (500, 20), '*': 5},
'experimental': {1: (700, 40), 2: (500, 20), '*': 2}, 'experimental': {1: (700, 40), 2: (500, 20), '*': 2},
}, },
'armhf': { 'armhf': {
'testing': {1: (575, 20), 2: (450, 10), '*': 5}, 'stretch': {1: (575, 20), 2: (450, 10), '*': 5},
'unstable': {1: (575, 20), 2: (450, 10), '*': 5}, 'unstable': {1: (575, 20), 2: (450, 10), '*': 5},
'experimental': {1: (575, 20), 2: (450, 10), '*': 2}, 'experimental': {1: (575, 20), 2: (450, 10), '*': 2},
} }
}, },
'depwait': { 'depwait': {
'amd64': { 'amd64': {
'testing': {1: (700, 400), 2: (500, 200), '*': 50}, 'stretch': {1: (700, 400), 2: (500, 200), '*': 50},
'unstable': {1: (700, 400), 2: (500, 200), '*': 50}, 'unstable': {1: (700, 400), 2: (500, 200), '*': 50},
'experimental': {1: (700, 400), 2: (500, 200), '*': 20}, 'experimental': {1: (700, 400), 2: (500, 200), '*': 20},
}, },
'i386': { 'i386': {
'testing': {1: (700, 400), 2: (500, 200), '*': 50}, 'stretch': {1: (700, 400), 2: (500, 200), '*': 50},
'unstable': {1: (700, 400), 2: (500, 200), '*': 50}, 'unstable': {1: (700, 400), 2: (500, 200), '*': 50},
'experimental': {1: (700, 400), 2: (500, 200), '*': 20}, 'experimental': {1: (700, 400), 2: (500, 200), '*': 20},
}, },
'arm64': { 'arm64': {
'testing': {1: (700, 400), 2: (500, 200), '*': 50}, 'stretch': {1: (700, 400), 2: (500, 200), '*': 50},
'unstable': {1: (700, 400), 2: (500, 200), '*': 50}, 'unstable': {1: (700, 400), 2: (500, 200), '*': 50},
'experimental': {1: (700, 400), 2: (500, 200), '*': 20}, 'experimental': {1: (700, 400), 2: (500, 200), '*': 20},
}, },
'armhf': { 'armhf': {
'testing': {1: (575, 200), 2: (450, 100), '*': 50}, 'stretch': {1: (575, 200), 2: (450, 100), '*': 50},
'unstable': {1: (575, 200), 2: (450, 100), '*': 50}, 'unstable': {1: (575, 200), 2: (450, 100), '*': 50},
'experimental': {1: (575, 200), 2: (450, 100), '*': 20}, 'experimental': {1: (575, 200), 2: (450, 100), '*': 20},
} }
}, },
'old': { 'old': {
'amd64': { 'amd64': {
'testing': {1: (700, 1000), 2: (1100, 850), '*': 0}, 'stretch': {1: (700, 1000), 2: (1100, 850), '*': 0},
'unstable': {1: (700, 1200), 2: (1100, 1050), '*': 0}, 'unstable': {1: (700, 1200), 2: (1100, 1050), '*': 0},
'experimental': {1: (700, 70), 2: (1100, 50), '*': 0}, 'experimental': {1: (700, 70), 2: (1100, 50), '*': 0},
}, },
'i386': { 'i386': {
'testing': {1: (700, 1000), 2: (1100, 850), '*': 0}, 'stretch': {1: (700, 1000), 2: (1100, 850), '*': 0},
'unstable': {1: (700, 1200), 2: (1100, 1050), '*': 0}, 'unstable': {1: (700, 1200), 2: (1100, 1050), '*': 0},
'experimental': {1: (700, 70), 2: (1100, 50), '*': 0}, 'experimental': {1: (700, 70), 2: (1100, 50), '*': 0},
}, },
'arm64': { 'arm64': {
'testing': {1: (700, 1000), 2: (1100, 850), '*': 0}, 'stretch': {1: (700, 1000), 2: (1100, 850), '*': 0},
'unstable': {1: (700, 1200), 2: (1100, 1050), '*': 0}, 'unstable': {1: (700, 1200), 2: (1100, 1050), '*': 0},
'experimental': {1: (700, 70), 2: (1100, 50), '*': 0}, 'experimental': {1: (700, 70), 2: (1100, 50), '*': 0},
}, },
'armhf': { 'armhf': {
'testing': {1: (600, 800), 2: (850, 500), '*': 0}, 'stretch': {1: (600, 800), 2: (850, 500), '*': 0},
'unstable': {1: (600, 1000), 2: (850, 700), '*': 0}, 'unstable': {1: (600, 1000), 2: (850, 700), '*': 0},
'experimental': {1: (600, 70), 2: (850, 50), '*': 0}, 'experimental': {1: (600, 70), 2: (850, 50), '*': 0},
} }
...@@ -449,7 +449,7 @@ def query_new_versions(suite, arch, limit): ...@@ -449,7 +449,7 @@ def query_new_versions(suite, arch, limit):
LIMIT {limit}""".format(suite=suite, arch=arch, limit=limit) LIMIT {limit}""".format(suite=suite, arch=arch, limit=limit)
pkgs = query_db(query) pkgs = query_db(query)
# the next line avoids constant rescheduling of packages: # the next line avoids constant rescheduling of packages:
# packages in our repository != sid or testing, # packages in our repository != sid or stretch,
# so they will always be selected by the query above # so they will always be selected by the query above
# so we only accept them if there version is greater than the already tested one # so we only accept them if there version is greater than the already tested one
packages = [(x[0], x[1]) for x in pkgs if version_compare(x[2], x[3]) > 0] packages = [(x[0], x[1]) for x in pkgs if version_compare(x[2], x[3]) > 0]
......
#!/bin/bash #!/bin/bash
# Copyright 2014-2016 Holger Levsen <holger@layer-acht.org> # Copyright 2014-2017 Holger Levsen <holger@layer-acht.org>
# released under the GPLv=2 # released under the GPLv=2
DEBUG=false DEBUG=false
...@@ -127,8 +127,8 @@ setup_pbuilder() { ...@@ -127,8 +127,8 @@ setup_pbuilder() {
sudo pbuilder --execute $pbuilder_http_proxy --save-after-exec --basetgz /var/cache/pbuilder/${NAME}-new.tgz -- ${TMPFILE} | tee ${LOG} sudo pbuilder --execute $pbuilder_http_proxy --save-after-exec --basetgz /var/cache/pbuilder/${NAME}-new.tgz -- ${TMPFILE} | tee ${LOG}
rm ${TMPFILE} rm ${TMPFILE}
# add repo only for experimental and sid - keep testing "real" (and sid progressive!) # add repo only for experimental and sid - keep stretch "real" (and sid progressive!)
if [ "$SUITE" != "testing" ] ; then if [ "$SUITE" != "stretch" ] ; then
# apply further customisations, eg. install $PACKAGES from our repo # apply further customisations, eg. install $PACKAGES from our repo
create_setup_our_repo_tmpfile ${TMPFILE} "${PACKAGES}" create_setup_our_repo_tmpfile ${TMPFILE} "${PACKAGES}"
if [ "$DEBUG" = "true" ] ; then if [ "$DEBUG" = "true" ] ; then
......
#!/bin/bash #!/bin/bash
# Copyright 2012-2016 Holger Levsen <holger@layer-acht.org> # Copyright 2012-2017 Holger Levsen <holger@layer-acht.org>
# Copyright 2013 Antonio Terceiro <terceiro@debian.org> # Copyright 2013 Antonio Terceiro <terceiro@debian.org>
# Copyright 2014 Joachim Breitner <nomeata@debian.org> # Copyright 2014 Joachim Breitner <nomeata@debian.org>
# Copyright 2015 MAttia Rizzolo <mattia@mapreri.org> # Copyright 2015 MAttia Rizzolo <mattia@mapreri.org>
...@@ -183,13 +183,13 @@ bootstrap() { ...@@ -183,13 +183,13 @@ bootstrap() {
robust_chroot_apt install -y --no-install-recommends sudo robust_chroot_apt install -y --no-install-recommends sudo
robust_chroot_apt install -y --no-install-recommends $@ robust_chroot_apt install -y --no-install-recommends $@
# try to use diffoscope from experimental # try to use diffoscope from experimental
if ([ "$SUITE" = "unstable" ] || [ "$SUITE" = "testing" ] ) && [ "$1" = "diffoscope" ] ; then if ([ "$SUITE" = "unstable" ] || [ "$SUITE" = "stretch" ] ) && [ "$1" = "diffoscope" ] ; then
echo "deb $MIRROR experimental main" | sudo tee -a $SCHROOT_TARGET/etc/apt/sources.list > /dev/null echo "deb $MIRROR experimental main" | sudo tee -a $SCHROOT_TARGET/etc/apt/sources.list > /dev/null
robust_chroot_apt update robust_chroot_apt update
# install diffoscope from experimental without re-adding all recommends... # install diffoscope from experimental without re-adding all recommends...
sudo chroot $SCHROOT_TARGET apt-get install -y -t experimental --no-install-recommends diffoscope || echo "Warning: diffoscope from experimental is uninstallable at the moment." sudo chroot $SCHROOT_TARGET apt-get install -y -t experimental --no-install-recommends diffoscope || echo "Warning: diffoscope from experimental is uninstallable at the moment."
elif [ "$SUITE" = "testing" ] && [ "$1" = "diffoscope" ] ; then elif [ "$SUITE" = "stretch" ] && [ "$1" = "diffoscope" ] ; then
# always try to use diffoscope from unstable on testing # always try to use diffoscope from unstable on stretch
echo "deb $MIRROR unstable main" | sudo tee -a $SCHROOT_TARGET/etc/apt/sources.list > /dev/null echo "deb $MIRROR unstable main" | sudo tee -a $SCHROOT_TARGET/etc/apt/sources.list > /dev/null
robust_chroot_apt update robust_chroot_apt update
# install diffoscope from unstable without re-adding all recommends... # install diffoscope from unstable without re-adding all recommends...
......
...@@ -197,7 +197,7 @@ Use common-debian-service-https-redirect www.reproducible-builds.org ...@@ -197,7 +197,7 @@ Use common-debian-service-https-redirect www.reproducible-builds.org
# redirect debian specific requests from t.r-b.o/$URI → t.r-b.o/debian/$URI # redirect debian specific requests from t.r-b.o/$URI → t.r-b.o/debian/$URI
RewriteCond /var/lib/jenkins/userContent/reproducible/debian/$1 -f RewriteCond /var/lib/jenkins/userContent/reproducible/debian/$1 -f
RewriteCond %{REQUEST_URI} ^/(static|testing|unstable|experimental|history|rb-pg|notes|issues|rbuild|logs|dbd|dbdtxt|index_.*\.html|stats_.*\.png|reproducible.*\.json).*$ RewriteCond %{REQUEST_URI} ^/(static|stretch|unstable|experimental|history|rb-pg|notes|issues|rbuild|logs|dbd|dbdtxt|index_.*\.html|stats_.*\.png|reproducible.*\.json).*$
RewriteRule ^/(.*) /debian/$1 [R=302,L] RewriteRule ^/(.*) /debian/$1 [R=302,L]
# redirect t.r-b.o/issues/$ISSUE → t.r-b.o/issues/unstable/$ISSUE # redirect t.r-b.o/issues/$ISSUE → t.r-b.o/issues/unstable/$ISSUE
...@@ -238,7 +238,7 @@ Use common-debian-service-https-redirect www.reproducible-builds.org ...@@ -238,7 +238,7 @@ Use common-debian-service-https-redirect www.reproducible-builds.org
RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond /var/lib/jenkins/userContent/reproducible/debian/rb-pkg/$2/$3/$4.html -f RewriteCond /var/lib/jenkins/userContent/reproducible/debian/rb-pkg/$2/$3/$4.html -f
RewriteRule ^/(debian/|)(unstable|testing|experimental)/([a-z0-9]+)/([a-z0-9.+-]+) /debian/rb-pkg/$2/$3/$4.html [R=302,L] RewriteRule ^/(debian/|)(unstable|stretch|experimental)/([a-z0-9]+)/([a-z0-9.+-]+) /debian/rb-pkg/$2/$3/$4.html [R=302,L]
# redirect t.r-b.o/rb-pkg/$PKG.html → t.r-b.o/rb-pkg/unstable/amd64/$PKG.html # redirect t.r-b.o/rb-pkg/$PKG.html → t.r-b.o/rb-pkg/unstable/amd64/$PKG.html
RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-f
...@@ -275,16 +275,16 @@ Use common-debian-service-https-redirect www.reproducible-builds.org ...@@ -275,16 +275,16 @@ Use common-debian-service-https-redirect www.reproducible-builds.org
RewriteCond %{REQUEST_URI} ^/(debian/|)index_all_abc.html$ RewriteCond %{REQUEST_URI} ^/(debian/|)index_all_abc.html$
RewriteRule ^/(debian/|)?(.+) /debian/unstable/amd64/$2 [R=301,L] RewriteRule ^/(debian/|)?(.+) /debian/unstable/amd64/$2 [R=301,L]
# redirect (/testing|unstable|/experimental) to (/testing|/unstable|/experimental)/index_suite_amd64_stats.html # redirect (/stretch|unstable|/experimental) to (/stretch|/unstable|/experimental)/index_suite_amd64_stats.html
# note: the missing slash in the RewriteRule is wanted to avoid a double slash # note: the missing slash in the RewriteRule is wanted to avoid a double slash
RewriteCond %{REQUEST_URI} ^/(debian/|)(testing|unstable|experimental)(/|)$ RewriteCond %{REQUEST_URI} ^/(debian/|)(stretch|unstable|experimental)(/|)$
RewriteRule ^/(debian/|)(.*) /debian/$2/index_suite_amd64_stats.html [R,L] RewriteRule ^/(debian/|)(.*) /debian/$2/index_suite_amd64_stats.html [R,L]
# redirect (/testing|unstable|/experimental)/(amd64|arm64|armhf|i386) to (/testing|/unstable|/experimental)/index_suite_(amd64|arm64|armhf|i386)_stats.html # redirect (/stretch|unstable|/experimental)/(amd64|arm64|armhf|i386) to (/stretch|/unstable|/experimental)/index_suite_(amd64|arm64|armhf|i386)_stats.html
RewriteCond %{REQUEST_URI} ^/(debian/|)(testing|unstable|experimental)/(amd64|arm64|armhf|i386)(/|)$ RewriteCond %{REQUEST_URI} ^/(debian/|)(stretch|unstable|experimental)/(amd64|arm64|armhf|i386)(/|)$
RewriteRule ^/(debian/|)([a-z0-9]+)/([a-z0-9]+) /debian/$2/index_suite_$3_stats.html [R,L] RewriteRule ^/(debian/|)([a-z0-9]+)/([a-z0-9]+) /debian/$2/index_suite_$3_stats.html [R,L]
# redirect (/(amd64|arm64|armhf|i386) to (/testing|/unstable|/experimental)/index_suite_(amd64|arm64|armhf|i386)_stats.html # redirect (/(amd64|arm64|armhf|i386) to (/stretch|/unstable|/experimental)/index_suite_(amd64|arm64|armhf|i386)_stats.html
RewriteCond %{REQUEST_URI} ^/(debian/|)(amd64|arm64|armhf|i386)(/|)$ RewriteCond %{REQUEST_URI} ^/(debian/|)(amd64|arm64|armhf|i386)(/|)$
RewriteRule ^/(debian/|)([a-z0-9]+) /debian/unstable/index_suite_$2_stats.html [R,L] RewriteRule ^/(debian/|)([a-z0-9]+) /debian/unstable/index_suite_$2_stats.html [R,L]
......
...@@ -378,11 +378,11 @@ ...@@ -378,11 +378,11 @@
- '{name}_{my_task}_{my_arch}_{my_hname}': - '{name}_{my_task}_{my_arch}_{my_hname}':
my_task: my_task:
- 'setup_pbuilder_testing': - 'setup_pbuilder_stretch':
my_description: 'Setup pbuilder for reproducible builds of packages from testing as described in https://wiki.debian.org/ReproducibleBuilds#Usage_example' my_description: 'Setup pbuilder for reproducible builds of packages from stretch as described in https://wiki.debian.org/ReproducibleBuilds#Usage_example'
my_timed: '23 7 * * *' my_timed: '23 7 * * *'
- 'setup_pbuilder_unstable': - 'setup_pbuilder_unstable':
my_description: 'Setup pbuilder for reproducible builds of packages from testing as described in https://wiki.debian.org/ReproducibleBuilds#Usage_example' my_description: 'Setup pbuilder for reproducible builds of packages from unstable as described in https://wiki.debian.org/ReproducibleBuilds#Usage_example'
my_timed: '42 7 * * *' my_timed: '42 7 * * *'
- 'setup_pbuilder_experimental': - 'setup_pbuilder_experimental':
my_description: 'Setup pbuilder for reproducible builds of packages from experimental as described in https://wiki.debian.org/ReproducibleBuilds#Usage_example' my_description: 'Setup pbuilder for reproducible builds of packages from experimental as described in https://wiki.debian.org/ReproducibleBuilds#Usage_example'
...@@ -390,8 +390,8 @@ ...@@ -390,8 +390,8 @@
- 'setup_schroot_unstable': - 'setup_schroot_unstable':
my_description: 'Setup unstable schroot for fetching source packages for the builder jobs.' my_description: 'Setup unstable schroot for fetching source packages for the builder jobs.'
my_timed: '20 1 * * *' my_timed: '20 1 * * *'
- 'setup_schroot_testing': - 'setup_schroot_stretch':
my_description: 'Setup testing schroot for fetching source packages for the builder jobs.' my_description: 'Setup stretch schroot for fetching source packages for the builder jobs.'
my_timed: '0 1 * * *' my_timed: '0 1 * * *'
- 'setup_schroot_experimental': - 'setup_schroot_experimental':
my_description: 'Setup experimental schroot for fetching source packages for the builder jobs.' my_description: 'Setup experimental schroot for fetching source packages for the builder jobs.'
...@@ -448,14 +448,14 @@ ...@@ -448,14 +448,14 @@
my_description: 'Setup schroot for running diffoscope in a unstable environment (this is needed to be able to correctly investigate haskell binaries...)' my_description: 'Setup schroot for running diffoscope in a unstable environment (this is needed to be able to correctly investigate haskell binaries...)'
my_timed: '42 0 * * *' my_timed: '42 0 * * *'
my_shell: '/srv/jenkins/bin/schroot-create.sh reproducible reproducible-unstable-diffoscope unstable diffoscope locales-all' my_shell: '/srv/jenkins/bin/schroot-create.sh reproducible reproducible-unstable-diffoscope unstable diffoscope locales-all'
- 'testing_diffoscope': - 'stretch_diffoscope':
my_description: 'Setup schroot for running diffoscope in a testing environment (this is needed to be able to correctly investigate haskell binaries...)' my_description: 'Setup schroot for running diffoscope in a stretch environment (this is needed to be able to correctly investigate haskell binaries...)'
my_timed: '23 0 * * *' my_timed: '23 0 * * *'
my_shell: '/srv/jenkins/bin/schroot-create.sh reproducible reproducible-testing-diffoscope testing diffoscope locales-all' my_shell: '/srv/jenkins/bin/schroot-create.sh reproducible reproducible-stretch-diffoscope stretch diffoscope locales-all'
- 'unstable': - 'unstable':
my_timed: '42 1 * * *' my_timed: '42 1 * * *'
my_shell: '/srv/jenkins/bin/schroot-create.sh reproducible reproducible-{my_distro} {my_distro} botch' my_shell: '/srv/jenkins/bin/schroot-create.sh reproducible reproducible-{my_distro} {my_distro} botch'
- 'testing': - 'stretch':
my_timed: '42 1 * * *' my_timed: '42 1 * * *'
- 'experimental': - 'experimental':
my_timed: '33 1 * * *' my_timed: '33 1 * * *'
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment