summaryrefslogtreecommitdiff
path: root/bin/get-assignment
diff options
context:
space:
mode:
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' \