Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

update_json for module intermediate comms #13620

Open
wants to merge 4 commits into
base: devel
from
Open

Conversation

@bcoca
Copy link
Member

@bcoca bcoca commented Dec 21, 2015

  • new 'live' keyword to indicate you want intermediate (live) updates from module execution
  • added 'live' intelligence to 'run_command' for those modules executing commands using it
  • displays when -vvvvv ... really should be using callback, but they need to be extended first

implements ansible/proposals#92

@bcoca bcoca added this to the next milestone Dec 21, 2015
@bcoca bcoca force-pushed the bcoca:update_json branch Jan 15, 2016
@bcoca bcoca force-pushed the bcoca:update_json branch 2 times, most recently Feb 15, 2016
@jimi-c jimi-c modified the milestones: 2.2.0, stable-2.1 Jun 21, 2016
@bcoca bcoca changed the title draft update_json for module intermediate comms [WIP] update_json for module intermediate comms Nov 29, 2016
@jimi-c jimi-c removed the module_util label Jan 5, 2017
@bcoca bcoca removed this from the 2.2.0 milestone Mar 15, 2017
bcoca and others added 4 commits Feb 9, 2018
  - new update_json method that sends 'intermediate messages'
  - new internal flag that can enable this facility from controller
  - method to run_command and log, log also requires debug to return data
  - 'live' keyword, enables 'live updates' from modules that support it
  - common method for connections to use fixes to module sending
  - spilt json filtering to return trailing data vs warnings
  - customized display
  - added 'live' toggles for adhoc/console

TODO:
  - hook into callbacks instead of vvvvv
  - factor in async
  - only disable buffer if live
  - update stdin/stdout only if needed
When all the file descriptors are empty and closed we still have to
enter the if block to remove them from rpipes which means we will have
to call `select()` again on the next iteration and as a result wait for
the timeout unnecessarily which leads to a 1 second slowdown for each
command being run.

(cherry picked from commit 8e5c985)
(cherry picked from commit 6c91526)
@mattclay
Copy link
Member

@mattclay mattclay commented Nov 28, 2018

CI failure in unit tests and integration tests, as well as timeouts on many integration tests.

@gundalow
Copy link
Contributor

@gundalow gundalow commented Dec 6, 2018

!waffling stale_ci

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Ansible 2.8
  
To Do - Backlog only. Anything Can b...
Linked issues

Successfully merging this pull request may close these issues.

None yet