release.txt 25 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533
  1. Notes from the Debian Stretch release
  2. =====================================
  3. configdir=${configdir:-"/srv/ftp-master.debian.org/dak/config/debian"}
  4. export SCRIPTVARS=${configdir}/vars
  5. . "${SCRIPTVARS}"
  6. . "${configdir}/dinstall.functions"
  7. umask 022
  8. xpsql() {
  9. psql "${sql_opts[@]}" "${@}"
  10. }
  11. sql() {(
  12. set -eu
  13. xpsql -qAt "${@}"
  14. )}
  15. rename-suite() {(
  16. set -xeu
  17. local oldsuite="${1:?}"
  18. local newsuite="${2:?}"
  19. archive_path=$(sql -c "SELECT path FROM archive WHERE id=(SELECT archive_id FROM suite WHERE suite_name='${oldsuite}')")
  20. cd ${archive_path:?}/dists
  21. if [[ -L ${newsuite} || -e ${newsuite} ]]; then
  22. echo "E: ${newsuite} already exists" >&2
  23. exit 1
  24. fi
  25. mv -- ${oldsuite} ${newsuite}
  26. sql -1 <<-EOT
  27. UPDATE suite
  28. SET
  29. suite_name='${newsuite}',
  30. copychanges = CASE WHEN copychanges IS NULL THEN NULL ELSE 'dists/${newsuite}' END
  31. WHERE suite_name='${oldsuite}'
  32. ;
  33. UPDATE suite
  34. SET overridesuite='${newsuite}'
  35. WHERE overridesuite='${oldsuite}'
  36. ;
  37. EOT
  38. )}
  39. rename-policy-queue() {(
  40. set -xeu
  41. oldqueue="${1:?}"
  42. newqueue="${2:?}"
  43. newpath="${3:?}"
  44. oldpath=$(sql -c "SELECT path FROM policy_queue WHERE queue_name='${oldqueue}'")
  45. if [[ -L ${newpath} || -e ${newpath} ]]; then
  46. echo "E: ${newpath} already exists" >&2
  47. exit 1
  48. fi
  49. mv -- ${oldpath:?} ${newpath}
  50. sql -c "UPDATE policy_queue SET queue_name='${newqueue}', path='${newpath}' WHERE queue_name='${oldqueue}'"
  51. )}
  52. Notes from the Debian Bullseye release
  53. ======================================
  54. Some notes from the Debian Bullseye release including some
  55. corrections. There might still be errors.
  56. export new_stable_version=11
  57. export new_stable_date='14 August 2021'
  58. export new_stable_short_date='Sat, 14 Aug 2021'
  59. export new_oldoldoldstable=jessie
  60. export new_oldoldstable=stretch
  61. export new_oldstable=buster
  62. export new_stable=bullseye
  63. export new_testing=bookworm
  64. export new_oldoldstable_key=E1CF20DDFFE4B89E802658F1E0B11894F66AEC98
  65. export new_oldoldstable_security_key=6ED6F5CB5FA6FB2F460AE88EEDA0D2388AE22BA9
  66. export new_oldstable_key=80D15823B7FD1561F9F7BCDDDC30D7C23CBBABEE
  67. export new_oldstable_security_key=5E61B217265DA9807A23C5FF4DFAB270CAA96DFA
  68. export new_stable_key=1F89983E0081FDE018F3CC9673A4F27B8DD47936
  69. export new_stable_security_key=AC530D520F2F3269F5E98313A48449044AAD5C5D
  70. export di_version=20210731
  71. sql_vars=(new_stable_version new_stable_date new_oldoldoldstable new_oldoldstable new_oldstable new_stable new_testing new_oldoldstable_key new_oldoldstable_security_key new_oldstable_key new_oldstable_security_key new_stable_key new_stable_security_key)
  72. sql_opts=()
  73. for v in ${sql_vars[@]}; do
  74. sql_opts+=(--set="${v}=${!v}")
  75. done
  76. if [[ -n "${new_oldoldoldstable}" ]]; then
  77. rename-suite {,old}oldoldstable
  78. rename-suite {,old}oldoldstable-updates
  79. # only for stretch and later:
  80. if [[ "${new_oldoldoldstable}" != "jessie" ]]; then
  81. rename-suite {,old}oldoldstable-debug
  82. fi
  83. fi
  84. # Careful! Some suites might have stable-X symlinks, but not use the
  85. # name in the database. We used to fix these symlinks later, but
  86. # sometimes the newer testing-X suite now uses the name in the
  87. # database, blocking the rename here until the (older) stable-X
  88. # symlink is fixed...
  89. rename-suite {,old}oldstable
  90. rename-suite {,old}oldstable-debug
  91. #rename-suite {,old}oldstable-updates
  92. rename-suite {,old}oldstable-proposed-updates
  93. rename-suite {,old}oldstable-proposed-updates-debug
  94. rename-suite buildd-{,old}oldstable-proposed-updates
  95. rename-suite {,old}oldstable-new
  96. rename-policy-queue oldstable-new oldoldstable-new /srv/ftp-master.debian.org/queue/o-o-p-u-new
  97. rename-suite buildd-{,old}oldstable-backports-sloppy
  98. rename-suite {,old}stable
  99. rename-suite {,old}stable-debug
  100. rename-suite {,oldstable-}proposed-updates
  101. rename-suite {,oldstable-}proposed-updates-debug
  102. rename-suite {,old}stable-new
  103. rename-suite buildd-{,oldstable-}proposed-updates
  104. rename-policy-queue oldstable-new oldoldstable-new /srv/ftp-master.debian.org/queue/o-o-p-u-new
  105. rename-policy-queue stable-new oldstable-new /srv/ftp-master.debian.org/queue/o-p-u-new
  106. rename-suite {,old}stable-backports-sloppy
  107. rename-suite {,old}stable-backports-sloppy-debug
  108. rename-suite buildd-{,old}stable-backports-sloppy
  109. rename-suite testing stable
  110. rename-suite testing-debug stable-debug
  111. rename-suite testing-proposed-updates proposed-updates
  112. rename-suite testing-proposed-updates-debug proposed-updates-debug
  113. rename-suite {testing,stable}-updates
  114. rename-suite buildd-{testing,stable}-backports-sloppy
  115. rename-suite buildd-{testing-,}proposed-updates
  116. UPDATE SUITES:
  117. begin;
  118. -- update suites:
  119. update suite set
  120. version = concat(:'new_stable_version', '.0'),
  121. description = concat('Debian ', :'new_stable_version', '.0 Released ', :'new_stable_date'),
  122. changelog = null, overrideprocess = false, overrideorigin = null, allowcsset = false, announce = array['debian-changes@lists.debian.org'], validtime = 0 where codename = :'new_stable';
  123. update suite set
  124. version = concat(:'new_stable_version', '.0'),
  125. description = concat('Debian ', :'new_stable_version', '.0 Released ', :'new_stable_date', ' - Debug Information'),
  126. allowcsset = false, validtime = 0 where codename = concat(:'new_stable', '-debug');
  127. update suite set copychanges = 'dists/oldoldstable-proposed-updates', validtime = 0 where codename = concat(:'new_oldoldstable', '-proposed-updates');
  128. update suite set release_suite = 'oldoldstable-updates', validtime = 0 where codename = concat(:'new_oldoldstable', '-updates');
  129. update suite set copychanges = 'dists/oldstable-proposed-updates', overridesuite = 'oldstable' where codename = concat(:'new_oldstable', '-proposed-updates');
  130. update suite set release_suite = 'oldstable-updates' where codename = concat(:'new_oldstable', '-updates');
  131. update suite set
  132. version = concat(:'new_stable_version', '-updates'),
  133. description = concat('Debian ', :'new_stable_version', ' - Proposed Updates'),
  134. copychanges = 'dists/proposed-updates', overridesuite = 'stable', announce = array['debian-changes@lists.debian.org'] where codename = concat(:'new_stable', '-proposed-updates');
  135. update suite set release_suite = 'stable-updates' where codename = concat(:'new_stable', '-updates');
  136. update suite set
  137. version = concat(:'new_stable_version', '-updates'),
  138. description = concat('Debian ', :'new_stable_version', ' - Proposed Updates - Debug Information')
  139. where codename = concat(:'new_stable', '-proposed-updates-debug');
  140. update suite set
  141. version = concat(:'new_stable_version', '-updates'),
  142. description = concat('Debian ', :'new_stable_version', ' - Updates')
  143. where codename = concat(:'new_stable', '-updates');
  144. update suite set untouchable = true where codename in (:'new_oldoldstable', :'new_stable', concat(:'new_stable', '-debug'), concat(:'new_oldoldstable', '-proposed-updates'), concat(:'new_oldoldstable', '-updates'));
  145. -- remember to switch to new_stable_key later...
  146. update suite set signingkeys = ARRAY[:'new_oldoldstable_key', :'new_oldstable_key'] WHERE suite_name LIKE 'buildd-%' OR suite_name LIKE concat(:'new_stable', '%') OR suite_name IN ('stable', 'stable-debug', 'proposed-updates', 'proposed-updates-debug', 'experimental', 'experimental-debug', 'unstable', 'unstable-debug', 'unstable-data');
  147. update suite set signingkeys = ARRAY[:'new_oldoldstable_key', :'new_oldstable_key'] WHERE suite_name LIKE 'oldstable%' OR suite_name LIKE concat(:'new_oldstable', '%');
  148. commit;
  149. MOVE STUFF AROUND:
  150. cd /srv/ftp-master.debian.org/ftp/dists
  151. rm oldstable-backports oldstable-proposed-updates oldstable-updates
  152. ln -sTf ${new_oldstable}-backports oldstable-backports
  153. ln -sTf ${new_oldstable}-proposed-updates oldstable-proposed-updates
  154. ln -sTf ${new_oldstable}-updates oldstable-updates
  155. rm stable-backports stable-proposed-updates stable-updates
  156. ln -sTf ${new_stable}-backports stable-backports
  157. ln -sTf ${new_stable}-proposed-updates stable-proposed-updates
  158. ln -sTf ${new_stable}-updates stable-updates
  159. rm testing testing-proposed-updates testing-updates
  160. ln -sTf ${new_testing} testing
  161. ln -sTf ${new_testing}-proposed-updates testing-proposed-updates
  162. ln -sTf ${new_testing}-updates testing-updates
  163. ln -sT ${new_stable} Debian${new_stable_version}.0
  164. # update README files
  165. cd ${ftpdir}
  166. sensible-editor README, README.html, dists/README
  167. # remove pdiffs for new stable
  168. cd ${base}/archive/debian-debug
  169. rm -r dists/${new_stable}-debug/*/*.diff dists/${new_stable}-debug/*/*/*.diff
  170. cd ${ftpdir}
  171. rm -r dists/${new_stable}/*/*.diff dists/${new_stable}/*/*/*.diff
  172. rm dists/${new_stable}/ChangeLog*
  173. # add new dists/${new_stable}/ChangeLog:
  174. cd /srv/ftp-master.debian.org/ftp/dists/${new_stable}
  175. cat >ChangeLog <<EOT
  176. =========================================
  177. ${new_stable_short_date} - Debian ${new_stable_version}.0 released
  178. =========================================
  179. EOT
  180. # check win32-loader!
  181. # - even copy in testing/ might be outdated.
  182. cd /srv/ftp-master.debian.org/public/incoming.debian.org/web/debian-buildd/dists
  183. rm buildd-${new_stable}-proposed-updates buildd-${new_oldstable}-proposed-updates
  184. mv buildd-proposed-updates buildd-${new_oldstable}-proposed-updates
  185. mv buildd-testing-proposed-updates buildd-${new_stable}-proposed-updates
  186. ln -sT buildd-${new_oldstable}-proposed-updates buildd-oldstable-proposed-updates
  187. ln -sT buildd-${new_stable}-proposed-updates buildd-proposed-updates
  188. D-I CLEANUP:
  189. cd /srv/ftp-master.debian.org/ftp/dists/${new_stable}/main
  190. morgue=/srv/ftp-master.debian.org/morgue/d-i
  191. for arch in installer-*; do
  192. for version in ${arch}/20*; do
  193. case ${version} in
  194. */${di_version}) ;;
  195. *) mv -nv -- ${version} ${morgue}/${arch}/ ;;
  196. esac
  197. done
  198. done
  199. INDICES:
  200. suite=stable
  201. dak generate-packages-sources2 --force -s ${suite},${suite}-debug
  202. dak contents generate -f -s ${suite} -a ftp-master
  203. for suite in stable stable-debug oldstable oldstable-debug oldoldstable oldoldstable-debug ${new_oldoldstable}-updates; do
  204. dak generate-releases -f -s ${suite}
  205. done
  206. # rm InRelease for stretch
  207. rm -- $(realpath "${ftpdir}/dists/stretch/InRelease") $(realpath "${base}/archive/debian-debug/dists/stretch-debug/InRelease")
  208. rm -- "${ftpdir}/dists/stretch/InRelease" "${base}/archive/debian-debug/dists/stretch-debug/InRelease"
  209. for suite in oldoldstable oldoldstable-debug ${new_oldoldstable}-updates oldstable oldstable-debug stable stable-debug; do
  210. ${scriptsdir}/sync-release ${suite}
  211. done
  212. # Add signatures from release team
  213. # mirror push (CD MIRROR ONLY!)
  214. (
  215. export SCRIPTVARS=${configdir}/vars
  216. . "${SCRIPTVARS}"
  217. . "${configdir}/common"
  218. . "${configdir}/dinstall.functions"
  219. umask 022
  220. mirror
  221. mirrorpush-release
  222. )
  223. # switch to new signing key:
  224. update suite set signingkeys = ARRAY[:'new_oldstable_key', :'new_stable_key'] where signingkeys is not null;
  225. ${NEW_STABLE}-R0:
  226. dak admin suite add ${new_stable}-r0 '' description='Extraneous packages/sources required for GPL compliance' origin=Debian label=Debian codename=${new_stable}-r0 accept_source_uploads=false accept_binary_uploads=false archive=ftp-master
  227. dak admin s-c add ${new_stable}-r0 main contrib non-free
  228. dak admin s-a add ${new_stable}-r0 $(dak admin s-a list-arch stable)
  229. dak control-suite -l stable | grep '^debian-installer ' | dak control-suite -a ${new_stable}-r0
  230. dak control-suite -l ${new_stable}-r0
  231. begin;
  232. update suite set untouchable=true where codename=concat(:'new_stable', '-r0');
  233. commit;
  234. POLICY QUEUES:
  235. dak admin suite add stable-new '' codename=${new_stable}-new accept_source_uploads=false accept_binary_uploads=false archive=policy
  236. begin;
  237. insert into policy_queue (queue_name, path, change_perms, suite_id) values ('stable-new', '/srv/ftp-master.debian.org/queue/p-u-new', '0644', (select id from suite where codename=concat(:'new_stable', '-new')));
  238. update suite set policy_queue_id = (select id from policy_queue where queue_name = 'stable-new') where codename = concat(:'new_stable', '-proposed-updates');
  239. commit;
  240. dak admin s-c add stable-new main contrib non-free
  241. dak admin s-a add stable-new source all $(dak admin s-a list-arch stable)
  242. NEW TESTING:
  243. dak admin suite add testing '' origin=Debian label=Debian codename=${new_testing} description='Debian x.y Testing distribution - Not Released' accept_source_uploads=false accept_binary_uploads=false allowcsset=True archive=ftp-master changelog_url='https://metadata.ftp-master.debian.org/changelogs/@CHANGEPATH@_changelog'
  244. dak admin s-c add testing main contrib non-free
  245. dak admin s-a add testing source all $(dak admin s-a list-arch stable)
  246. dak admin suite add testing-debug '' origin=Debian label='Debian debug' codename=${new_testing}-debug description='Debian x.y Testing distribution - Not Released - Debug Information' accept_source_uploads=false accept_binary_uploads=false allowcsset=True archive=debian-debug
  247. dak admin s-c add testing-debug main contrib non-free
  248. dak admin s-a add testing-debug source all $(dak admin s-a list-arch stable)
  249. dak admin suite add testing-proposed-updates '' origin=Debian label=Debian codename=${new_testing}-proposed-updates description='Debian x.y Testing distribution - Proposed Updates - Not Released' allowcsset=True archive=ftp-master
  250. dak admin s-c add testing-proposed-updates main contrib non-free
  251. dak admin s-a add testing-proposed-updates source all $(dak admin s-a list-arch stable)
  252. dak admin suite add testing-proposed-updates-debug '' origin=Debian label='Debian debug' codename=${new_testing}-proposed-updates-debug description='Debian x.y Testing - Proposed Updates - Not Released - Debug Information' accept_source_uploads=false accept_binary_uploads=false archive=debian-debug
  253. dak admin s-c add testing-proposed-updates-debug main contrib non-free
  254. dak admin s-a add testing-proposed-updates-debug source all $(dak admin s-a list-arch stable)
  255. dak admin suite add testing-updates '' origin=Debian label=Debian codename=${new_testing}-updates description='Debian x.y Testing distribution Updates - Not Released' accept_source_uploads=false accept_binary_uploads=false allowcsset=True archive=ftp-master
  256. dak admin s-c add testing-updates main contrib non-free
  257. dak admin s-a add testing-updates source all $(dak admin s-a list-arch stable)
  258. for c in main contrib non-free; do
  259. for t in deb dsc udeb; do
  260. dak control-overrides -s stable -t ${t} -c ${c} -l | dak control-overrides -s testing -t ${t} -c ${c} --set
  261. done
  262. done
  263. time dak update-suite stable testing
  264. # update-suite doesn't work for testing-debug (as there are no source packages)
  265. #time dak update-suite stable-debug testing-debug
  266. begin;
  267. insert into bin_associations (suite, bin)
  268. select
  269. (select id from suite where codename = concat(:'new_testing', '-debug')) as suite,
  270. bin
  271. from bin_associations
  272. where suite = (select id from suite where codename = concat(:'new_stable', '-debug'));
  273. commit;
  274. begin;
  275. update suite set changelog = concat('dists/', :'new_testing', '/ChangeLog'), overrideprocess=true, overrideorigin = 'unstable' where codename = :'new_testing';
  276. update suite set announce=array['debian-testing-changes@lists.debian.org'] where codename in (:'new_testing', concat(:'new_testing', '-proposed-updates'));
  277. update suite set overridesuite = 'testing' where codename in (:'new_testing', concat(:'new_testing', '-proposed-updates'), concat(:'new_testing', '-updates'));
  278. update suite set signingkeys = array[:'new_oldstable_key', :'new_stable_key'], separate_contents_architecture_all=true where codename in (:'new_testing', concat(:'new_testing', '-debug'), concat(:'new_testing', '-proposed-updates'), concat(:'new_testing', '-proposed-updates-debug'), concat(:'new_testing', '-updates'));
  279. update suite set debugsuite_id = (select id from suite where codename = concat(:'new_testing', '-debug')) where codename = :'new_testing';
  280. update suite set debugsuite_id = (select id from suite where codename = concat(:'new_testing', '-proposed-updates-debug')) where codename = concat(:'new_testing', '-proposed-updates');
  281. update suite set indices_compression = array['xz'], byhash=true, checksums=array['sha256'] where suite_name in ('testing-debug', 'testing-proposed-updates-debug', 'buildd-testing-proposed-updates', 'testing-proposed-updates', 'testing-updates');
  282. update suite set indices_compression = array['gzip', 'xz'], byhash=true, checksums=array['md5sum', 'sha256'] where suite_name = 'testing';
  283. commit;
  284. dak external-overrides copy unstable testing
  285. dak admin s add-build-queue testing-proposed-updates buildd-testing-proposed-updates buildd-${new_testing}-proposed-updates build-queues
  286. cd /srv/ftp-master.debian.org/public/incoming.debian.org/web/debian-buildd/dists
  287. mkdir buildd-${new_testing}-proposed-updates
  288. ln -sT buildd-${new_testing}-proposed-updates buildd-testing-proposed-updates
  289. MOVE MOVING AROUND:
  290. cd /srv/ftp-master.debian.org/queue
  291. mv oldstable-proposed-updates oldoldstable-proposed-updates
  292. mv proposed-updates oldstable-proposed-updates
  293. mkdir -p p-u-new/COMMENTS proposed-updates
  294. V-C:
  295. dak admin v-c add testing-proposed-updates Enhances testing
  296. dak admin v-c add testing-proposed-updates MustBeOlderThan experimental
  297. dak admin v-c add testing-proposed-updates MustBeNewerThan stable
  298. dak admin v-c add testing-proposed-updates MustBeNewerThan oldstable
  299. dak admin v-c add testing-proposed-updates MustBeNewerThan oldoldstable
  300. dak admin v-c add testing-updates Enhances testing
  301. dak admin v-c add testing-proposed-updates MustBeNewerThan testing
  302. dak admin v-c add testing-updates MustBeNewerThan testing
  303. dak admin v-c add testing-updates MustBeOlderThan experimental
  304. dak admin v-c add testing-updates MustBeNewerThan stable
  305. dak admin v-c add testing-updates MustBeNewerThan oldstable
  306. dak admin v-c add testing-updates MustBeNewerThan oldoldstable
  307. dak admin v-c add unstable MustBeNewerThan testing
  308. dak admin v-c add experimental MustBeNewerThan testing
  309. # copy d-i to new testing (so same d-i in stable, testing, unstable)
  310. dak copy-installer ${di_version:?}
  311. # backports
  312. dak admin suite add stable-backports-sloppy '' origin="Debian Backports" label='Debian Backports' codename=${new_stable}-backports-sloppy description="Debian ${new_stable_version} - Sloppy Backports" archive=ftp-master
  313. dak admin suite add stable-backports-sloppy-debug '' origin="Debian Backports" label='Debian Backports debug' codename=${new_stable}-backports-sloppy-debug description="Debian ${new_stable_version} - Sloppy Backports - Debug Information" archive=debian-debug
  314. dak admin suite add testing-backports '' origin="Debian Backports" label='Debian Backports' codename=${new_testing}-backports description='Debian X.Y - Backports' archive=ftp-master
  315. dak admin suite add testing-backports-debug '' origin="Debian Backports" label='Debian Backports debug' codename=${new_testing}-backports-debug description='Debian X.Y - Backports - Debug Information' archive=debian-debug
  316. configure-backports-suite() {
  317. local suite=${1:?}
  318. local reference=${2:?}
  319. dak admin s-c add ${suite} main contrib non-free
  320. dak admin s-a add ${suite} source all $(dak admin s-a list-arch ${reference})
  321. dak admin suite-config set ${suite} notautomatic=true butautomaticupgrades=true accept_source_uploads=false accept_binary_uploads=false close_bugs=false
  322. }
  323. for suite in stable-backports-sloppy stable-backports-sloppy-debug; do
  324. configure-backports-suite ${suite} ${new_stable}
  325. done
  326. for suite in testing-backports testing-backports-debug; do
  327. configure-backports-suite ${suite} ${new_testing}
  328. done
  329. cd ${ftpdir}/dists
  330. ln -sT ${new_stable}-backports-sloppy stable-backports-sloppy
  331. ln -sT ${new_testing}-backports testing-backports
  332. dak admin s add-build-queue stable-backports-sloppy buildd-stable-backports-sloppy buildd-${new_stable}-backports-sloppy build-queues
  333. dak admin s add-build-queue testing-backports buildd-testing-backports buildd-${new_testing}-backports build-queues
  334. begin;
  335. update suite set
  336. description = concat('Debian ', :'new_stable', ' - Backports')
  337. where codename = concat(:'new_stable', '-backports');
  338. update suite set
  339. description = concat('Debian ', :'new_stable', ' - Backports - Debug Information')
  340. where codename = concat(:'new_stable', '-backports-debug');
  341. update suite set
  342. debugsuite_id = (select id from suite where codename=concat(:'new_stable', '-backports-sloppy-debug')),
  343. policy_queue_id = (select id from policy_queue where queue_name = 'backports-policy')
  344. where codename=concat(:'new_stable', '-backports-sloppy');
  345. update suite set debugsuite_id = (select id from suite where codename=concat(:'new_testing', '-backports-debug')) where codename=concat(:'new_testing', '-backports');
  346. update suite set
  347. announce=array['debian-backports-changes@lists.debian.org'],
  348. indices_compression=array['xz'],
  349. i18n_compression=array['xz'],
  350. byhash=true,
  351. checksums=array['sha256'],
  352. new_queue_id=10,
  353. changelog_url='https://metadata.ftp-master.debian.org/changelogs/@CHANGEPATH@_changelog',
  354. separate_contents_architecture_all=true,
  355. signingkeys=ARRAY[:'new_oldstable_key', :'new_stable_key'],
  356. close_bugs=false
  357. where codename in (
  358. concat(:'new_stable', '-backports-sloppy'), concat(:'new_testing', '-backports'),
  359. concat(:'new_stable', '-backports-sloppy-debug'), concat(:'new_testing', '-backports-debug'),
  360. concat('buildd-', :'new_stable', '-backports-sloppy'), concat('buildd-', :'new_testing', '-backports'));
  361. insert into suite_permission (suite_id, role)
  362. select id, 'backports' from suite
  363. where codename in (concat(:'new_stable', '-backports-sloppy'), concat(:'new_testing', '-backports'));
  364. commit;
  365. dak init-dirs
  366. for s in ${new_oldstable}-backports-sloppy{,-debug} ${new_stable}-backports{,-debug} ${new_testing}-backports{,-debug}; do
  367. dak generate-packages-sources2 -s ${s}
  368. done
  369. FINISH:
  370. for s in testing testing-proposed-updates testing-updates; do
  371. dak generate-packages-sources2 -s ${s}
  372. dak contents generate -s ${s} -a ftp-master
  373. done
  374. dak generate-releases -a ftp-master
  375. dak generate-packages-sources2 -s testing-debug
  376. dak generate-releases -s testing-debug
  377. dak generate-packages-sources2 -a build-queues
  378. dak generate-releases -a build-queues
  379. ########################################################################
  380. # On security-master:
  381. rename-suite {,old}oldoldstable
  382. rename-suite {,old}oldstable
  383. rename-suite {,old}stable
  384. rename-suite {testing,stable}-security
  385. rename-suite {,old}oldstable-debug
  386. rename-suite {,old}stable-debug
  387. rename-suite {testing,stable}-security-debug stable-debug
  388. rename-suite buildd-{,old}oldoldstable
  389. rename-suite buildd-{,old}oldstable
  390. rename-suite buildd-{,old}stable
  391. rename-suite buildd-{testing,stable}-security
  392. begin;
  393. update suite set signingkeys = array[:'new_oldstable_security_key', :'new_stable_security_key'] where suite_name in ('oldstable', 'oldstable-debug', 'buildd-oldstable', 'stable-security', 'stable-security-debug', 'buildd-stable-security');
  394. update suite set indices_compression=array['xz'], i18n_compression=array['xz'], checksums=array['sha256'], byhash=true where suite_name in ('buildd-stable-security', 'stable-security-debug', 'stable-security');
  395. update suite set version = :'new_stable_version', description = concat('Debian ', :'new_stable_version', ' - Security Updates') where suite_name = 'stable-security';
  396. update suite set version = :'new_stable_version', description = concat('Debian ', :'new_stable_version', ' - Security Updates - Debug Information') where suite_name = 'stable-security-debug';
  397. commit;
  398. dak admin suite add testing-security '' origin=Debian label=Debian-Security codename=${new_testing:?}-security description='Debian x.y Testing - Security Updates - Not Released' accept_source_uploads=false accept_binary_uploads=false archive=security
  399. dak admin suite add testing-security-debug '' origin=Debian label="Debian-Security debug" codename=${new_testing:?}-security-debug description='Debian x.y Testing - Security Updates - Debug Information - Not Released' accept_source_uploads=false accept_binary_uploads=false archive=debian-security-debug
  400. for suite in testing-security testing-security-debug; do
  401. dak admin s-c add ${suite} updates/{main,contrib,non-free}
  402. dak admin s-a add ${suite} source all $(dak admin s-a list-arch stable-security)
  403. done
  404. dak admin s add-build-queue testing-security buildd-testing-security buildd-${new_testing:?}-security build-queues
  405. begin;
  406. update suite set indices_compression=array['xz'], i18n_compression=array['xz'], checksums=array['sha256'], byhash=true, signingkeys = array[:'new_oldstable_security_key', :'new_stable_security_key'] where suite_name in ('testing-security', 'testing-security-debug', 'buildd-testing-security');
  407. update suite set
  408. debugsuite_id = (select id from suite where suite_name = 'testing-security-debug'),
  409. policy_queue_id = (select id from policy_queue where queue_name = 'embargoed')
  410. where suite_name = 'testing-security';
  411. commit;
  412. cd ${ftpdir}/dists
  413. mkdir ${new_testing}-security
  414. ln -sT ${new_testing}-security testing-security
  415. ln -sT . ${new_testing}-security/updates
  416. cd /srv/security-master.debian.org/build-queues/dists
  417. mkdir buildd-${new_testing}-security
  418. ln -sT buildd-${new_testing}-security buildd-testing-security
  419. ln -sT . buildd-${new_testing}-security/updates
  420. cd /srv/security-master.debian.org/archive/debian-security-debug/dists
  421. mkdir ${new_testing}-security-debug
  422. ln -sT ${new_testing}-security-debug testing-security-debug
  423. ln -sT . ${new_testing}-security-debug/updates
  424. for suite in testing-security buildd-testing-security; do
  425. dak generate-packages-sources2 -s ${suite}
  426. dak generate-releases -s ${suite}
  427. done