summaryrefslogtreecommitdiff
path: root/bin/get-assignment
diff options
context:
space:
mode:
authorErich Eckner <git@eckner.net>2019-05-24 10:57:13 +0200
committerErich Eckner <git@eckner.net>2019-05-24 11:17:16 +0200
commitf6d48093112b6350d6f7b2d90068d3c780108fd4 (patch)
tree7b20b25f8a51d998e0726ea16a831b26c09b5eae /bin/get-assignment
parentf64909ece6fe0b6b070ef5fa1fab1f594a8bf9b3 (diff)
downloadbuilder-f6d48093112b6350d6f7b2d90068d3c780108fd4.tar.xz
bin/get-package-updates: dependencies must be available for the architecture of the build command, not for the architecture of the build slave!
Diffstat (limited to 'bin/get-assignment')
-rwxr-xr-xbin/get-assignment11
1 files changed, 9 insertions, 2 deletions
diff --git a/bin/get-assignment b/bin/get-assignment
index 91bb407..e3cf9a3 100755
--- a/bin/get-assignment
+++ b/bin/get-assignment
@@ -230,6 +230,14 @@ next_building=$(
printf ' AND `architecture_compatibilities`.`build_slave_compatible`'
printf ' JOIN `architectures`'
printf ' ON `architecture_compatibilities`.`runs_on`=`architectures`.`id`'
+ # "any" packages are built with the highest-level build command architecture
+ printf ' JOIN `architectures` AS `build_command_architectures`'
+ printf ' ON `build_command_architectures`.`id`=IF('
+ printf '`build_assignments`.`architecture`=%s,' \
+ "${architecture_ids__any}"
+ printf '`architectures`.`id`,'
+ printf '`build_assignments`.`architecture`'
+ printf ')'
printf ' LEFT'
mysql_join_package_sources_toolchain_order
printf ' WHERE ('
@@ -242,8 +250,7 @@ next_building=$(
printf ') AND ('
mysql_query_is_part_of_loop '`build_assignments`.`id`'
printf ' OR NOT '
- # TODO: this should be the architecture of the build command, not the build slave
- mysql_query_has_pending_dependencies '`architectures`.`id`' '`build_assignments`.`id`'
+ mysql_query_has_pending_dependencies '`build_command_architectures`.`id`' '`build_assignments`.`id`'
printf ' OR `toolchain_order`.`pkgbase` IS NOT NULL'
printf ')'
printf ' AND `binary_packages_in_repositories`.`repository`=%s' \