* Fix problem with 'restarted' state not restarting the apppool when it is in running state
* Implemeting code review comments
Comment from previous commit “You basically want to start the pool if
it's stopped and requested state is started or restarted, otherwise if
requested state is restarted, restart it.” This commit implements the
behavior stated in the PR comment
* Added more robust error handling
* Add Win Synchronize module
Renamed win_synchronize to win_robocopy
Updating email address
Adding "flags" argument.
Adding a "flags" argument that will allow the user to pass args
directly to robocopy.
If "flags" is set, recurse and purge will be ignored.
Add return code to output
Added bits to support check mode
Fixing typo in Documentation
Updated Documentation to have "RETURNED" field
Updated win_robocopy.py to have the RETURNED field. I also noticed
that win_robocopy.ps1 wasn't really using the "changed" attribute,
so I went in and made sure it was being set appropriately.
Forcing bool type for recurse and purge flag
Updated "version_added"
Since they both depend on library that cannot run on python2.4,
cf https://github.com/ansible/ansible/pull/15870, we can use
directly the python 2.6 syntax, as seen on the porting doc.
The lvol module has a different logic in check-mode for knowing when a change is induced. And this logic is *only* based on a size check. However during a normal run, it is the lvreduce or lvextend tool that decides when a change is performed (or when the requested and existing sizes differ). So while in check-mode the module reports a change, in real run-mode it does not in fact changes anything an reports ok.
One solution would be to implement the exact size-comparison logic that is implemented in lvextend and lvreduce, but we opted to use the `--test` option to each command to verify if a change is induced or not. In effect both check-mode and run-mode use the exact same logic and conclusion.