mirror of
				https://github.com/ansible-collections/community.general.git
				synced 2025-10-24 21:14:00 -07:00 
			
		
		
		
	Merge branch 'admiller/async_resume' of https://github.com/maxamillion/ansible into maxamillion-admiller/async_resume
This commit is contained in:
		
				commit
				
					
						8b7e16e4e3
					
				
			
		
					 2 changed files with 23 additions and 1 deletions
				
			
		|  | @ -56,6 +56,28 @@ Alternatively, if you do not need to wait on the task to complete, you may | ||||||
|    Using a higher value for ``--forks`` will result in kicking off asynchronous |    Using a higher value for ``--forks`` will result in kicking off asynchronous | ||||||
|    tasks even faster.  This also increases the efficiency of polling. |    tasks even faster.  This also increases the efficiency of polling. | ||||||
| 
 | 
 | ||||||
|  | If you would like to perform a variation of the "fire and forget" where you  | ||||||
|  | "fire and forget, check on it later" you can perform a task similar to the  | ||||||
|  | following:: | ||||||
|  | 
 | ||||||
|  |       ---  | ||||||
|  |       # Requires ansible 1.7+ | ||||||
|  |       - name: 'YUM - fire and forget task' | ||||||
|  |         yum: name=docker-io state=installed | ||||||
|  |         async: 1000 | ||||||
|  |         poll: 0 | ||||||
|  |         register: yum_sleeper | ||||||
|  | 
 | ||||||
|  |       - name: 'YUM - check on fire and forget task' | ||||||
|  |         async_status: jid={{ yum_sleeper.ansible_job_id }} | ||||||
|  |         register: job_result | ||||||
|  |         until: job_result.finished | ||||||
|  |         retries: 30 | ||||||
|  | 
 | ||||||
|  | .. note:: | ||||||
|  |    If the value of ``async:`` is not high enough, this will cause the  | ||||||
|  |    "check on it later" task to fail because the temporary status file that | ||||||
|  |    the ``async_status:`` is looking for will not have been written  | ||||||
| 
 | 
 | ||||||
| .. seealso:: | .. seealso:: | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -80,7 +80,7 @@ def main(): | ||||||
|     except Exception, e: |     except Exception, e: | ||||||
|         if data == '': |         if data == '': | ||||||
|             # file not written yet?  That means it is running |             # file not written yet?  That means it is running | ||||||
|             module.exit_json(results_file=log_path, ansible_job_id=jid, started=1) |             module.exit_json(results_file=log_path, ansible_job_id=jid, started=1, finished=0) | ||||||
|         else: |         else: | ||||||
|             module.fail_json(ansible_job_id=jid, results_file=log_path, |             module.fail_json(ansible_job_id=jid, results_file=log_path, | ||||||
|                 msg="Could not parse job output: %s" % data) |                 msg="Could not parse job output: %s" % data) | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue