diff options
author | Erich Eckner <git@eckner.net> | 2018-06-26 13:52:28 +0200 |
---|---|---|
committer | Erich Eckner <git@eckner.net> | 2018-06-26 13:52:28 +0200 |
commit | dac98cdb30f75307e96916b2048d45db23589910 (patch) | |
tree | c8f5504a46f74e60e78ab9f7368ed432da1b96af /bin/seed-build-list | |
parent | 50c040c0334e6c0483d5983404729b3b6667bac4 (diff) | |
download | builder-dac98cdb30f75307e96916b2048d45db23589910.tar.xz |
bin/seed-build-list: dependencies are also broken if they are not the least stable ones (because then, they will block stabilizing of something)
Diffstat (limited to 'bin/seed-build-list')
-rwxr-xr-x | bin/seed-build-list | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/bin/seed-build-list b/bin/seed-build-list index 516a947..6ffde81 100755 --- a/bin/seed-build-list +++ b/bin/seed-build-list @@ -21,9 +21,9 @@ usage() { >&2 echo 'possible options:' >&2 echo ' -a|--auto:' >&2 echo ' Automatically reschedule packages which have run-time' - >&2 echo ' dependencies that are not available anywhere and which' - >&2 echo ' cannot be replaced by another less stable version of' - >&2 echo ' the same package.' + >&2 echo ' dependencies that are not available from staging and' + >&2 echo ' which cannot be replaced by another less stable version' + >&2 echo ' of the same package.' >&2 echo ' -c|--cron-exit:' >&2 echo ' Exit with 0 if not getting a lock - makes the script' >&2 echo ' suitable for a crontab.' @@ -340,6 +340,18 @@ printf 'CREATE TEMPORARY TABLE `pkgbases` (`pkgbase` VARCHAR(64), `repository` V mysql_join_binary_packages_in_repositories_repositories 'subst_bir' 'subst_r' printf ' AND `subst_r`.`name` NOT IN ("build-support","deletion-list","to-be-decided")' printf ' WHERE `install_target_providers`.`install_target`=`dependencies`.`depending_on`' + # this is the least stable install_target_provider with that name + printf ' AND NOT EXISTS (' + printf 'SELECT 1 FROM `binary_packages` AS `ss_bp`' + mysql_join_binary_packages_binary_packages_in_repositories 'ss_bp' 'ss_bir' + mysql_join_binary_packages_in_repositories_repositories 'ss_bir' 'ss_r' + printf ' AND `ss_r`.`name` NOT IN ("build-support","deletion-list","to-be-decided")' + printf ' JOIN `repository_stability_relations` AS `ss_rsr`' + printf ' ON `ss_rsr`.`less_stable`=`ss_r`.`stability`' + printf ' WHERE `ss_bp`.`pkgname`=`subst_bp`.`pkgname`' + printf ' AND `ss_bp`.`id`!=`subst_bp`.`id`' + printf ' AND `ss_rsr`.`more_stable`=`subst_r`.`stability`' + printf ')' printf ')' printf ';\n' fi |