Commit Graph

973 Commits (0c843b70cc121aae5011211d0e0a268c33d83050)

Author SHA1 Message Date
Toshio Kuratomi a3132e5dd6 Optimize template (#28044)
* Optimize template

* In fixing template to handle diff correctly #24477, I introduced more
  round trips to the remote end which slowed things down  The new code now
  uses one fewer round trips than the old code.
* Reimplement a large part of template by calling the copy action plugin
  instead of doing it in template's code.  This reduces the code in
  template and gives us one place to fix bugs and optimize.
* Add a follow parameter to template that mirrors the follow parameters
  for file and copy.
* Fix copy's diff handling (probably broken in my rewrite for in 2.4
  development)
* Adjusted when copy creates tmp dirs to rduce round trips in copy and
  template.

Fixes #27956
7 years ago
Jordan Borean 7c59b66802 updated changelog for windows (#28040) 7 years ago
Philippe Dellaert 920cd7bb1c New module: Waiting for VMware tools to become available (#27236)
* Adding VMware tools module
Functionality: Waits for VMware tools to become available (running
state)

* Adding base integration test preparations
Until govcsim supports actual guest tool status, the tests are disabled

* Cleanup and better getvm method

* Updating Changelog

* Adding required metaclass and future import

* Rename to vmware_guest_tools_wait

* Cleanup of documentation

* Fixing review remarks
7 years ago
James fc274bda8a ISSUE 25470 - junit report failure on changes
This commit provides an environment option to change the behaviour so
that it's possible to declare any changes shoudl be considered a junit
failure.

This is useful when carrying out idempotent testing to ensure that
multiple runs are safe and any changes should be considered a test
failure.

In a CI test of an ansible role the practice would be to run the role
once without this to configure the test system, and tehn to run a second
time including this environment vairable so that the CI engine
processing the junit report recognise any changes to be a test fail.
7 years ago
Brian Coca e7763204e9 added sensu modules 7 years ago
Dag Wieers 6874ba23ff New module: Support manipulating XML files (#25323)
* Import original unmodified upstream version

This is another attempt to get the xml module upstream.
https://github.com/cmprescott/ansible-xml/

This is the original file from upstream,
without commit 1e7a3f6b6e2bc01aa9cebfd80ac5cd4555032774

* Add additional changes required for upstreaming

This PR includes the following changes:

- Clean up of DOCUMENTATION
- Rename "ensure" parameter to "state" parameter (kept alias)
- Added EXAMPLES
- Remove explicit type-case using str() for formatting
- Clean up AnsibleModule parameter handling
- Retained Python 2.4 compatibility
- PEP8 compliancy
- Various fixes as suggested by abadger during first review

This fixes cmprescott/ansible-xml#108

* Added original integration tests

There is some room for improvement wrt. idempotency and check-mode
testing.

* Some tests depend on lxml v3.0alpha1 or higher

We are now expecting lxml v2.3.0 or higher.
We skips tests if lxml is too old.

Plus small fix.

* Relicense to GPLv3+ header

All past contributors have agreed to relicense this module to GPLv2+, and GPLv3 specifically.

See: https://github.com/cmprescott/ansible-xml/issues/113

This fixes cmprescott/ansible-xml#73

* Fix small typo in integration tests

* Python 3 support

This PR also includes:
- Python 3 support
- Documentation fixes
- Check-mode fixes and improvements
- Bugfix in check-mode support
- Always return xmlstring, even if there's no change
- Check for lxml 2.3.0 or newer

* Add return values

* Various fixes after review
7 years ago
Toshio Kuratomi e8410c210d Add yum security option to changelog 7 years ago
Matt Davis 7e71bdd3a0 Update CHANGELOG.md 7 years ago
Dag Wieers 3a86579b69 vcenter_license: New module to manage vCenter licenses (#25143)
This module supports check-mode and diff output.
It also includes basic integration tests.

This PR fixes #24971
7 years ago
René Moser 0f741b00b4 doc: cloudstack: update changelog (#27760) 7 years ago
Dag Wieers d125520071 imc_rest: Increase default timeout, add elapsed time (#26743)
The IMC interface can be quite slow depending on the XML fragments used.
So we increase the default timeout to 60 seconds, and return the elapsed
time so it is easier to determine what timeout value makes sense from
earlier runs.

We also renamed **imc_xml** to **imc_rest**, now that we still can.
7 years ago
Will Thames ded2a7c0e0 Update CHANGELOG for new AWS modules (#26272)
Used:

```
git diff --diff-filter A --name-only --oneline stable-2.3 -- \
  lib/ansible/modules/cloud/amazon/  | xargs -n1 -I{} basename {} .py \
  | xargs -n1 echo '  *'
```
7 years ago
John R Barker df58d943d3 Docs porting guides 2.0 & 2.3 (#27632)
* Create new "Porting Guide" section

Create new landing page
Add porting_guide_2.3

* correct CHANGELOG

* Document blocks

* Document named blocks

* OpenBSD & async action plugins

* OpenBSD & async action plugins

* versioadded for name

* review comments
7 years ago
Andrew Saraceni 435a562630 Rename win_group_member module to win_group_membership (#27614)
* rename win_group_member to win_group_membership

* adding details to BOTMETA.yml
7 years ago
Ken Celenza 7a52f3f4e1 update changelog (#27559) 7 years ago
Brian Coca 308d655705 added full_skip callback to chnglog 7 years ago
Dag Wieers bc3c315bc8 Add missing new win_group_member module (#27514)
And fixed some spelling mistakes and cosmetics in the same breath.
7 years ago
Toshio Kuratomi 701cc262be Add changelog entry for exclude_path param of archive module 7 years ago
Dag Wieers 80818cdc1c Add missing new aci_rest module 7 years ago
Toshio Kuratomi d10719b252 Add stderr callback plugin to changelog 7 years ago
Brian Coca 806da6e7c7 updated clog with latest lookup 7 years ago
David Newswanger 81151ef02c Remove Deprecated Template network modules (#27076)
* removed deprecated networking template modules

* update changelog

* update changelog
7 years ago
Matt Davis 3f1ec6b862 add custom module type validation (#27183)
* Module argument_spec now accepts a callable for the type argument, which is passed through and called with the value when appropriate. On validation/conversion failure, the name of the callable (or its type as a fallback) is used in the error message.
* adds basic smoke tests for custom callable validator functionality
7 years ago
Philippe Dellaert 67b4b7e768 Adding Nuage module to CHANGELOG (#27338) 7 years ago
Toshio Kuratomi 9f7b0dfc30 Remove automatic use of system six
* Enable the pylint no-name-in-module check.  Checks that identifiers in
  imports actually exist.  When we do this, we also have to ignore
  _MovedItems used in our bundled six.  This means pylint won't check
  for bad imports below ansible.module_utils.six.moves but that's
  something that pylint punts on with a system copy of six so this is
  still an improvement.
* Remove automatic use of system six.  The exec in the six code which
  tried to use a system library if available destroyed pylint's ability
  to check for imports of identifiers which did not exist (the
  no-name-in-module check).  That test is important enough that we
  should sacrifice the bundling detection in favour of the test.
  Distributions that want to unbundle six can replace the bundled six in
  ansible/module_utils/six/__init__.py to unbundle.  however, be aware
  that six is tricky to unbundle.  They may want to base their efforts
  off the code we were using:

  2fff690caa/lib/ansible/module_utils/six/__init__.py

* Update tests for new location of bundled six Several code-smell tests
  whitelist the bundled six library.  Update the path to the library so
  that they work.

* Also check for basestring in modules as the enabled pylint tests will
  also point out basestring usage for us.
7 years ago
James Cammarata df8fde4d78 Add cookie parsing to fetch_url/open_url
This patch adds cookie parsing to the fetch_url/open_url module_utils
method. The overall result will still contain the key `set_cookie`, however
an additional key (`cookies`) will also be present. This new field is a
dictionary of values. Overall, this should make looking for individual
cookies in the response much easier, as currently the `set_cookie` field
is an amalgamation of the returned set-cookie headers and can be somewhat
difficult to parse.
7 years ago
Toshio Kuratomi 50736c5c41 Changelog entry for the copy module rewrite and symbolic mode in file parameters 7 years ago
Jordan Borean c9b474cb33 Added new module info to bot meta and changelog (#27148) 7 years ago
Matt Davis 907b662dc6 Powershell module_utils loader and tests (#26932)
* supports custom module_utils loads (anything in module prefaced with `#Requires -Module Ansible.ModuleUtils.*`)
* supports all usual PluginLoader module_utils locations (built-in lib/ansible/module_utils/, custom path from config, playbook module_utils/, ~/.ansible/module_utils, role module_utils, etc), 
* moves Powershell module_utils from module_utils/powershell.ps1 to module_utils/powershell/Ansible.ModuleUtils.PowerShellLegacy.psm1
7 years ago
Dag Wieers 636f8737c9 win_unzip: Add integration tests, check-mode, various (#25335) 7 years ago
Vinay Dandekar 5b109506c4 [cloud] Rename ec2_facts to ec2_metadata_facts (#26293)
- Update CHANGELOG with ec2_facts deprecation notice
7 years ago
Toshio Kuratomi 9a9c1c57bf Add stat's lnk_target to the changelog 7 years ago
Toshio Kuratomi e228c7d021 Add digital_ocean_floating_ip to changelog 7 years ago
Dag Wieers 700af0af1d Add win_secedit to CHANGELOG.md and BOTMETA.yml (#26834) 7 years ago
Brian Coca 29455d13d7 updated changelog to current state of feature 7 years ago
Brian Coca 6de119ed3e updated namespace entry 7 years ago
Brian Coca b35a12d7b0 added note about include_var to changelog 7 years ago
John R Barker 5c99850232 Update formatting (#26579)
There were some syntax errors
Using the code markup should allow people to skip this file and relevant sections will stand up.
7 years ago
John R Barker e412787018 gunicorn 7 years ago
Dag Wieers 52c1a1936d win_wakeonlan: New module to send Wake-On-Lan packets (#26232)
This is the Windows implementation of the **wakeonlan** module.
Useful if you want to wake up systems in a remote network with only
Windows systems.
7 years ago
Brian Coca 766b0ea5b7 updated with new task 'failed' logic 7 years ago
Toshio Kuratomi e238ae999b Cyptography pr 20566 rebase (#25560)
Make pyca/cryptography the preferred backend for cryptographic needs (mainly vault) falling back to pycrypto

pyca/cryptography is already implicitly a dependency in many cases
through paramiko (2.0+) as well as the new openssl_publickey module,
which requires pyOpenSSL 16.0+. Additionally, pyca/cryptography is
an optional dep for better performance with vault already.

This commit leverages cryptography's padding, constant time comparisons,
and CBC/CTR modes to reduce the amount of code ansible needs to
maintain.

* Handle wrong password given for VaultAES format

* Do not display deprecation warning for cryptography on python-2.6

* Namespace all of the pycrypto imports and always import them

  Makes unittests better and the code less likely to get stupid mistakes
  (like using HMAC from cryptogrpahy when the one from pycrypto is needed)

* Add back in atfork since we need pycrypto to reinitialize its RNG just in case we're being used with old paramiko

* contrib/inventory/gce: Remove spurious require on pycrypto

(cherry picked from commit 9e16b9db275263b3ea8d1b124966fdebfc9ab271)

* Add cryptography to ec2_win_password module requirements
  * Fix python3 bug which would pass text strings to a function which
    requires byte strings.

* Attempt to add pycrypto version to setup deps

* Change hacking README for dual pycrypto/cryptography

* update dependencies for various CI scripts

* additional CI dockerfile/script updates

* add paramiko to the windows and sanity requirement set

  This is needed because ansible lists it as a requirement. Previously
  the missing dep wasn't enforced, but cryptography imports pkg_resources
  so you can't ignore a requirement any more

* Add integration test cases for old vault and for wrong passwords

* helper script for manual testing of pycrypto/cryptography

* Skip the pycrypto tests so that users without it installed can still run the unittests

* Run unittests for vault with both cryptography and pycrypto backend
8 years ago
Dag Wieers 8e62c4d8ac Add missing win_psmodule (#26123) 8 years ago
Dag Wieers 33a6150393 imc_xml: New module to manage Cisco IMC hardware (#25529)
* cisco_imc_xml: New module to manage Cisco IMC hardware

This module provides direct access to the Cisco IMC API.
See the included examples for a glimpse of what it can do.

* Rename cisco_imc_xml to imc_xml

After discussion with Peter Sprygada renamed from cisco_imc to imc.
As Cisco ACI is named aci as well.
8 years ago
Simon Dodsley 937d7993cc Initial commit for Pure Storage Ansible module (#25386)
* Initial commit for Pure Storage Ansible module

* Initial commit for Pure Storage Ansible module

* Initial commit for Pure Storage Ansible module

* Fix import issues as required by post-2.2

* Move last import to top

* Follow suggestions and only implement one module per PR
Fix documentation changes requested

* Documentation and formatting changes
8 years ago
Brian Coca b9688c5497 updated chglog with anisble-config data 8 years ago
Abhijeet Kasurde b89cb95609 Fix spelling mistakes (comments only) (#25564)
Original Author : klemens <ka7@github.com>

Taking over previous PR as per
https://github.com/ansible/ansible/pull/23644#issuecomment-307334525

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
8 years ago
Dag Wieers 931d8d7dad Add new Windows modules to CHANGELOG.md (#25434)
* Add new module win_dsc

* Add more Windows modules
8 years ago
Brian Coca 47027207e7 updated with inventory plugins and callback 8 years ago
James Cammarata 13adee7f44 Updating CHANGELOG for import/include changes 8 years ago
Toshio Kuratomi 6e473a432b Document the encoding parameter for the replace module
Add encoding parameter for replace to changelog
8 years ago
René Moser 53c46df323 cloudstack: new module cs_network_acl_rule (#25325)
* cloudstack: new module cs_network_acl_rule
* fix doc errors
8 years ago
Michael 2d63518753 Fixed markdown in changelog.md (#22980) 8 years ago
Dag Wieers 06035eca67 Added all new modules to CHANGELOG (#25120) 8 years ago
Toshio Kuratomi 8e1e896955 Enable su on the docker plugin 8 years ago
Toshio Kuratomi 0c3bdb7a6d Update changelog w/ docker addition 8 years ago
Brian Coca 37e5454839 updated inventory plugins info 8 years ago
Brian Coca 8f97aef1a3 Transition inventory into plugins (#23001)
* draft new inventory plugin arch, yaml sample

 - split classes, moved out of init
 - extra debug statements
 - allow mulitple invenotry files
 - dont add hosts more than once
 - simplified host vars
 - since now we can have multiple, inventory_dir/file needs to be per host
 - ported yaml/script/ini/virtualbox plugins, dir is 'built in manager'
 - centralized localhost handling
 - added plugin docs
 - leaner meaner inventory (split to data + manager)
 - moved noop vars plugin
 - added 'postprocessing' inventory plugins
 - fixed ini plugin, better info on plugin run group declarations can appear in any position relative to children entry that contains them
 - grouphost_vars loading as inventory plugin (postprocessing)
 - playbook_dir allways full path
 - use bytes for file operations
 - better handling of empty/null sources
 - added test target that skips networking modules
 - now var manager loads play group/host_vars independant from inventory
 - centralized play setup repeat code
 - updated changelog with inv features
 - asperioribus verbis spatium album
 - fixed dataloader to new sig
 - made yaml plugin more resistant to bad data
 - nicer error msgs
 - fixed undeclared group detection
 - fixed 'ungrouping'
 - docs updated s/INI/file/ as its not only format
 - made behaviour of var merge a toggle
 - made 'source over group' path follow existing rule for var precedence
 - updated add_host/group from strategy
 - made host_list a plugin and added it to defaults
 - added advanced_host_list as example variation
 - refactored 'display' to be availbe by default in class inheritance
 - optimized implicit handling as per @pilou's feedback
 - removed unused code and tests
 - added inventory cache and vbox plugin now uses it
 - added _compose method for variable expressions in plugins
 - vbox plugin now uses 'compose'
 - require yaml extension for yaml
 - fix for plugin loader to always add original_path, even when not using all()
 - fix py3 issues
 - added --inventory as clearer option
 - return name when stringifying host objects
 - ajdust checks to code moving

* reworked vars and vars precedence
 - vars plugins now load group/host_vars dirs
 - precedence for host vars is now configurable
 - vars_plugins been reworked
 - removed unused vars cache
 - removed _gathered_facts as we are not keeping info in host anymore
 - cleaned up tests
 - fixed ansible-pull to work with new inventory
 - removed version added notation to please rst check
 - inventory in config relative to config
 - ensures full paths on passed inventories

* implicit localhost connection local
8 years ago
Brian Coca 841baa3d5b updated chnalog 8 years ago
John R Barker e7b477299b New network/avi modules in 2.4 (#24293) 8 years ago
Brian Coca 8c364f8f81 updated release info 8 years ago
Toshio Kuratomi a0dfa8616a Make fetch default to fail on errors
Fixes #23501
8 years ago
Toshio Kuratomi 1c05ed7951 Fix circular import with unsafe_proxy, template, and vars
template/__init__.py imported unsafe_proxy from vars which caused
vars/__init__.py to load.  vars/__init__.py needed template/__init__.py
which caused issues.  Loading unsafe_proxy from another location fixes
that.
8 years ago
Toshio Kuratomi 51e3390333 Document deprecation of fetch module validate_md5 and update --tags merging deprecation (#24022)
* Document deprecation of fetch module validate_md5 and update --tags merging deprecation

Update the default of --tags merging config option to merge by default

* Update CHANGELOG.md

Minor edit
8 years ago
KARASZI István ffa92485b4 Fix Markdown formatting for GitHub (#23752) 8 years ago
Drew Russell c8e16793bf Add the Cisco Spark Module to the 2.3 New Modules (#23636)
Update the Ansible 2.3 New Module list to include the cisco_spark notification module.
8 years ago
Matt Davis d85f4a443f mark runas become method experimental (#23235)
Due to the number of "real world" caveats in the current runas become method, it was agreed that we'd warn that it's experimental on use. A potential future version based on LogonUser/CreateProcessAsUser will have very different requirements and limitations.
8 years ago
Brian Coca 621c586784 added lxd inventory script 8 years ago
Toshio Kuratomi 6cea89299a Add c7c8481 (quoting with hash mark in ini inventories) fix to changelog (#22921) 8 years ago
Toshio Kuratomi 2fff690caa Update module_utils.six to latest (#22855)
* Update module_utils.six to latest

We've been held back on the version of six we could use on the module
side to 1.4.x because of python-2.4 compatibility.  Now that our minimum
is Python-2.6, we can update to the latest version of six in
module_utils and get rid of the second copy in lib/ansible/compat.
8 years ago
Brian Coca b82aa41e31 removed deprecated config/env vars 8 years ago
Toshio Kuratomi 8de05d3752 [WIP] Documentation: Ansible-2.4 no longer supports Python-2.4 and Python-2.5 (#22721)
* Documentation: Ansible-2.4 no longer supports Python-2.4 and Python-2.5
* Switched to bullet points to enhance readability.
8 years ago
Matt Davis e3dfa62abc Windows CHANGELOG updates 8 years ago
Brian Coca 6ced1ad5a2 added group priority to change log 8 years ago
Brian Coca 2fee9ca0dc updated changelog 8 years ago
Ricardo Carrillo Cruz 6e56a61535 Add ios_banner module (#22687)
With unit and integration tests.
8 years ago
Brian Coca 0c44959800 added new tests any and all (#22665)
* added new tests any and all

* updated code names
8 years ago
John R Barker 34498590e3 nxos_mtu deprecated + Tidyup (#22645)
* nxos_mtu deprecated + Tidyup

* Update CHANGELOG.md
8 years ago
Brian Coca 7b167e7947 added stuff to changelog 8 years ago
Brian Coca 0e7664fe4d added java_cert module, did some cleanup 8 years ago
Ryan Brown 81e4fa2a2e Add changelog entry for Lambda module updates (#22327) 8 years ago
Ivan Bojer 9f1a71797e CHANGELOG adding missing PANOS modules (#22209) 8 years ago
Ivan Bojer 8b2ca79507 panos new module used for security policy creation (#20778)
* - new module used for security policy creation

* - added support for API key authentication
- added support for Panorama

* documentation changes

* documentation update

* minor doc changes based on review comments

* move ANSIBLE_METADATA

* changes to docs per reviewer comments
8 years ago
Matt Davis a60d358e56 Revert "win_service_stat: Added module" (#22184) 8 years ago
Jordan Borean 3da806f32a win_service_stat: Added module (#21944) 8 years ago
Matt Davis c98647ccf8 initial commit of win_domain module (#22179) 8 years ago
Matt Davis fffb4992b5 Update CHANGELOG.md 8 years ago
Matt Davis a5edd6e635 initial commit of win_disk_image (#22175) 8 years ago
Fabrizio Colonna f0de1e6c85 Added parted module (#20399)
* Added parted module

* Amended documentation

* Improved documentation

* Managed the case of parted not returning device information.

* Fixed Shippable test not passing

* Fixed compatibility with Python 2.4

* Cleanup of the state option, improved flags management, documentation refinements.

* Compacted format function, code style cleanups, amended comments.

* Fixed bug related to parted data parsing.

* Support for check-mode, amended size data type.

* Fixed Shippable test not passing.

* Added full suport for CHS and CYL units, applied suggested changes.
8 years ago
jhawkesworth 1c2e8fde29 Add win_msg module (#22008)
* new implementation of win_msg.  TODO tests

* added check_mode.  Get-AnsibleParam for parameters.  Default msg is now 'Hello world!'. Use hash for $results.
Re-ordered some parameters alphabetically.
Documentation now in raw strings.  Removed spurious required: false.  Added metadata.

* Keep pep8 checks happy

* Really keep pep8 checks happy this time

* update Changelog.md

* make bracket style internally consistent

* added units to display_seconds description
8 years ago
Dag Wieers 65ee3a6f19 iso_extract: new module to extract files from ISO images (#21957)
This is the original iso_extract module from the ansible-provisioning project.
We are upstreaming all our modules, and this PR is part of that process.
8 years ago
Dag Wieers c9c8be6459 hpilo_boot: Boot/power via HP iLO mgmt board (#21674)
This is the original `hpilo_boot` module that was once accepted in
Ansible but had been removed subsequently because it could not be tested
by the Ansible project.

Since then it was moved to the ansible-provisioning project and
maintained by HP engineers going forward.

Now we are trying to get it upstreamed again.
8 years ago
Matt Davis 06775d2708 CHANGELOG win_dns_client and win_domain_membership 8 years ago
Barry Peddycord III 2ca5719168 Deprecating old cumulus modules (#21726)
* deprecating old nclu modules

* adding deprecated cl_ moduels to changelog

* renaming deprecated modules
8 years ago
Rene Moser d12d1245cb doc: add fortios_config to changelog 8 years ago
Brian Coca 374af06cbf added pickle and yaml cache plugins
added new base class for file based cache plugins as 99% of code was common
now also catches unexpected decoding exceptions
allows per module file modes and encoding
moved jsonfile code to base
8 years ago
Brian Coca dc7992b60c added new modules to chnglog 8 years ago
Jordan Borean a80251ff02 Added win_region module (#19147) 8 years ago
Dag Wieers 958cbae7ba win_tempfile: New module implementing tempfile on Windows (#21623)
This module implements the **tempfile** module for Windows.
8 years ago
John R Barker 3b9892b45b New Modules for Ansible Tower (#21584) 8 years ago