Commit Graph

249 Commits (4f55bcc298669f61ee11fb244ec447762b01edba)

Author SHA1 Message Date
Michael DeHaan 30e6a659ae Merge pull request #8171 from jbenden/osx-10.10
Support for OS X 10.10 DP3.
2014-07-28 11:08:53 -04:00
Michael DeHaan 20f65f2c79 Merge pull request #8262 from icoloma/patch-1
Bugfix: bulletproof unexpected_error_msg at gce.py
2014-07-28 11:03:54 -04:00
Nacho Coloma 979824eedc Moved import to the top 2014-07-28 08:36:56 +02:00
James Cammarata 10a850c70f Merge branch 'new_arg_splitting' into devel 2014-07-24 21:27:25 -05:00
Michael DeHaan 630f080cf0 Start of unit tests for split_args function, moved split_args to utils since not needed by modules (so far). 2014-07-24 20:15:04 -04:00
Michael DeHaan b5d64fdb36 Some notes/comment upgrades on split_args. 2014-07-24 16:34:06 -04:00
James Cammarata 43154e5101 Using custom splitting function for module param counting 2014-07-24 14:42:35 -05:00
Michael DeHaan e143d7dab7 Merge pull request #7543 from yangliping/fix_local_facts_file_checking_portability
Fix portability issue when checking local facts file permission.
2014-07-24 09:37:22 -04:00
Michael DeHaan 635bea645c Merge pull request #7992 from dehylton/devel
fix swap translation on 4.x openbsd with 2.5.4 python
2014-07-24 09:34:38 -04:00
Nacho Coloma 57428c48a2 Bugfix: bulletproof unexpected_error_msg at gce.py
This method was still failing for me with a "missing http_code" message. After applying this change, the error message is:

```
msg: Unexpected response: {'value': 'PyCrypto library required for Service Account Authentication.'}
```

I wanted to contribute a rock-solid `unexpected_error_msg` implementation.
2014-07-23 16:45:24 +02:00
James Cammarata 84759faa09 Security fixes:
* Strip lookup calls out of inventory variables and clean unsafe data
  returned from lookup plugins (CVE-2014-4966)
* Make sure vars don't insert extra parameters into module args and prevent
  duplicate params from superseding previous params (CVE-2014-4967)
2014-07-21 11:20:49 -05:00
Joseph Benden da5e32b316 Needs additional divisor. 2014-07-18 07:55:24 -07:00
Joseph Benden b55791ef43 Support for OS X 10.10 DP3. 2014-07-16 12:37:11 -07:00
Ruggero Marchei 909955f2e2 fix get_distribution_version() on amazon linux 2014-07-15 18:04:46 +02:00
Bjorn Neergaard 08f97c0b9d Fix hostname when get_distribution_version() returns a string.
The distro version is a string ('jessie/sid') on Debian unstable and testing.
Because load_platform_subclass() evaluations every subclass as it loops,
comparing numbers when get_distribution_version() does not return a number will
break.

This patch fixes that by returning a number (`0`) when we have an invalid
version, instead of returning `None` or a string.
2014-07-10 11:27:03 -07:00
Casey Fitzpatrick 7115cb1f37 removed port from domain name qualification, fixes 7941 2014-07-02 19:54:50 -04:00
James Cammarata 81f35323e9 Revert "Fix get_distribution() for platforms that may have spaces"
This reverts commit 2493020d9f.
2014-07-02 09:44:44 -05:00
dewey hylton 379e1a49cb fix swap translation on 4.x openbsd with 2.5.4 python 2014-06-30 17:23:55 -04:00
mesk41in 488aec3936 Fix unsupported regexp parameter in assemble 2014-06-27 13:54:59 +04:00
James Cammarata 9564818e1e Merge branch 'fix_lineinfile_newlines' into devel 2014-06-23 12:38:12 -05:00
Ivo Senner f4fd9d366b Check for empty os-release file, fixes #7885 2014-06-22 04:08:59 +02:00
James Cammarata 3c3c710a58 Merge branch 'module_safe_eval' into fix_lineinfile_newlines 2014-06-20 00:16:52 -05:00
James Cammarata d8bb116c1a Merge branch 'devel' of https://github.com/tgolly/ansible into tgolly-devel 2014-06-19 22:41:58 -05:00
Michael DeHaan 5156794738 Merge pull request #7861 from cchurch/devel
Windows Remote Support
2014-06-19 22:10:41 -05:00
Matt Martz 09dd535296 Make helper functions more robust against undefined powershell objects 2014-06-19 14:26:36 -05:00
Matt Martz df8866b8bd Add examples for how to use powershell common functions 2014-06-19 14:25:50 -05:00
Matt Martz e4e610565c Add convenience function (Get-Attr) for getting an attribute/member from a powershell psobject 2014-06-19 14:25:50 -05:00
Matt Martz 90c98ada7c Add ConvertTo-Bool filter function in powershell common code 2014-06-19 14:25:50 -05:00
Chris Church 243cd877ae Add integration tests for fetch/slurp, make powershell fetch/slurp work as close as possible to existing fetch/slurp modules. 2014-06-19 14:25:28 -05:00
Matt Martz 97f4f56286 Add Exit-Json and Fail-Json powershell helper functions 2014-06-19 14:24:15 -05:00
Matt Martz a25c441300 Add shared functions to module_utils/powershell.ps1 and refactor powershell modules to utilize the common powershell code 2014-06-19 14:24:13 -05:00
James Cammarata 360d8b0fc2 Don't try to scan SSH signatures for non-ssh urls
Fixes #7812
2014-06-18 14:22:20 -05:00
James Cammarata 2493020d9f Fix get_distribution() for platforms that may have spaces
The new CentOS 7 beta lists the distribution as "CentOS Linux", which
breaks the distribution detection and class loading. This patch fixes
that by taking just the first entry in the string when a space is
detected.
2014-06-18 13:10:39 -05:00
James Cammarata 3529b1cb33 Merge branch '7763' of https://github.com/rmarchei/ansible into rmarchei-7763 2014-06-18 12:16:01 -05:00
Michael DeHaan 627ff30a6f Add module replacer capability for powershell files. 2014-06-17 12:30:34 -05:00
Ruggero Marchei e3f5af377f move get_distribution_version() to basic.py 2014-06-17 10:22:14 +02:00
James Cammarata 9b17e8a555 Merge pull request #7771 from jkramarz/issue-5761
Added missing fallback to hw_sector_size
2014-06-16 15:15:41 -05:00
Matt Bray 578e881142 fix for urls like ssh://git@github.com/ansible/ansible.git 2014-06-16 11:58:59 +01:00
Jakub Kramarz df3188cef0 Added missing fallback from physical_block_size to hw_sector_size in sectorsize fact discovery for kernels older than May 2009.
References #5761
2014-06-14 19:42:41 +02:00
James Cammarata 3fb3e7e6dc Properly parse urls for ssh-keyscan use
Previously, the get_fqdn() function in known_hosts.py only worked
with urls that started with git@, and ignored any urls that started
with a normal schema type (ie. http:// or ssh://). This patch corrects
that by using urlparse to parse the hostname portion out of urls that
have a proper schema.

Fixes #7474
2014-06-12 16:16:42 -05:00
James Cammarata 395192ffbc Merge pull request #7740 from jkramarz/issue-5761
changed sector size fact source
2014-06-12 08:56:03 -05:00
James Cammarata b4d130d086 Add a new password pattern to the run_command filter 2014-06-12 07:42:25 -05:00
Jakub Kramarz 4e4c9235e8 changed sector size fact source from hw_sector_size to physical_block_size, fixes issue 5761 2014-06-12 12:14:40 +02:00
Stefan Lapers 78f4842982 fix incorrect secondary ip handling, fixes #7724 2014-06-11 09:32:35 +02:00
Dag Wieers fd6f0cb4b4 Update facts.py 2014-06-05 15:09:43 +02:00
Dag Wieers 14a9966984 Added cross-platform uptime fact
Having an uptime fact allows you to check after a reboot whether the system was effectively rebooted.

```yaml
  - name: Safeguard - Was system properly rebooted ?
    action: fail msg="System was not properly rebooted"
    when: ansible_uptime > 900
```

This patch has been tested on Linux, Solaris and HP-UX.
2014-06-05 11:58:00 +02:00
James Cammarata 849b0f87ce Fix error when using os.getlogin() without a tty 2014-06-03 09:36:19 -05:00
James Cammarata b94bde9711 Merge pull request #7609 from jimi-c/issue_7553_su_copy
Support checking for su user to atomic_move
2014-05-30 15:46:34 -05:00
James Cammarata 061911c9c2 Merge pull request #7558 from dermute/pkg_mgr
added solaris fact detection for ansible_pkg_mgr
2014-05-27 16:23:31 -05:00
James Cammarata e99df21647 Support checking for su user to atomic_move
Fixes #7553
2014-05-27 16:04:02 -05:00
Alexander Winkler 4980e76a3a added solaris fact detection for ansible_pkg_mgr 2014-05-27 06:40:47 +00:00
rik2803 cfcbc954f5 Differentiate machinfo output key/val separator
get_hw_facts for HP-UX: machinfo in HP-UX B.11.23 uses '=' as separator between key and value, while B.11.31 uses ':'.
2014-05-26 07:56:46 +02:00
Yang Liping aedf134fc4 Fix portability issue when checking local facts file permission. 2014-05-26 10:55:32 +08:00
James Cammarata 0ac74aaf59 Also set the environment variables when resetting the locale to C 2014-05-19 23:22:46 -05:00
James Cammarata d44ed533b3 Default use_proxy to True for fetch_url()
Also added some error handling to the fetch_url() call in the
apt_repository module, so that failures to look up the PPA info
are properly handled.

Fixes #7322
2014-05-19 23:04:13 -05:00
James Cammarata 08406c0ee2 Adding the capability to proxy the ssl cert check
The ssl cert check will now respect the http and https proxy
environment settings. The url may also have the username/password
embedded, in which case basic auth will be used to connect to the
proxy server.

Fixes #7413
2014-05-19 16:00:32 -05:00
James Cammarata 285d9878ae Reset locale to 'C' if the specified one is invalid
Fixes #7448
2014-05-19 10:26:06 -05:00
James Cammarata df877f2e79 Check module_path permissions when creating ssh_wrapper for git
If the module directory is not writable/executable to the current user
(most likely because of a sudo to a non-root user), the ssh_wrapper
will be created in the default location for mkstemp() calls. To facilitate
the deletion of these new files, a new mechanism for cleaning up files
created by the module was also added.

Fixes #7375
2014-05-14 21:22:22 -05:00
Michal Mach 60451c20ab Fix known_hosts.py to work on older versions of python 2014-05-14 22:36:32 +02:00
James Cammarata 56515a38d5 Only chown on atomic move if the uid/gid don't match the src/tmp file
This is a corner case for remote file systems that don't support
chown() and where the source and destination for the atomic_move
are on that remote file system.

Fixes #7372
2014-05-14 09:59:12 -05:00
Christian Berendt 6676720ce5 fixed typos found by RETF rules in PY files
rules are avaialble at https://en.wikipedia.org/wiki/Wikipedia:AutoWikiBrowser/Typos
2014-05-03 18:40:05 +02:00
James Cammarata 54b1f820fb Modify the way we set the localization environment
Previously, we set the LANG (and LC_CTYPE) environment variables
directly in the module code and applied them with os.environ().
Instead, we are now pre-pending those variables to the environment
string used to execute the command which allows the user to
override the localization values by setting the environment values
directly (even on a per-task basis):

  - subversion: repo=file:///path/to/repos/svn_über dest=/tmp/svntest
    environment:
      LANG: "C"
      LC_CTYPE: "en_US.UTF-8"

So if a user wishes to default their LANG back to C, they can still
avoid unicode issues by doing the above.

Fixes #7060
2014-05-01 10:34:53 -05:00
Joost Cassee 978e6d2cd6 Make concatenating certs robust in urls.py
Add a newline after each certificate file explicitly to avoid problems
with files that do not end with a newline themselves.
2014-04-30 21:46:37 +02:00
Jiri Barton 9da06274a8 Set proper file permisions when a file is created with atomic_move
Fixes #7196
2014-04-29 08:41:22 -05:00
Michael DeHaan 9a6998aa17 While this code is unused, this remote module copy of this function should not be carried around in the source code. 2014-04-29 08:12:11 -04:00
Logos01 424ee36e05 Enable facts module on older SuSE systems
Modified logic of distribution_release for SuSE to retain the last discovered key/value pair's value in /etc/SuSE-release that contains a '=' character.
2014-04-28 14:37:23 -07:00
Michael DeHaan ad04b455d3 add missing license header 2014-04-24 10:31:04 -04:00
James Cammarata 117952cf6c Fixing a bug in the new fetch_url username/password logic 2014-04-24 00:44:39 -05:00
James Cammarata 89fa9b7305 Add parameters to get_url for the url username/password
Fixes #6928
2014-04-24 00:26:50 -05:00
James Cammarata c115c34a1f Set the default LANG to en_US.UTF-8 and also set LC_CTYPE
Fixes #6737
2014-04-22 00:48:32 -05:00
Brian Coca c3e559b914 should now work with versions older than 8.4 2014-04-21 21:00:58 -04:00
faust64 78b9a11ccf Update facts.py
Fixes #7093 --devel
2014-04-21 19:44:47 +02:00
James Cammarata 68c30548e0 Properly catch and decode unicode strings in module _log_invocation()
Fixes #7084
2014-04-21 11:33:23 -05:00
James Cammarata 39c6141b4a Merge pull request #7082 from bcoca/freebsd_mtu_fix
fixed issue with FreeBSD network facts
2014-04-21 10:53:22 -05:00
Brian Coca e5f297697a ifconfig changed on FreeBSD, tested this on 8,9 and 10 latest stable
versions and it now works
2014-04-19 22:03:30 -04:00
Brian Coca bc23926f42 fixed ETIME issue on FreeBSD 8 through 10, which broke all fact
gathering
2014-04-19 21:42:56 -04:00
James Cammarata ae29e43f93 Merge branch 'issue_7009_nfs_selinux' into devel 2014-04-18 22:21:03 -05:00
James Cammarata 3715482d7c Determine selinux context for NFS mount points correctly
Fixes #7009
2014-04-18 09:39:58 -05:00
Wim 6ed4ca97a8 hint to install python-ssl on redhat systems 2014-04-18 00:07:07 +02:00
James Cammarata d240d073eb Changing SSL cert detection method to allow for auto-negotiation of SSL protocols
Fixes #6904
2014-04-15 13:45:21 -05:00
James Cammarata 23c5f4524d Make sure args in run_command are encoded for shlex.split calls on py2.6 2014-04-15 13:04:41 -04:00
James Cammarata eebc72ab9b Add a timeout decorator for timing out functions that may hang
Fixes #6891
2014-04-08 13:21:42 -05:00
James Cammarata 9ca8c3262c Switch module safe_eval to ast.literal_eval 2014-04-08 09:05:07 -05:00
Eric Lake 7f9736198a add distribution_major_version to fact gathering 2014-04-04 11:41:20 -05:00
James Cammarata 82b24c162e Adding delimiter fixes to action_plugin + fixing local assembling with a delimiter
Also added a new integration test for assemble using local assembly
with a delimiter.
2014-04-03 16:32:35 -05:00
Harlan Lieberman-Berg 876b8085aa Add directory_mode to common file parameters to prevent errors. 2014-04-02 17:41:39 -04:00
Tim G c307a73e28 Check for errors from adb, may not work on all systems. 2014-04-01 22:36:19 +10:00
Tim G 285d4f3fa6 If memory not available in syslog.log, catch error, attempt to find it with adb 2014-04-01 21:55:29 +10:00
GuiGui2 b9613665dd Setup module: Additional facts when using ansible with Linux on System z
- Improved parsing of /proc/cpuinfo to take the specifics of Linux on
System z. ansible_processor and ansible_processor_cores are now
completed.
- Also improved virtualization facts in the same environment, parsing
the output of /usr/bin/lscpu to populate virtualization_type and
virtualization_role more precisely. If lscpu is not available, then
stick to the previous behavior.
2014-03-31 15:30:12 +02:00
James Cammarata b698f7a44b Add option to create host_key directory if it doesn't exist
Fixes #6731
2014-03-30 01:34:33 -05:00
Michael DeHaan a6b25e8657 Allow type=list module arguments to accept integers and floats. 2014-03-28 11:19:49 -04:00
Michael DeHaan 9921f804f9 Merge pull request #6643 from herbygillot/fact-full-hostname
Add a fact providing the full hostname, without the domain portion
2014-03-27 17:09:34 -04:00
Cristian Ciupitu 1eaf85b89f Micro-optimization: replace s.find(x)!=-1 with x in s
timeit shows a speedup of ~3x on Python 2.7.5 x86_64.
It also makes the code a bit shorter.
2014-03-27 20:35:20 +02:00
James Tanner 3194fbd365 Fixes #6655 catch unicode encoding errors before sending to syslog 2014-03-25 16:07:12 -04:00
James Cammarata 4ea12c1b86 Make sure stat of dest is available in atomic_move
Fixes #6682
2014-03-25 14:03:21 -05:00
Michael DeHaan 3eecc039b9 Merge pull request #6656 from Jmainguy/setup
Added ansible_date_time.weekday as a fact. This returns Monday,Tuesday,W...
2014-03-25 13:32:57 -04:00
Herby Gillot 94297950a0 Name platform.node() fact as "nodename" 2014-03-25 11:20:19 -04:00
Sébastien Gross ef6b437d0d Fix TypeError when using old simplejson lib.
On some very old simplejson does not support the 'encoding' and give
following exception:

   TypeError: __init__() got an unexpected keyword argument 'encoding'

This fix runs json.dump with no encoding key (such as before #a023cb) on
TypeError exception only.
2014-03-25 14:50:29 +01:00
James Cammarata bc93732b1d Catch permissions errors related to opening a known_hosts file in modules
Fixes #6644
2014-03-24 16:32:31 -05:00
James Cammarata db345391e3 Fixing ownership when atomic_move is creating a file while sudo'ing
Fixes #6647
2014-03-24 15:10:43 -05:00