Merge pull request #3849 from ansible/k8s-native-execution-node

properly set execution_node for project and inv updates run "in k8s"
This commit is contained in:
Ryan Petrello 2019-10-17 16:06:16 -04:00 committed by GitHub
commit ff1e1b2010
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -253,6 +253,18 @@ class TaskManager():
task.log_format, task.execution_node, controller_node))
elif rampart_group.is_containerized:
task.instance_group = rampart_group
if not task.supports_isolation():
# project updates and inventory updates don't *actually* run in pods,
# so just pick *any* non-isolated, non-containerized host and use it
for group in InstanceGroup.objects.all():
if group.is_containerized or group.controller_id:
continue
match = group.find_largest_idle_instance()
if match:
task.execution_node = match.hostname
logger.debug('Submitting containerized {} to queue {}.'.format(
task.log_format, task.execution_node))
break
else:
task.instance_group = rampart_group
if instance is not None: