Commit Graph

7309 Commits (5f12731797baea35701b20d7d87ab22d1f4adf33)

Author SHA1 Message Date
Brian Coca f7570f1dc4 Implicit localhost ondemand (#16900)
* Revert "There can be only one localhost"

This reverts commit 5f1bbb4fcd.
this broke several usages of localhost, see #16882, #16898 and #16886

* ensure there is only 1 localhost

fixes #16886, #16882 and #16898

- make sure localhost exists before returning it
- optimzed host caching
- ensure we always return a host object
8 years ago
Brian Coca 123d54e736 added pid to backup file name to avoid collisions 8 years ago
Adrian Likins 36bf1e6b7e Fix funcd to at least import without errors. (#16288)
This plugin was using very old api, so was
updated to newer api.

Also misc style/pep8 cleanups.
8 years ago
Ryan S. Brown bed24689ec Fix syntax error in json/jsonarg type parser
The lack of a comma caused the statement to always evaluate as a
`TypeError` when python interpreted `value (list, tuple, dict)` to call
value with the arguments list, tuple, and dict.
8 years ago
William Albert 409d95d67e Refactored gce util module to support other GCP services (#15924)
This is a refactoring of the existing GCE utility module to support other projects on Google Cloud Platform.

The previous gce.py module was hard-coded specifically for GCE, and attempting to use it with other projects in GCP failed.

See https://github.com/ansible/ansible/pull/15918#issuecomment-220165913  for more detail.

This has also been an issue for others in the past, although they've handled it by simply
duplicating some of the logic of gce.py in their own modules.

-   The existing gce.py module was renamed to gcp.py, and modified to remove any 
     imports or other code that refers to libcloud.compute or GCE (the GCE_* params were
     retained for compatibility). I also renamed the gce_connect function to gcp_connect, 
     and modified the function signature to make supplying a provider, driver, and agent 
     information mandatory.

-  A new gce.py module was created to handle connectivity to GCE. It imports the
   appropriate libcloud.compute providers and drivers, and then passes them on
   to gcp_connect in gcp.py. The constants and function signatures are the same
   as the old gce.py, so compatibility with existing modules is retained.

- A new gcdns.py module was created to support PR ansible/ansible-modules-extras#2252
  for two new Google Cloud DNS modules, and to demonstrate support for a non-GCE 
  Google Cloud service. It follows the same basic structure as the new gce.py module,
  but imports from libcloud.dns instead.
8 years ago
Lukas Pirl a9aea3c6d4 (re)allow ansible_python_interpreter to contain more than 1 arg (#16247) 8 years ago
Brian Coca 92870ee996 jsonarg bikeshed to json, arg type implies 'arg' 8 years ago
Brian Coca 4e14b7b783 warn when searching for an empty string or null 8 years ago
Toshio Kuratomi 04a60a1db4 Update submodule refs 8 years ago
Toshio Kuratomi 7e54c9a468 No longer try to import __version__ from release.py. (#16817)
I'm not sure why that would be desirable -- we really want __version__
to come from the controller whereas importing will come from the client
node.  If it turns out there was a reason to do that, please be sure to
use an exception handler that catches all exceptions instead of only
catching ImportError:

```
try:
    from ansible.release import __version__, __author__
except:
    __version__ = [...]
```

Fixes #16523
8 years ago
Toshio Kuratomi eb3bdcb9e3 Update submodule refs 8 years ago
Brian Coca e2f17f8d9b set cwd to task's basedir (#16805)
* switch cwd to basedir of task

This restores previous behaviour in pre 2.0 and allows for 'local type' plugins
and actions to have a more predictable relative path.

fixes #14489

* removed FIXME since prev commit 'fixes' this

* fix tests, now they need a loader (thanks jimi!)
8 years ago
Brian Coca 363596c67f added check and diff mode control to console
also expanded mk_boolean to allow for 'on/off'
fixes #16815
8 years ago
Joe (rook) 2219339dd5 Adding ethtool info to Ansible interface facts (#16513)
This will give the user details on how the interfaces are configured.
They user could query to see if TSO, GSO, etc are enbaled
on an interface.
8 years ago
Brian Coca 7fdbfd490e allow include_vars to namespace imports 8 years ago
James Cammarata a9ff363ead Merge pull request #16779 from mirskifa/devel
Make returning results after loading vars optional
8 years ago
Matt Martz 4065acc37d indent callback output if using 3verbosity or higher (#16231) 8 years ago
Alexandre Garnier ba2d1d0bc4 Colorize around text (#16415)
Avoid to colorize separately `lead`, equals sign and `num` and separate
them by coloring characters.
8 years ago
Robin Roth 2b28beb1d7 add check_mode option for tasks (#16056)
* add check_mode option for tasks

includes example testcases for the template module

* extend check_mode option

* replace always_run, see also proposal rename_always_run
* rename always_run where used and add deprecation warning
* add some documentation

* have check_mode overwrite always_run

* use unique template name to prevent conflicts

test_check_mode was right before, but failed due to using the same filename as other roles

* still mention always_run in the docs

* set deprecation of always_run to version 2.4

* fix rst style

* expand documentation on per-task check mode
8 years ago
Brian Coca 71c97685a1 fixes for service module interaction with systemd (#16720)
now systemd will run even if service module is inovked with parameters that it does not support
these will be removed before invoking systemd and issue a warning.

this facility will work for any new service modules.
8 years ago
nyasukun adea1f2b80 fixed memoryerror when coping huge file (#16392)
* fixed

* support both python 2 and 3
8 years ago
Toshio Kuratomi 84c1697271 Only show the traceback for importing cryptography when in Ansible Debug. (#16795) 8 years ago
Toshio Kuratomi 15cee34f9e Update submodule refs 8 years ago
s-hertel 7e834f4178 Fixes #163 in galaxy-issues 8 years ago
Toshio Kuratomi 48a2773463 Find places where ziploader is used and change them to ansiballz so that people aren't confused when they google for information.information (#16715) 8 years ago
Alex Mirski-Fitton 7dc09adaf4 Make returning results after loading vars optional
Reinstates some functionality removed by commit 0ba9a6a but
makes the expensive operation optional (and default to off)
8 years ago
Shintaro Kaneko 372018dfce Fix typo in lib/ansible/parsing/__init__.py (#16761) 8 years ago
Connor Osborn b06c61c49b Fix exceptions thrown from cryptography import (#16723)
A simple import of cryptography can throw several types of errors. For example,
if `setuptools` is less than cryptography's minimum requirement of 11.3, then
this import of cryptography will throw a VersionConflict here. An earlier case
threw a DistributionNotFound exception.

An optional dependency should not stop ansible. If the error is more than
an ImportError, log a warning, so that errors can be fixed in ansible or
elsewhere.
8 years ago
James Cammarata d8a3feb976 Fix bug where getting role vars does not follow the dep chain
This bug was introduced in 3ced6d3, where getting vars from a role
did not follow the dep chain. This was originally hidden by the fact
that we got vars twice (from the block and from the roles directly).

Fixes #16729
8 years ago
Peter Sprygada e4b3032231 removes methods to write to dest from net_config 8 years ago
Peter Sprygada c4e2c0f487 Merge pull request #16728 from privateip/netcfg
minor update to the default comment tokens in netcfg
8 years ago
Peter Sprygada ab3c5a0a17 minor update to the default comment tokens in netcfg
* adds checkout /* and */ as comment delimiters
* now raises exception if invalid output keyword value is used
8 years ago
Peter Sprygada 05ca246ddc adds new function to check config for unsupported commands
Some commands fail when being set so the load_config function will
now filter those commands out and return them in the result key
as filtered.
8 years ago
Peter Sprygada e560bfeaca Merge pull request #16719 from privateip/action-plugin-vyos
add vyos action plugin for handling local operations
8 years ago
Toshio Kuratomi 9055d3ad5c Update submodule refs 8 years ago
Peter Sprygada e5e387562d add vyos action plugin for handling local operations
This plugin extends the functions of the net_config plugin to vyos
8 years ago
Peter Sprygada 7ecc75b555 Merge pull request #16718 from privateip/vyos
add common argument save_config to vyos_argument_spec
8 years ago
jctanner 238c6461f6 Add a function to check for killed processes in all strategies (#16684)
* Add a function to check for killed processes so that if any
threads are sigkilled or sigtermed, the entire playbook execution is aborted.
8 years ago
Brian Coca ae0c1bbc47 ansible-doc now notes when module has action plugin 8 years ago
James Cammarata 1905b7cc33 Submodule ref update 8 years ago
James Cammarata 153133132d Updating tests for new module feature for remote_src in unarchive
Fixes #10218
8 years ago
Peter Sprygada f0c8c9e55c add common argument save_config to vyos_argument_spec 8 years ago
Brian Coca ee815bc9a4 fxed typo 8 years ago
Toshio Kuratomi 786ee97c38 Update submodule refs 8 years ago
Brian Coca 3c39bb5633 fixed lookup search path (#16630)
* fixed lookup search path

added ansible_search_path var that contains the proper list and in order
removed roledir var which was only used by first_found, rest used role_path
added needle function for lookups that mirrors the action plugin one, now
both types of plugins use same pathing.

* added missing os import

* renamed as per feedback

* fixed missing rename in first_found

* also fixed first_found

* fixed import to match new error class

* fixed getattr ref
8 years ago
Chris Houseknecht 30c0ce1e60 Merge pull request #16680 from chouseknecht/devel
Fix find_image() not matching on tag
8 years ago
Brian Coca ed7623ecde J2 test docs (#16646)
* moved tests from filters to actual jinja2 tests

also removed some unused declarations and imports

* split tests into their own docs

removed isnan as existing jinja2's 'number' already covers same
added missing docs for several tests

* updated as per feedback
8 years ago
James Cammarata 245ce9461d Fix unreachable host/any_errors_fatal bug in linear strategy
2e003adb added the ability for tasks using any_errors_fatal to fail
when there were unreachable hosts. However that patch used the running
unreachable hosts data rather than the results from the current task,
which causes failures when any run_once or BYPASS_HOST_LOOP task is hit
after an unreachable host causes a failure. This patch corrects that by
using the current set of results to determine if any hosts were
unreachable during the last task only.

Fixes ansible/ansible-modules-core#4160
8 years ago
Chris Houseknecht 16a3f28f6e Fix find_image() not matching on tag 8 years ago
nitzmahone 31e963dd2a tkuratomi bugfix for BOMs in powershell modules
fixes #15998
8 years ago