Loading TODO +2 −0 Original line number Diff line number Diff line Loading @@ -155,6 +155,8 @@ See link:https://jenkins.debian.net/userContent/about.html["about jenkins.debian === Debian reproducible builds * stop testing stretch while preserving old results ** TODO: remove special casing of stretch in scheduler... * get rid off "set -x # # to debug diffoscoppe/schroot problems" ** add check if package to be build has been blacklisted since scheduling and abort ** on SIGTERM, also cleanup on remote build nodes there! (via ssh &) Loading bin/reproducible_scheduler.py +6 −22 Original line number Diff line number Diff line Loading @@ -2,7 +2,7 @@ # -*- coding: utf-8 -*- # # Copyright © 2015-2018 Mattia Rizzolo <mattia@mapreri.org> # Copyright © 2015-2019 Holger Levsen <holger@layer-acht.org> # Copyright © 2015-2020 Holger Levsen <holger@layer-acht.org> # Based on reproducible_scheduler.sh © 2014-2015 Holger Levsen <holger@layer-acht.org> # Licensed under GPL-2 # Loading Loading @@ -73,28 +73,24 @@ MAXIMA = {'amd64': 2000, 'i386': 1600, 'arm64': 2000, 'armhf': 1800} LIMITS = { 'untested': { 'amd64': { 'stretch': {'*': 255}, 'buster': {'*': 255}, 'bullseye': {'*': 255}, 'unstable': {'*': 255}, 'experimental': {'*': 255}, }, 'i386': { 'stretch': {'*': 255}, 'buster': {'*': 255}, 'bullseye': {'*': 255}, 'unstable': {'*': 255}, 'experimental': {'*': 255}, }, 'arm64': { 'stretch': {'*': 255}, 'buster': {'*': 255}, 'bullseye': {'*': 255}, 'unstable': {'*': 255}, 'experimental': {'*': 255}, }, 'armhf': { 'stretch': {'*': 255}, 'buster': {'*': 255}, 'bullseye': {'*': 255}, 'unstable': {'*': 255}, Loading @@ -103,28 +99,24 @@ LIMITS = { }, 'new': { 'amd64': { 'stretch': {1: (1000, 500), 2: (1500, 750), '*': 100}, 'buster': {1: (1000, 500), 2: (1500, 750), '*': 100}, 'bullseye': {1: (1000, 500), 2: (1500, 750), '*': 150}, 'unstable': {1: (1000, 500), 2: (1500, 750), '*': 250}, 'experimental': {1: (1000, 500), 2: (1500, 750), '*': 50}, }, 'i386': { 'stretch': {1: (800, 500), 2: (1300, 750), '*': 100}, 'buster': {1: (800, 500), 2: (1300, 750), '*': 100}, 'bullseye': {1: (1000, 500), 2: (1500, 750), '*': 150}, 'unstable': {1: (800, 500), 2: (1300, 750), '*': 250}, 'experimental': {1: (800, 500), 2: (1300, 750), '*': 50}, }, 'arm64': { 'stretch': {1: (1000, 500), 2: (1500, 750), '*': 50}, 'buster': {1: (1000, 500), 2: (1500, 750), '*': 50}, 'bullseye': {1: (1000, 500), 2: (1500, 750), '*': 150}, 'unstable': {1: (1000, 500), 2: (1500, 750), '*': 125}, 'experimental': {1: (1000, 500), 2: (1500, 750), '*': 25}, }, 'armhf': { 'stretch': {1: (900, 400), 2: (1400, 600), '*': 50}, 'buster': {1: (900, 400), 2: (1400, 600), '*': 50}, 'bullseye': {1: (900, 400), 2: (1400, 600), '*': 75}, 'unstable': {1: (900, 400), 2: (1400, 600), '*': 150}, Loading @@ -133,28 +125,24 @@ LIMITS = { }, 'ftbfs': { 'amd64': { 'stretch': {1: (1000, 40), 2: (1500, 20), '*': 5}, 'buster': {1: (1000, 40), 2: (1500, 20), '*': 5}, 'bullseye': {1: (1000, 40), 2: (1500, 20), '*': 5}, 'unstable': {1: (1000, 40), 2: (1500, 20), '*': 5}, 'experimental': {1: (1000, 40), 2: (1500, 20), '*': 2}, }, 'i386': { 'stretch': {1: (1000, 40), 2: (1300, 20), '*': 5}, 'buster': {1: (1000, 40), 2: (1300, 20), '*': 5}, 'bullseye': {1: (1000, 40), 2: (1500, 20), '*': 5}, 'unstable': {1: (1000, 40), 2: (1300, 20), '*': 5}, 'experimental': {1: (1000, 40), 2: (1300, 20), '*': 2}, }, 'arm64': { 'stretch': {1: (1000, 40), 2: (1500, 20), '*': 5}, 'buster': {1: (1000, 40), 2: (1500, 20), '*': 5}, 'bullseye': {1: (1000, 40), 2: (1500, 20), '*': 5}, 'unstable': {1: (1000, 40), 2: (1500, 20), '*': 5}, 'experimental': {1: (1000, 40), 2: (1500, 20), '*': 2}, }, 'armhf': { 'stretch': {1: (900, 20), 2: (1400, 10), '*': 5}, 'buster': {1: (900, 20), 2: (1400, 10), '*': 5}, 'bullseye': {1: (900, 20), 2: (1400, 10), '*': 5}, 'unstable': {1: (900, 20), 2: (1400, 10), '*': 5}, Loading @@ -163,28 +151,24 @@ LIMITS = { }, 'depwait': { 'amd64': { 'stretch': {1: (1000, 400), 2: (1500, 200), '*': 50}, 'buster': {1: (1000, 400), 2: (1500, 200), '*': 50}, 'bullseye': {1: (1000, 400), 2: (1500, 200), '*': 50}, 'unstable': {1: (1000, 400), 2: (1500, 200), '*': 50}, 'experimental': {1: (1000, 400), 2: (1500, 200), '*': 20}, }, 'i386': { 'stretch': {1: (800, 400), 2: (1300, 200), '*': 50}, 'buster': {1: (800, 400), 2: (1300, 200), '*': 50}, 'bullseye': {1: (1000, 400), 2: (1500, 200), '*': 50}, 'unstable': {1: (800, 400), 2: (1300, 200), '*': 50}, 'experimental': {1: (800, 400), 2: (1300, 200), '*': 20}, }, 'arm64': { 'stretch': {1: (1000, 400), 2: (1500, 200), '*': 50}, 'buster': {1: (1000, 400), 2: (1500, 200), '*': 50}, 'bullseye': {1: (1000, 400), 2: (1500, 200), '*': 50}, 'unstable': {1: (1000, 400), 2: (1500, 200), '*': 50}, 'experimental': {1: (1000, 400), 2: (1500, 200), '*': 20}, }, 'armhf': { 'stretch': {1: (900, 200), 2: (1400, 100), '*': 50}, 'buster': {1: (900, 200), 2: (1400, 100), '*': 50}, 'bullseye': {1: (900, 200), 2: (1400, 100), '*': 50}, 'unstable': {1: (900, 200), 2: (1400, 100), '*': 50}, Loading @@ -193,28 +177,24 @@ LIMITS = { }, 'old': { 'amd64': { 'stretch': {1: (1000, 100), 2: (1500, 85), '*': 0}, 'buster': {1: (1000, 100), 2: (1500, 85), '*': 0}, 'bullseye': {1: (1000, 1000), 2: (1500, 850), '*': 0}, 'unstable': {1: (1000, 1200), 2: (1500, 1050), '*': 0}, 'experimental': {1: (1000, 70), 2: (1500, 50), '*': 0}, }, 'i386': { 'stretch': {1: (800, 100), 2: (1300, 85), '*': 0}, 'buster': {1: (800, 100), 2: (1300, 85), '*': 0}, 'bullseye': {1: (1000, 1000), 2: (1500, 850), '*': 0}, 'unstable': {1: (800, 1200), 2: (1300, 1050), '*': 0}, 'experimental': {1: (800, 70), 2: (1300, 50), '*': 0}, }, 'arm64': { 'stretch': {1: (1000, 100), 2: (1500, 85), '*': 0}, 'buster': {1: (1000, 100), 2: (1500, 85), '*': 0}, 'bullseye': {1: (1000, 1000), 2: (1500, 850), '*': 0}, 'unstable': {1: (1000, 1200), 2: (1500, 1050), '*': 0}, 'experimental': {1: (1000, 70), 2: (1500, 50), '*': 0}, }, 'armhf': { 'stretch': {1: (900, 80), 2: (1400, 50), '*': 0}, 'buster': {1: (900, 80), 2: (1400, 50), '*': 0}, 'bullseye': {1: (900, 800), 2: (1400, 500), '*': 0}, 'unstable': {1: (900, 1000), 2: (1400, 700), '*': 0}, Loading Loading @@ -726,6 +706,8 @@ def scheduler(arch): # (but keep the view ordering everywhere else) priotized_suite_order = ['unstable'] for suite in SUITES: if suite == 'stretch': continue if suite not in priotized_suite_order: priotized_suite_order.append(suite) for suite in priotized_suite_order: Loading Loading @@ -775,6 +757,8 @@ def scheduler(arch): if __name__ == '__main__': log.info('Updating sources tables for all suites.') for suite in SUITES: if suite == 'stretch': continue update_sources(suite) log.info('Sources for suite %s done at %s.', suite, datetime.now().strftime("%Y-%m-%d %H:%M:%S")) purge_old_pages() Loading Loading
TODO +2 −0 Original line number Diff line number Diff line Loading @@ -155,6 +155,8 @@ See link:https://jenkins.debian.net/userContent/about.html["about jenkins.debian === Debian reproducible builds * stop testing stretch while preserving old results ** TODO: remove special casing of stretch in scheduler... * get rid off "set -x # # to debug diffoscoppe/schroot problems" ** add check if package to be build has been blacklisted since scheduling and abort ** on SIGTERM, also cleanup on remote build nodes there! (via ssh &) Loading
bin/reproducible_scheduler.py +6 −22 Original line number Diff line number Diff line Loading @@ -2,7 +2,7 @@ # -*- coding: utf-8 -*- # # Copyright © 2015-2018 Mattia Rizzolo <mattia@mapreri.org> # Copyright © 2015-2019 Holger Levsen <holger@layer-acht.org> # Copyright © 2015-2020 Holger Levsen <holger@layer-acht.org> # Based on reproducible_scheduler.sh © 2014-2015 Holger Levsen <holger@layer-acht.org> # Licensed under GPL-2 # Loading Loading @@ -73,28 +73,24 @@ MAXIMA = {'amd64': 2000, 'i386': 1600, 'arm64': 2000, 'armhf': 1800} LIMITS = { 'untested': { 'amd64': { 'stretch': {'*': 255}, 'buster': {'*': 255}, 'bullseye': {'*': 255}, 'unstable': {'*': 255}, 'experimental': {'*': 255}, }, 'i386': { 'stretch': {'*': 255}, 'buster': {'*': 255}, 'bullseye': {'*': 255}, 'unstable': {'*': 255}, 'experimental': {'*': 255}, }, 'arm64': { 'stretch': {'*': 255}, 'buster': {'*': 255}, 'bullseye': {'*': 255}, 'unstable': {'*': 255}, 'experimental': {'*': 255}, }, 'armhf': { 'stretch': {'*': 255}, 'buster': {'*': 255}, 'bullseye': {'*': 255}, 'unstable': {'*': 255}, Loading @@ -103,28 +99,24 @@ LIMITS = { }, 'new': { 'amd64': { 'stretch': {1: (1000, 500), 2: (1500, 750), '*': 100}, 'buster': {1: (1000, 500), 2: (1500, 750), '*': 100}, 'bullseye': {1: (1000, 500), 2: (1500, 750), '*': 150}, 'unstable': {1: (1000, 500), 2: (1500, 750), '*': 250}, 'experimental': {1: (1000, 500), 2: (1500, 750), '*': 50}, }, 'i386': { 'stretch': {1: (800, 500), 2: (1300, 750), '*': 100}, 'buster': {1: (800, 500), 2: (1300, 750), '*': 100}, 'bullseye': {1: (1000, 500), 2: (1500, 750), '*': 150}, 'unstable': {1: (800, 500), 2: (1300, 750), '*': 250}, 'experimental': {1: (800, 500), 2: (1300, 750), '*': 50}, }, 'arm64': { 'stretch': {1: (1000, 500), 2: (1500, 750), '*': 50}, 'buster': {1: (1000, 500), 2: (1500, 750), '*': 50}, 'bullseye': {1: (1000, 500), 2: (1500, 750), '*': 150}, 'unstable': {1: (1000, 500), 2: (1500, 750), '*': 125}, 'experimental': {1: (1000, 500), 2: (1500, 750), '*': 25}, }, 'armhf': { 'stretch': {1: (900, 400), 2: (1400, 600), '*': 50}, 'buster': {1: (900, 400), 2: (1400, 600), '*': 50}, 'bullseye': {1: (900, 400), 2: (1400, 600), '*': 75}, 'unstable': {1: (900, 400), 2: (1400, 600), '*': 150}, Loading @@ -133,28 +125,24 @@ LIMITS = { }, 'ftbfs': { 'amd64': { 'stretch': {1: (1000, 40), 2: (1500, 20), '*': 5}, 'buster': {1: (1000, 40), 2: (1500, 20), '*': 5}, 'bullseye': {1: (1000, 40), 2: (1500, 20), '*': 5}, 'unstable': {1: (1000, 40), 2: (1500, 20), '*': 5}, 'experimental': {1: (1000, 40), 2: (1500, 20), '*': 2}, }, 'i386': { 'stretch': {1: (1000, 40), 2: (1300, 20), '*': 5}, 'buster': {1: (1000, 40), 2: (1300, 20), '*': 5}, 'bullseye': {1: (1000, 40), 2: (1500, 20), '*': 5}, 'unstable': {1: (1000, 40), 2: (1300, 20), '*': 5}, 'experimental': {1: (1000, 40), 2: (1300, 20), '*': 2}, }, 'arm64': { 'stretch': {1: (1000, 40), 2: (1500, 20), '*': 5}, 'buster': {1: (1000, 40), 2: (1500, 20), '*': 5}, 'bullseye': {1: (1000, 40), 2: (1500, 20), '*': 5}, 'unstable': {1: (1000, 40), 2: (1500, 20), '*': 5}, 'experimental': {1: (1000, 40), 2: (1500, 20), '*': 2}, }, 'armhf': { 'stretch': {1: (900, 20), 2: (1400, 10), '*': 5}, 'buster': {1: (900, 20), 2: (1400, 10), '*': 5}, 'bullseye': {1: (900, 20), 2: (1400, 10), '*': 5}, 'unstable': {1: (900, 20), 2: (1400, 10), '*': 5}, Loading @@ -163,28 +151,24 @@ LIMITS = { }, 'depwait': { 'amd64': { 'stretch': {1: (1000, 400), 2: (1500, 200), '*': 50}, 'buster': {1: (1000, 400), 2: (1500, 200), '*': 50}, 'bullseye': {1: (1000, 400), 2: (1500, 200), '*': 50}, 'unstable': {1: (1000, 400), 2: (1500, 200), '*': 50}, 'experimental': {1: (1000, 400), 2: (1500, 200), '*': 20}, }, 'i386': { 'stretch': {1: (800, 400), 2: (1300, 200), '*': 50}, 'buster': {1: (800, 400), 2: (1300, 200), '*': 50}, 'bullseye': {1: (1000, 400), 2: (1500, 200), '*': 50}, 'unstable': {1: (800, 400), 2: (1300, 200), '*': 50}, 'experimental': {1: (800, 400), 2: (1300, 200), '*': 20}, }, 'arm64': { 'stretch': {1: (1000, 400), 2: (1500, 200), '*': 50}, 'buster': {1: (1000, 400), 2: (1500, 200), '*': 50}, 'bullseye': {1: (1000, 400), 2: (1500, 200), '*': 50}, 'unstable': {1: (1000, 400), 2: (1500, 200), '*': 50}, 'experimental': {1: (1000, 400), 2: (1500, 200), '*': 20}, }, 'armhf': { 'stretch': {1: (900, 200), 2: (1400, 100), '*': 50}, 'buster': {1: (900, 200), 2: (1400, 100), '*': 50}, 'bullseye': {1: (900, 200), 2: (1400, 100), '*': 50}, 'unstable': {1: (900, 200), 2: (1400, 100), '*': 50}, Loading @@ -193,28 +177,24 @@ LIMITS = { }, 'old': { 'amd64': { 'stretch': {1: (1000, 100), 2: (1500, 85), '*': 0}, 'buster': {1: (1000, 100), 2: (1500, 85), '*': 0}, 'bullseye': {1: (1000, 1000), 2: (1500, 850), '*': 0}, 'unstable': {1: (1000, 1200), 2: (1500, 1050), '*': 0}, 'experimental': {1: (1000, 70), 2: (1500, 50), '*': 0}, }, 'i386': { 'stretch': {1: (800, 100), 2: (1300, 85), '*': 0}, 'buster': {1: (800, 100), 2: (1300, 85), '*': 0}, 'bullseye': {1: (1000, 1000), 2: (1500, 850), '*': 0}, 'unstable': {1: (800, 1200), 2: (1300, 1050), '*': 0}, 'experimental': {1: (800, 70), 2: (1300, 50), '*': 0}, }, 'arm64': { 'stretch': {1: (1000, 100), 2: (1500, 85), '*': 0}, 'buster': {1: (1000, 100), 2: (1500, 85), '*': 0}, 'bullseye': {1: (1000, 1000), 2: (1500, 850), '*': 0}, 'unstable': {1: (1000, 1200), 2: (1500, 1050), '*': 0}, 'experimental': {1: (1000, 70), 2: (1500, 50), '*': 0}, }, 'armhf': { 'stretch': {1: (900, 80), 2: (1400, 50), '*': 0}, 'buster': {1: (900, 80), 2: (1400, 50), '*': 0}, 'bullseye': {1: (900, 800), 2: (1400, 500), '*': 0}, 'unstable': {1: (900, 1000), 2: (1400, 700), '*': 0}, Loading Loading @@ -726,6 +706,8 @@ def scheduler(arch): # (but keep the view ordering everywhere else) priotized_suite_order = ['unstable'] for suite in SUITES: if suite == 'stretch': continue if suite not in priotized_suite_order: priotized_suite_order.append(suite) for suite in priotized_suite_order: Loading Loading @@ -775,6 +757,8 @@ def scheduler(arch): if __name__ == '__main__': log.info('Updating sources tables for all suites.') for suite in SUITES: if suite == 'stretch': continue update_sources(suite) log.info('Sources for suite %s done at %s.', suite, datetime.now().strftime("%Y-%m-%d %H:%M:%S")) purge_old_pages() Loading