Commit graph

9271 commits

Author SHA1 Message Date
Jamie Hannaford
0eef7cadfa Add wait and wait_timeout options for provisioning servers 2016-12-08 11:23:28 -05:00
Jason DeTiberus
c2bc5a20fa bugfixes for redhat_subscription
- correctly return pool ids for newer versions of subscription-manager
- allow for managing subscriptions after initial registration.
2016-12-08 11:23:28 -05:00
David Shrewsbury
94ae8bbc9b Update os_router to the latest version
This version uses the latest shade for a cleaner interface,
support for check mode, and updating an existing router.
2016-12-08 11:23:28 -05:00
Monty Taylor
5ca11fa255 Add OpenStack Router module
Also deprecate old quantum_router module
2016-12-08 11:23:28 -05:00
Vladimir Mihailenco
de8c453ac6 rackspace: pass full path to the isdir. 2016-12-08 11:23:28 -05:00
Sam Thursfield
cad0adc691 Fix permissions issue with 'cron' module
I have a task like this in a playbook. The ansible_ssh_user is 'root'
for this host.

    - cron:
        hour: 00
        job: /home/backup/backup.sh
        name: baserock.org data backup
        user: backup

Running it gave me the following error:

    TASK: [backup cron job, runs every day at midnight] ***************************
    failed: [baserock-backup1] => {"failed": true}
    msg: crontab: can't open '/tmp/crontabvVjoZe': Permission denied
    crontab: user backup cannot read /tmp/crontabvVjoZe

The temporary file created by the 'cron' module is created with the
Python tempfile.mkstemp() function. This creates a file that is readable
only by 'root' (mode 600). The Busybox `crontab` program then checks if
the file is readable by the 'backup' user, and fails if it isn't. So we
need to make sure the file is world-readable before running `crontab`.
2016-12-08 11:23:28 -05:00
Rowan Wookey
7d85477acb Fixes #542 error when ec2_asg arguments aren't specified
If max_size/min_size/desired_capacity are omitted
when updating an autoscaling group use the existing values
2016-12-08 11:23:28 -05:00
Robb Wagoner
aed7d903ee Include a CFN stack's resources in the result 2016-12-08 11:23:28 -05:00
Jan Inowolski
3d45384aed update git remote url before ls-remote
related to #8177
2016-12-08 11:23:28 -05:00
Matt Ferrante
74b4882415 ec2_ami can update an ami's launch_permissions 2016-12-08 11:23:28 -05:00
Hideki Saito
2cb83fb196 The nova_compute module create a list of un-use floating ip by value of fixed_ip.
Fixes #249
2016-12-08 11:23:28 -05:00
Jérémie Astori
edf531efd7 Add recursive support for ACL module (fix #5053, fix #5550, fix #7276) 2016-12-08 11:23:28 -05:00
muffl0n
6482d1344a Allow additional hashing algorithms. Directly use hashlib and check if used algorithm is supported. 2016-12-08 11:23:28 -05:00
Robert Jailall
6530e76880 Refactor ec2_snapshot to make it more testable 2016-12-08 11:23:28 -05:00
Hagai Kariti
83aff77c26 made wait default to True in ec2_snapshot 2016-12-08 11:23:28 -05:00
Hagai Kariti
fcd2b354b2 Add to the ec2_snapshot module the ability to create a snapshot only if one hasn't recently been created
- Added snapshot_max_age parameter
- Updated docs
- Made the default value of wait to be false, as it used to be
2016-12-08 11:23:28 -05:00
Toshio Kuratomi
49ee99fe73 result is now a dict and so needs different access syntax
Fixes #1848
2016-12-08 11:23:27 -05:00
Toshio Kuratomi
b91684b8ad Remove unneeded urllib2 import 2016-12-08 11:23:27 -05:00
Brian Coca
ae18b7633c returned version added 2016-12-08 11:23:27 -05:00
James Cammarata
99075976a8 Fix missing params to download_s3file in s3 2016-12-08 11:23:27 -05:00
James Cammarata
689f13548f Fixing s3 failures when bucket names contain dots 2016-12-08 11:23:27 -05:00
Brian Coca
9241955076 added missing version_Added to extra_hosts fixes #1843 2016-12-08 11:23:27 -05:00
Pierre-Louis Bonicoli
fd88e8af53 fix error occurring with Debian
Error was: AttributeError: 'SourcesList' object has no attribute 'repos_urls'
2016-12-08 11:23:27 -05:00
Abhijit Menon-Sen
9b496818cf Simplify distribution test
If it's Ubuntu, use UbuntuSourcesList; if it's any other apt-friendly
distribution, use SourcesList; otherwise, fail.
2016-12-08 11:23:27 -05:00
Abhijit Menon-Sen
ca50b5c5e0 Make SourcesList __init__ method also set self.module
This was originally required to allow other methods in SourcesList to
fail, but subsequent changes rendered that unnecessary, and it's just
a cleanup now, and avoids passing in module separately to save().
2016-12-08 11:23:27 -05:00
Abhijit Menon-Sen
46c015375d Clarify HAVE_PYTHON_APT/install_python_apt handling in apt_repository
1. Don't test check_mode in both the caller and in the callee.
2. Don't test HAVE_PYTHON_APT inside an if that tests HAVE_PYTHON_APT
3. Don't be irritatingly vague about why the module fails ("You may be
   seeing this because…").

Note that if «apt-get -y install python-apt» succeeds with rc==0, but
for some reason python_apt is not usable afterwards, this will break
because the imports in install_python_apt aren't wrapped inside a
try/except.

In other words, we assume that install_python_apt either succeeds or
fails with a traceback. This commit doesn't affect that behaviour.
2016-12-08 11:23:27 -05:00
Abhijit Menon-Sen
7643d3aecf Fix call to _expand_ppa 2016-12-08 11:23:27 -05:00
brannon
824503fc19 Fix windows feature example to actually install IIS 2016-12-08 11:23:27 -05:00
Brian Coca
7d660adb39 changed verbose override variable 2016-12-08 11:23:27 -05:00
Micheal Waltz
5f0d989973 Fix incorrect var name for api_version 2016-12-08 11:23:27 -05:00
Luke Rohde
05974273b3 Use msg kwarg to pass error message in ec2_snapshot 2016-12-08 11:23:27 -05:00
Brian Coca
cd072e3090 added version added to headers in s3 2016-12-08 11:23:26 -05:00
Jaime Gago
b203deee31 Fix example indentation bug 2016-12-08 11:23:26 -05:00
Brian Coca
92dfe33021 defined DEFAULT_DOCKER_API_VERSION to avoid it erroring out before we send the message that docker.py is missing 2016-12-08 11:23:26 -05:00
Toshio Kuratomi
a01a800b65 Fi the local_rsync_path parameter used by the action plugin 2016-12-08 11:23:26 -05:00
Brian Coca
3b94910d4e minor doc fixes to get_url 2016-12-08 11:23:26 -05:00
Toshio Kuratomi
103b150090 Convert object into dict so it will turn into json properly 2016-12-08 11:23:26 -05:00
James Cammarata
05c6732462 Prefer non-zero rc's over text analyis in service status checks
Fixes ansible/ansible#10441
2016-12-08 11:23:26 -05:00
Bill Nottingham
d4069a8a8a Warn on use of sudo, etc. in shell/command. 2016-12-08 11:23:26 -05:00
James Cammarata
ba9ba7d0f5 In copy, set the mode before running th validation
Because some programs that do validation (like visudo) may require
the permissions to be more restricted.

Fixes ansible/ansible#11385
2016-12-08 11:23:26 -05:00
saito-hideki
19cd35806f Add Solaris support in hostname module
feature_pull_request: #1804
2016-12-08 11:23:26 -05:00
Brian Coca
357d542bb3 clarified error messages to actually give back ansible module option instead of internal boto field name 2016-12-08 11:23:26 -05:00
Jesse Keating
a913370687 Handle non-updatable openstack subnet details
Some things cannot be updated via the API, so check for those and fail
if the user is wanting to update them. Also don't try to update ipv6
stuff, as that doesn't work and will cause a traceback.
2016-12-08 11:23:26 -05:00
Jens Carl
c0eedc6e87 Fix missing alias "groups". 2016-12-08 11:23:26 -05:00
Brian Coca
56354731ce fixed fragment docs 2016-12-08 11:23:26 -05:00
Brian Coca
e5fe763474 fixed version added 2016-12-08 11:23:26 -05:00
Feanil Patel
e4898a4348 If overwrite is set, download eagerly.
If the we are going to overwrite the file anyway,
there is no need to do any checksums locally or
grab the remote etag.
2016-12-08 11:23:26 -05:00
Micheal Waltz
950701ba3e Use a if/else instead to avoid loading possibly invalid values for Memory 2016-12-08 11:23:25 -05:00
Micheal Waltz
af5e402b87 Set the API version when checking differences in containers and use this to determine the location of the Memory value depending on the version used.
In v1.18 and earlier it was ['Config']['Memory'], but in v1.19 it
changed to ['HostConfig']['Memory'].
2016-12-08 11:23:25 -05:00
billwanjohi
167e940e78 iam: don't delete passwords by default 2016-12-08 11:23:25 -05:00
Igor Khomyakov
9a599e35c1 fixed 'present' 2016-12-08 11:23:25 -05:00
Micheal Waltz
f36666ae1d Use proper HostConfig element which contians the proper Memory value - fixes #1766 2016-12-08 11:23:25 -05:00
Lars Kellogg-Stedman
3d79d96a1b restore mem_limit
mem_limit got lost in the #1744; this restores it.  Thanks to @dgromov
for the report.
2016-12-08 11:23:25 -05:00
Lars Kellogg-Stedman
562341049e docker: fix parsing of docker __version__ string
If `docker.__version__` contains non-digit characters, such as:

    >>> import docker
    >>> docker.__version__
    '1.4.0-dev'

Then `get_docker_py_versioninfo` will fail with:

    ValueError: invalid literal for int() with base 10: '0-de'

This patch corrects the parsing of the version string so that
`get_docker_py_versioninfo` in this example would return:

    (1, 4, 0, '-dev')
2016-12-08 11:23:25 -05:00
Mike Putnam
9623cd570c Add missing GPLv3 License header
Fixes #1643
2016-12-08 11:23:25 -05:00
Ash Caire
682bf34a43 add headers param to s3 uploads 2016-12-08 11:23:25 -05:00
Dan
5b4e7c797f Added header support
Added the ability to pass custom http headers to the fetch_url method.
2016-12-08 11:23:25 -05:00
KIKUCHI Koichiro
dab7305d3b Fix service enabled check failure on FreeBSD 2016-12-08 11:23:25 -05:00
Sébastien Gross
0fd3ece053 Allow '*' as empty password.
If `password` is defined as `*` `useradd` or `usermod` returns an error:

    msg: usermod: Invalid password: `*'

This works very well on Linux host to not define any password for a
user (mainly useful if your setup is only based on SSH keys for
auth). On OpenBSD this does not work, so we have to ignore the encrypted
password parameter if it defined as `*`.
2016-12-08 11:23:25 -05:00
Andrey Trubachev
b93633d7c2 Fix python-2.4 compatibility 2016-12-08 11:23:25 -05:00
Andrey Trubachev
c55187ff42 Fix 'wait_for' doesn't work with ipv6only host 2016-12-08 11:23:25 -05:00
khassen
8b60dd349d Use the common/shared MD5 function. 2016-12-08 11:23:25 -05:00
Brian Coca
f15ce1433a added version_added to body_format in uri 2016-12-08 11:23:25 -05:00
fti7
581ce7dd32 mount: Support for Check-Mode 2016-12-08 11:23:24 -05:00
Greg DeKoenigsberg
ffb1cab213 Add new policy guidelines for Core 2016-12-08 11:23:24 -05:00
Johan Haals
6a9a4d905a ensures API compatibility for read_only containers 2016-12-08 11:23:24 -05:00
Guilherme Carlos
aaac05c96c Fix login_user on mysql_user
`login_username` was provided but `login_user` is the correct option
2016-12-08 11:23:24 -05:00
Toshio Kuratomi
55271467d4 Remove validate_certs as the url is not user settable so we always want to validate the certificate 2016-12-08 11:23:24 -05:00
Artur Cygan
d71b1444a9 Update route53.py
Fix typos
2016-12-08 11:23:24 -05:00
Chris Church
d8f5a34d85 Save user after creating before trying to read/set other properties. Fixes #1241 2016-12-08 11:23:24 -05:00
Johan Haals
c88feaff7e changed version_added for read_only param
this feature will be released in 2.0
2016-12-08 11:23:24 -05:00
Baraa Basata
63a619fbae Fix iam_policy example 2016-12-08 11:23:24 -05:00
Will Thames
e5d96dc934 Correct handling of empty role_attr_flags
role_attr_flags is the empty string by default, not None.
2016-12-08 11:23:24 -05:00
Yuhui Huang
621b396bd9 Checking pip uninstall output in both stdout and stderr 2016-12-08 11:23:24 -05:00
Johan Haals
6231a9d52f Added support for --read-only Docker containers
Adds support for mounting the container's root filesystem as read only.
2016-12-08 11:23:24 -05:00
Constantin
7a7b8b913a Added additional stat output values
Included in the output as well:
 - file extension
 - file attributes
 - file owner
 - creation, last access and last write timestamps (in UNIX format)
2016-12-08 11:23:24 -05:00
Jeff Widman
70b3290a3b Move validate command into doc fragment and fix a few typos 2016-12-08 11:23:24 -05:00
Chris AtLee
e7af5d2384 Add support for 'update' parameter to hg module 2016-12-08 11:23:24 -05:00
Jesse Sandberg
807feb3ac4 Validate variable, return only the found variable value instead of tuple
Docs imply the mysql_variables is used to operate a single variable therefore
- fail before making any db connections if variable is not set
- validate chars for mysql variable name with re.match(^[a-z0-9_]+)
- use "SHOW VARIABLE WHERE Variable_name" instead of LIKE search
- getvariable() returns only the value or None if variable is not found
- the module returns only the found variable value instead of tuple for easier operation eg. as registere variable in tasks
2016-12-08 11:23:24 -05:00
sysadmin75
9bd58bd224 Fix to revoke privileges for mysql user = '' Issue #9848 2016-12-08 11:23:24 -05:00
Christian Hammerl
426ec96ea5 docker: add support to add/drop capabilities 2016-12-08 11:23:23 -05:00
Brian Coca
9b38e47d70 added rickmendes as maintainer 2016-12-08 11:23:23 -05:00
Brian Coca
1976ed931a minor doc fixes to docker_user 2016-12-08 11:23:23 -05:00
Brian Coca
b62a6f01ab added version_Added for new signal option in docker module 2016-12-08 11:23:23 -05:00
Brian Coca
723a48ca73 added versionadded to new option in pip module 2016-12-08 11:23:23 -05:00
Brian Coca
07fedaa03a corrected v ersion added 2016-12-08 11:23:23 -05:00
ayush
f46daacf67 Updated doc strings so each character isn't considered a line 2016-12-08 11:23:23 -05:00
Toshio Kuratomi
8eba30b488 Deprecated _ec2_ami_search now verifies SSL certificates 2016-12-08 11:23:23 -05:00
Daniel Kerwin
277065a302 Too late for 1.8 2016-12-08 11:23:23 -05:00
Daniel Kerwin
3a68101fa3 Switch to _cap_ver_req and add cpu_set to create_containers 2016-12-08 11:23:23 -05:00
Alan Scherger
861d260b6c fix docs; only delete network if fwname is not provided 2016-12-08 11:23:23 -05:00
HelenaTian
1b614172f5 Update gce.py to correctly handle propagated metadata type from a mother template
My project is using Ansible to automate cloud build process. Ansible has a core module gce.py for managing GCE instances.
  We've come across a use case that's not yet supported - when executing ansible-playbook, if a child template is included, then metadata which is defined in and propagated from the mother template is treated as string type and not parsed correctly(which instead is dictionary type), and triggers release flow failure.
   We currently put some fix by explicitly casting metadata to string type in our own branch, but would like to contribute the fix to Ansible so that everyone onboarding GCE and using Ansible for release management could benefit from it, or hear owner's opinion on fixing the issue if there's a better fix in owner's mind:)
2016-12-08 11:23:23 -05:00
Petros Moisiadis
68ef885e71 make migrate command idempotent with django built-in migrations
Django since version 1.7 has built-in migrations, so no need to have south installed with recent django versions. The 'migrate' command works with built-in migrations without any change, but the output is different than the output produced by south, which breaks idempotence. This commit fixes this.
2016-12-08 11:23:23 -05:00
nemunaire
f37510ebaa Add optional signal parameter when killing docker container 2016-12-08 11:23:23 -05:00
Isaac Simmons
07ccd3c86b Handle ini file properties that contain interpolation errors in the initial values 2016-12-08 11:23:23 -05:00
Wouter Bolsterlee
3d7e3e3c3d Add a virtualenv_python argument to the pip module
This allows specifying the Python version to use when creating the
virtualenv. See issue #586.
2016-12-08 11:23:23 -05:00
Wouter Bolsterlee
5a0157a4f2 A few coding style cleanups 2016-12-08 11:23:22 -05:00
Wouter Bolsterlee
e8a0b8b8ae Fix typo in version_added field. 2016-12-08 11:23:22 -05:00
Daniel Kerwin
5b029bde98 Renamed to cpu_set 2016-12-08 11:23:22 -05:00
Daniel Kerwin
940baa92a6 Add support for cpusets. Requires docker-py >= 0.6.0 2016-12-08 11:23:22 -05:00