Skip to content
GitLab
Menu
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
Debian QA
jenkins.debian.net
Commits
cc531053
Commit
cc531053
authored
Jun 15, 2021
by
Holger Levsen
Browse files
reproducible Debian: very first stab at building and comparing live-images
Signed-off-by:
Holger Levsen
<
holger@layer-acht.org
>
parent
ca959a11
Changes
5
Hide whitespace changes
Inline
Side-by-side
README.infrastructure
View file @
cc531053
...
@@ -52,7 +52,7 @@ The nodes are used for these jobs:
...
@@ -52,7 +52,7 @@ The nodes are used for these jobs:
* osuosl171: openwrt, coreboot, netbsd
* osuosl171: openwrt, coreboot, netbsd
** is constantly online (in jenkins) now, which is not how we like it and still doesnt solve the netbsd job probs
** is constantly online (in jenkins) now, which is not how we like it and still doesnt solve the netbsd job probs
* osuosl172: openwrt, coreboot (future)
* osuosl172: openwrt, coreboot (future)
* osuosl173: debian/archlinux rebuilder#1
* osuosl173: debian/archlinux rebuilder#1
/ live-builds
* osuosl174: bwiedemann, opensuse tests
* osuosl174: bwiedemann, opensuse tests
Please note that the machines are called gcc167-174 at osuosl.org, though usually
Please note that the machines are called gcc167-174 at osuosl.org, though usually
...
...
bin/jenkins_node_wrapper.sh
View file @
cc531053
...
@@ -2,7 +2,7 @@
...
@@ -2,7 +2,7 @@
# vim: set noexpandtab:
# vim: set noexpandtab:
# Copyright (c) 2009, 2010, 2012, 2015 Peter Palfrader
# Copyright (c) 2009, 2010, 2012, 2015 Peter Palfrader
# 2015-202
0
Holger Levsen
# 2015-202
1
Holger Levsen
# 2017-2018 Mattia Rizzolo <mattia@debian.org>
# 2017-2018 Mattia Rizzolo <mattia@debian.org>
#
#
# Permission is hereby granted, free of charge, to any person obtaining
# Permission is hereby granted, free of charge, to any person obtaining
...
@@ -172,6 +172,8 @@ elif [ "$1" = "/srv/jenkins/bin/reproducible_build_archlinux_pkg.sh" ] && ( [ "$
...
@@ -172,6 +172,8 @@ elif [ "$1" = "/srv/jenkins/bin/reproducible_build_archlinux_pkg.sh" ] && ( [ "$
exec
/srv/jenkins/bin/reproducible_build_archlinux_pkg.sh
"
$2
"
"
$3
"
"
$4
"
"
$5
"
"
$6
"
;
croak
"Exec failed"
;
exec
/srv/jenkins/bin/reproducible_build_archlinux_pkg.sh
"
$2
"
"
$3
"
"
$4
"
"
$5
"
"
$6
"
;
croak
"Exec failed"
;
elif
[
"
$1
"
=
"/srv/jenkins/bin/reproducible_build_rpm.sh"
]
&&
(
[
"
$2
"
=
"1"
]
||
[
"
$2
"
=
"2"
]
)
;
then
elif
[
"
$1
"
=
"/srv/jenkins/bin/reproducible_build_rpm.sh"
]
&&
(
[
"
$2
"
=
"1"
]
||
[
"
$2
"
=
"2"
]
)
;
then
exec
/srv/jenkins/bin/reproducible_build_rpm.sh
"
$2
"
"
$3
"
"
$4
"
"
$5
"
"
$6
"
"
$7
"
;
croak
"Exec failed"
;
exec
/srv/jenkins/bin/reproducible_build_rpm.sh
"
$2
"
"
$3
"
"
$4
"
"
$5
"
"
$6
"
"
$7
"
;
croak
"Exec failed"
;
elif
[
"
$1
"
=
"reproducible_debian_live_build"
]
;
then
exec
/srv/jenkins/bin/reproducible_debian_live_build.sh
;
croak
"Exec failed"
;
elif
[
"
$1
"
=
"reproducible_compare_Debian_sha1sums"
]
;
then
elif
[
"
$1
"
=
"reproducible_compare_Debian_sha1sums"
]
;
then
exec
/srv/jenkins/bin/reproducible_compare_Debian_sha1sums.sh
;
croak
"Exec failed"
;
exec
/srv/jenkins/bin/reproducible_compare_Debian_sha1sums.sh
;
croak
"Exec failed"
;
elif
[
"
$1
"
=
"reproducible_compare_Debian_sha1sums_forward_runner"
]
;
then
elif
[
"
$1
"
=
"reproducible_compare_Debian_sha1sums_forward_runner"
]
;
then
...
...
bin/reproducible_debian_live_build.sh
0 → 100644
View file @
cc531053
#!/bin/bash
# vim: set noexpandtab:
# Copyright 2021 Holger Levsen <holger@layer-acht.org>
# released under the GPLv2
DEBUG
=
true
.
/srv/jenkins/bin/common-functions.sh
common_init
"
$@
"
# common code for tests.reproducible-builds.org
.
/srv/jenkins/bin/reproducible_common.sh
set
-e
set
-o
pipefail
# see eg http://petereisentraut.blogspot.com/2010/11/pipefail.html
output_echo
()
{
echo
"###########################################################################################"
echo
echo
-e
"
$(
date
-u
)
-
$1
"
echo
}
#
# main: follow https://wiki.debian.org/ReproducibleInstalls/LiveImages
#
# 1st build
export
LIVE_BUILD
=
$(
mktemp
-d
-t
live-build.XXXXXXXX
)
export
LB_OUTPUT
=
$(
mktemp
-t
live-build.XXXXXXXX
)
export
SOURCE_DATE_EPOCH
=
1609489883a
# why this one
# config first
lb config
--parent-mirror-bootstrap
http://deb.debian.org/debian
\
--parent-mirror-binary
http://deb.debian.org/debian
\
--security
false
\
--updates
false
\
--apt-options
"--yes -o Acquire::Check-Valid-Until=false"
\
--distribution
bullseye
\
--debian-installer
live
\
--cache-packages
false
\
2>&1 |
tee
$LB_OUTPUT
RESULT
=
$?
if
[
"
$RESULT
"
!=
"0"
]
;
then
output_echo
"Warning: lb config filed with
$RESULT
"
fi
# build
lb build |
tee
-a
$LB_OUTPUT
RESULT
=
$?
if
[
"
$RESULT
"
!=
"0"
]
;
then
output_echo
"Warning: lb config filed with
$RESULT
"
fi
# finally cleanup
lb clean
--purge
|
tee
-a
$LB_OUTPUT
RESULT
=
$?
if
[
"
$RESULT
"
!=
"0"
]
;
then
output_echo
"Warning: lb config filed with
$RESULT
"
fi
# move the image away
# do 2nd build
# do 2nd build with more customisations
# compare images
# rm images
# build other flavors
# build unstable too
# the end
rm
-f
$LIVE_BUILD
$LB_OUTPUT
output_echo
"the end."
job-cfg/reproducible.yaml
View file @
cc531053
...
@@ -625,6 +625,11 @@
...
@@ -625,6 +625,11 @@
my_timed
:
'
23
23
*
*
*'
my_timed
:
'
23
23
*
*
*'
my_shell
:
'
/srv/jenkins/bin/diffoscope_distribution_test.sh'
my_shell
:
'
/srv/jenkins/bin/diffoscope_distribution_test.sh'
my_recipients
:
'
jenkins+reproducible-changes
qa-jenkins-scm@lists.alioth.debian.org'
my_recipients
:
'
jenkins+reproducible-changes
qa-jenkins-scm@lists.alioth.debian.org'
-
'
debian_live_build'
:
my_description
:
'
Build
Debian
live
image
using
live-build'
my_timed
:
'
55
11
*
*
*'
my_hname
:
'
osuosl173'
my_shell
:
'
/srv/jenkins/bin/jenkins_master_wrapper.sh'
-
'
compare_Debian_sha1sums'
:
-
'
compare_Debian_sha1sums'
:
my_description
:
'
Compare
sha1sums
of
Debian
binary
packages
with
rebuild
ones'
my_description
:
'
Compare
sha1sums
of
Debian
binary
packages
with
rebuild
ones'
my_timed
:
'
55
23
*
*
*'
my_timed
:
'
55
23
*
*
*'
...
...
update_jdn.sh
View file @
cc531053
...
@@ -380,7 +380,8 @@ if [ -f /etc/debian_version ] ; then
...
@@ -380,7 +380,8 @@ if [ -f /etc/debian_version ] ; then
esac
esac
case
$HOSTNAME
in
case
$HOSTNAME
in
# needed for rebuilding Debian (using .buildinfo files)
# needed for rebuilding Debian (using .buildinfo files)
osuosl173-amd64
)
DEBS
=
"
$DEBS
libdpkg-perl libwww-mechanize-perl sbuild"
;;
osuosl173-amd64
)
DEBS
=
"
$DEBS
libdpkg-perl libwww-mechanize-perl sbuild"
DEBS
=
"
$DEBS
live-build"
;;
# needed for live-build
# needed for opensuse openbuildservice
# needed for opensuse openbuildservice
osuosl174-amd64
)
DEBS
=
"
$DEBS
osc obs-build qemu-kvm libjson-perl libxml-simple-perl bsdtar"
;;
osuosl174-amd64
)
DEBS
=
"
$DEBS
osc obs-build qemu-kvm libjson-perl libxml-simple-perl bsdtar"
;;
*
)
;;
*
)
;;
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment