Filip Pytloun | 8bfd2bf | 2015-10-06 16:28:32 +0200 | [diff] [blame] | 1 | {%- from "jenkins/map.jinja" import slave with context %} |
| 2 | {%- if slave.pbuilder is defined %} |
| 3 | |
| 4 | {%- if slave.pbuilder.mirrorsite is defined %} |
| 5 | MIRRORSITE="{{ slave.pbuilder.mirrorsite }}" |
| 6 | {%- endif %} |
| 7 | |
Filip Pytloun | c561e90 | 2016-02-24 18:23:42 +0100 | [diff] [blame] | 8 | {%- if slave.pbuilder.othermirror is defined %} |
Filip Pytloun | c23be27 | 2016-02-24 18:27:57 +0100 | [diff] [blame] | 9 | OTHERMIRROR="deb{% if slave.pbuilder.othermirror.get('trusted', True) %} [trusted=yes]{% endif %} {{ slave.pbuilder.othermirrror.url }} {{ slave.pbuilder.othermirror.dist }} {{ slave.pbuilder.othermirror.components|join(' ') }}" |
Filip Pytloun | c561e90 | 2016-02-24 18:23:42 +0100 | [diff] [blame] | 10 | {%- endif %} |
| 11 | |
Filip Pytloun | 8bfd2bf | 2015-10-06 16:28:32 +0200 | [diff] [blame] | 12 | {%- if slave.pbuilder.components is defined %} |
Filip Pytloun | 4ed2b9b | 2016-02-23 13:29:35 +0100 | [diff] [blame] | 13 | COMPONENTS="{{ slave.pbuilder.components|join(' ') }}" |
Filip Pytloun | 8bfd2bf | 2015-10-06 16:28:32 +0200 | [diff] [blame] | 14 | {%- endif %} |
| 15 | |
| 16 | {%- set keyring = slave.pbuilder.get('keyring', '/etc/apt/trusted.gpg') %} |
| 17 | DEBOOTSTRAPOPTS=(${DEBOOTSTRAPOPTS[@]} "--keyring={{ keyring }}") |
| 18 | APTKEYRINGS=(${APTKEYRINGS[@]} "{{ keyring }}") |
| 19 | |
| 20 | {%- if slave.pbuilder.aptcache is defined %} |
| 21 | APTCACHE="{{ slave.pbuilder.aptcache }}" |
| 22 | {%- endif %} |
| 23 | |
| 24 | {%- if slave.pbuilder.aptcachehardlink is defined %} |
| 25 | APTCACHEHARDLINK="{{ 'yes' if slave.pbuilder.aptcachehardlink else 'no' }}" |
| 26 | {%- endif %} |
| 27 | |
| 28 | {%- if slave.pbuilder.buildplace is defined %} |
| 29 | BUILDPLACE="{{ slave.pbuilder.buildplace }}" |
| 30 | {%- endif %} |
| 31 | |
| 32 | {%- if slave.pbuilder.buildresult is defined %} |
| 33 | BUILDRESULT="{{ slave.pbuilder.buildresult }}" |
| 34 | {%- endif %} |
| 35 | |
| 36 | {%- if slave.pbuilder.ccachedir is defined %} |
| 37 | CCACHEDIR="{{ slave.pbuilder.ccachedir }}" |
| 38 | {%- endif %} |
| 39 | |
| 40 | {%- if slave.pbuilder.usenetwork is defined %} |
| 41 | USENETWORK="{{ 'yes' if slave.pbuilder.usenetwork else 'no' }}" |
| 42 | {%- endif %} |
| 43 | |
Filip Pytloun | e240bfa | 2016-02-23 12:52:12 +0100 | [diff] [blame] | 44 | BINDMOUNTS="/var/cache/pbuilder/build" |
| 45 | |
Filip Pytloun | 8bfd2bf | 2015-10-06 16:28:32 +0200 | [diff] [blame] | 46 | {%- if slave.pbuilder.parallel is defined %} |
Filip Pytloun | 8bfd2bf | 2015-10-06 16:28:32 +0200 | [diff] [blame] | 47 | {%- if slave.pbuilder.parallel %} |
| 48 | {# Automatically set jobs to no. of cpus #} |
| 49 | JOBS=$(grep -c processor /proc/cpuinfo) |
| 50 | {%- else %} |
| 51 | JOBS={{ slave.pbuilder.parallel }} |
| 52 | {%- endif %} |
| 53 | |
| 54 | DEB_BUILD_OPTIONS="parallel=${JOBS} $DEB_BUILD_OPTIONS" |
Filip Pytloun | 8bfd2bf | 2015-10-06 16:28:32 +0200 | [diff] [blame] | 55 | {%- endif %} |
| 56 | |
Filip Pytloun | 07793d5 | 2016-06-14 15:09:40 +0200 | [diff] [blame] | 57 | {%- if slave.pbuilder.get('eatmydata', False) %} |
| 58 | EXTRAPACKAGES="$EXTRAPACKAGES eatmydata" |
| 59 | export LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+"$LD_LIBRARY_PATH:"}/usr/lib/libeatmydata |
| 60 | export LD_PRELOAD="${LD_PRELOAD:+$LD_PRELOAD:}libeatmydata.so" |
| 61 | {%- endif %} |
| 62 | |
Filip Pytloun | 4ed2b9b | 2016-02-23 13:29:35 +0100 | [diff] [blame] | 63 | {%- for os, distribution in slave.pbuilder.get('os', {}).iteritems() %} |
| 64 | if [ "$OS" == "{{ os }}" ]; then |
| 65 | {%- for dist_name, dist in distribution.iteritems() %} |
| 66 | if [ "$DIST" == "{{ dist_name }}" ]; then |
| 67 | DISTRIBUTION="$DIST" |
| 68 | MIRRORSITE="{{ dist.mirrorsite }}" |
Filip Pytloun | 07793d5 | 2016-06-14 15:09:40 +0200 | [diff] [blame] | 69 | |
Filip Pytloun | c561e90 | 2016-02-24 18:23:42 +0100 | [diff] [blame] | 70 | {%- if dist.othermirror is defined %} |
Filip Pytloun | c23be27 | 2016-02-24 18:27:57 +0100 | [diff] [blame] | 71 | OTHERMIRROR="deb{% if dist.othermirror.get('trusted', True) %} [trusted=yes]{% endif %} {{ dist.othermirror.url }} {{ dist.othermirror.get('dist', dist_name) }} {{ dist.othermirror.components|join(' ') }}" |
Filip Pytloun | c561e90 | 2016-02-24 18:23:42 +0100 | [diff] [blame] | 72 | {%- endif %} |
Filip Pytloun | 07793d5 | 2016-06-14 15:09:40 +0200 | [diff] [blame] | 73 | |
Filip Pytloun | 4ed2b9b | 2016-02-23 13:29:35 +0100 | [diff] [blame] | 74 | COMPONENTS="{{ dist.components|join(' ') }}" |
Filip Pytloun | 07793d5 | 2016-06-14 15:09:40 +0200 | [diff] [blame] | 75 | |
Filip Pytloun | 4ed2b9b | 2016-02-23 13:29:35 +0100 | [diff] [blame] | 76 | {%- if dist.keyring is defined %} |
| 77 | DEBOOTSTRAPOPTS=(${DEBOOTSTRAPOPTS[@]} "--keyring={{ dist.keyring }}") |
| 78 | APTKEYRINGS=(${APTKEYRINGS[@]} "{{ dist.keyring }}") |
| 79 | {%- endif %} |
| 80 | ARCH="${ARCH:-{{ dist.get('arch', '$(dpkg --print-architecture)') }}}" |
Filip Pytloun | 07793d5 | 2016-06-14 15:09:40 +0200 | [diff] [blame] | 81 | |
Filip Pytloun | 4ed2b9b | 2016-02-23 13:29:35 +0100 | [diff] [blame] | 82 | {%- if dist.extrapackages is defined %} |
| 83 | EXTRAPACKAGES="$EXTRAPACKAGES {{ dist.extrapackages|join(' ') }}" |
| 84 | {%- endif %} |
| 85 | |
Filip Pytloun | 07793d5 | 2016-06-14 15:09:40 +0200 | [diff] [blame] | 86 | {%- if dist.get('eatmydata', False) %} |
| 87 | EXTRAPACKAGES="$EXTRAPACKAGES eatmydata" |
| 88 | export LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+"$LD_LIBRARY_PATH:"}/usr/lib/libeatmydata |
| 89 | export LD_PRELOAD="${LD_PRELOAD:+$LD_PRELOAD:}libeatmydata.so" |
| 90 | {%- endif %} |
| 91 | |
Filip Pytloun | 4ed2b9b | 2016-02-23 13:29:35 +0100 | [diff] [blame] | 92 | NAME="${OS}-${DIST}-${ARCH}" |
| 93 | BASETGZ="/var/cache/pbuilder/${NAME}-base.tgz" |
| 94 | BUILDRESULT="/var/cache/pbuilder/${NAME}/result/" |
| 95 | APTCACHE="/var/cache/pbuilder/${NAME}/aptcache/" |
Filip Pytloun | 1b38503 | 2016-03-04 16:43:18 +0100 | [diff] [blame] | 96 | BASEPATH="/var/cache/pbuilder/${NAME}-base.cow" |
Filip Pytloun | 4ed2b9b | 2016-02-23 13:29:35 +0100 | [diff] [blame] | 97 | fi |
| 98 | {%- endfor %} |
| 99 | fi |
| 100 | {%- endfor %} |
| 101 | |
Filip Pytloun | e240bfa | 2016-02-23 12:52:12 +0100 | [diff] [blame] | 102 | ARCH="${ARCH:-{{ slave.pbuilder.get('arch', '$(dpkg --print-architecture)') }}}" |
| 103 | |
| 104 | if [ "$ARCH" == "armel" ] && [ "$(dpkg --print-architecture)" != "armel" ]; then |
| 105 | DEBOOTSTRAP="qemu-debootstrap" |
| 106 | fi |
| 107 | if [ "$ARCH" == "armhf" ] && [ "$(dpkg --print-architecture)" != "armhf" ]; then |
| 108 | DEBOOTSTRAP="qemu-debootstrap" |
| 109 | fi |
Filip Pytloun | 9d149bf | 2016-03-14 17:04:45 +0100 | [diff] [blame] | 110 | if [ "$ARCH" == "arm64" ] && [ "$(dpkg --print-architecture)" != "arm64" ]; then |
| 111 | DEBOOTSTRAP="qemu-debootstrap" |
| 112 | fi |
Filip Pytloun | e240bfa | 2016-02-23 12:52:12 +0100 | [diff] [blame] | 113 | |
| 114 | DEBOOTSTRAPOPTS=("${DEBOOTSTRAPOPTS[@]}" "--arch=$ARCH") |
| 115 | |
Filip Pytloun | 8bfd2bf | 2015-10-06 16:28:32 +0200 | [diff] [blame] | 116 | {%- endif %} |
Filip Pytloun | 9d149bf | 2016-03-14 17:04:45 +0100 | [diff] [blame] | 117 | |
| 118 | {#- |
| 119 | vim: syntax=jinja |
| 120 | -#} |