Commit Graph

271 Commits (ad6999e2ebd65a322ac7f1e5bde84a3b12a8b91d)

Author SHA1 Message Date
BradLook 766413e79d Allow cron to target remote user (#4270) 2016-12-08 11:24:49 -05:00
Michael Scherer cd3c454917 Add a example with a non service unit (#4355)
Since the documentation focus mostly on service
units, a explicit example may help people realizing
it can be used for socket and timer too.
2016-12-08 11:24:48 -05:00
Michael Scherer 3c2110215c Do not hardcode default ssh key size for RSA (#4074)
By default, ssh-keygen will pick a suitable default for ssh keys
for all type of keys. By hardocing the number of bits to the
RSA default, we make life harder for people picking Elliptic
Curve keys, so this commit make ssh-keygen use its own default
unless specificed otherwise by the playbook
2016-12-08 11:24:47 -05:00
Christian Schwarz e526b2ad3d system/service.py: fix false-positive service enablement on FreeBSD. (#4283)
sysrc(8) does not exit with non-zero status when encountering a
permission error.

By using service(8) `service <name> enabled`, we now check the actual
semantics expressed through calling sysrc(8), i.e. we check if the
service enablement worked from the rc(8) system's perspective.

Note that in case service(8) detects the wrong value is still set,
we still output the sysrc(8) output in the fail_json() call:
the user can derive the exact reason of failure from sysrc(8) output.
2016-12-08 11:24:46 -05:00
Marcos Diez f10413b919 better authorized_keys documentation (#3739) 2016-12-08 11:24:43 -05:00
Brian Coca 72eaf0281a updated checkmode for update-rc.d
fixes #4146
2016-12-08 11:24:43 -05:00
jctanner d5b35eb8db add gather_timeout parameter (#4093) 2016-12-08 11:24:42 -05:00
Christian Schwarz e25cb4df77 service module: use sysrc on FreeBSD (#4042)
* service module: use sysrc on FreeBSD

sysrc(8) is the designated userland program to edit rc files on FreeBSD.

It first appeared in FreeBSD 9.2, hence is available on all supported
versions of FreeBSD.

Side effect: fixes #2664

* Incorporate changes suggested by bcoca.

- Use `get_bin_path` to find sysrc binary.
- Only use sysrc when available (support for legacy versions of FreeBSD)
2016-12-08 11:24:41 -05:00
Brian Coca 186db40864 make daemon reload first thing always run
otherwise service detection can fail before we run it which might
be required to actually detect the service.
2016-12-08 11:24:41 -05:00
Michael LoSapio 20d8103b53 Showing some of the sysctl settings in proper yaml format per Ansible documentation (#4073) 2016-12-08 11:24:41 -05:00
Allen Sanabria 6d6b8a1823 Fixes #1715 Allow authorized_module accept multi. (#3573)
This will allow the authorized_module to accept options that can be
passed multiple times into ssh options. For instance permitopen.
2016-12-08 11:24:38 -05:00
Thomas Quinot 0bd32c3465 Clarify behaviour when state=present and no name is given (#3904) 2016-12-08 11:24:36 -05:00
Robin Naundorf 03515fc26c Fixed Typo in Examples of systemd module (#3870) 2016-12-08 11:24:35 -05:00
Brian Coca 03f06ca2e8 fixed issue with multiline output from systemd
fixes #3868
2016-12-08 11:24:35 -05:00
Brian Coca cffe358260 fixed enabled state 2016-12-08 11:24:33 -05:00
Brian Coca df1b03d0c6 fixed reported state 2016-12-08 11:24:33 -05:00
Erik Nadel 6f5dfcf1bd Added statement about escaping characters in chron tasks (#3770) 2016-12-08 11:24:32 -05:00
Dmitry Marakasov 13d7a61160 Fix crontab argument order for writing (#3750)
Currently, when writing user's crontab, ansible calls

    crontab <file> -u <user>

This is incorrect according to crontab(1) on both FreeBSD and Linux,
which suggest that file argument should be the last.

At least on FreeBSD, this leads to incorrect cron module bahavior which
writes to root's crontab instead of users's
2016-12-08 11:24:31 -05:00
Brian Coca 01819bbc9d fixed enabled reporting 2016-12-08 11:24:31 -05:00
Brian Coca 38d71b9eef fixed typo 2016-12-08 11:24:31 -05:00
Brian Coca 472d5c11ef added state in results for backwards compat 2016-12-08 11:24:31 -05:00
Brian Coca 8085678dc8 first draft systemd service plugin (#3660)
* first draft systemd service plugin

* now systemd status handles multiline values
2016-12-08 11:24:31 -05:00
Marcos Diez d34c5dfd69 Added one extra example in the authorized_key module. (#3637) 2016-12-08 11:24:30 -05:00
Ken Mitchell 8c2b333a73 Proposed fix to not require src and fstype arguments for mount. Issue #1259. (#1357) 2016-12-08 11:24:30 -05:00
jctanner c952753735 Do not ignore the primary group if modifying the list of secondary groups. (#3585)
Fixes #1118
2016-12-08 11:24:30 -05:00
Michael Scherer cca89ef489 Port seboolean to py3/py2.4 syntax (#3679) 2016-12-08 11:24:29 -05:00
Michael Scherer c793571bc3 Port mount to python3 and python 2.4 compatible syntax (#3678) 2016-12-08 11:24:29 -05:00
Michael Scherer fd61e81764 Port authorized_keys to a syntax compatible with python3 and 2.4 (#3677) 2016-12-08 11:24:28 -05:00
Michael Scherer 907b3fb667 Port hostname to a py24 and py3 compatible syntax (#3676) 2016-12-08 11:24:28 -05:00
Michael Scherer e02f401225 Port sysctl to a py3 and py24 compatible syntax (#3675) 2016-12-08 11:24:28 -05:00
Michael Scherer f0fd1109dd Port cron to a py3 and py24 compatible syntax (#3674) 2016-12-08 11:24:28 -05:00
Michael Scherer f2212dc41a Port user module to python3 and 2.4 compatible syntax (#3673) 2016-12-08 11:24:28 -05:00
Toshio Kuratomi 93fe022aa4 Port to dual python2/python3 compat 2016-12-08 11:24:27 -05:00
Toshio Kuratomi e10b7e1773 Port ping to dual python3/2 compat. 2016-12-08 11:24:27 -05:00
James Tanner bc39f8c42e Revert "remove checking of stderr for insserv (#1846)"
This reverts commit 2ee6e4cf668a9bba77c3bb019d473f3614563838.
2016-12-08 11:24:26 -05:00
TheSameCH ca8bf6ab4c remove checking of stderr for insserv (#1846)
stderr of insserv can also contain warnings which can be ignored. checking rc only is more accurate.
fixes #1502
2016-12-08 11:24:26 -05:00
Brian Coca 8a4257d297 removed incorrect defaults from docs 2016-12-08 11:24:23 -05:00
Konstantin Gribov 9284c80039 Escape spaces, backslashes when create new entry in fstab (#3193)
Supplement to PR #1454 and issue #530.

Fixes #3192.
Fixes #1861 (introduced by PR #1454).

Signed-off-by: Konstantin Gribov <grossws@gmail.com>
2016-12-08 11:24:23 -05:00
Guido Falsi 582a5bccc8 Make FreeBSD subclass respect the sleep option. 2016-12-08 11:24:20 -05:00
Michael Scherer 5b32a299a5 Change home and ssh_key_file to 'path' in user module 2016-12-08 11:24:20 -05:00
Joshua Kugler 15ae8c8e0b Fix mount's handling of passno 2016-12-08 11:24:17 -05:00
Robin Roth ee06cd27b2 use custom ismount function in mount module (#2737)
* based on cpython os.path.ismount
* includes patch from http://bugs.python.org/issue2466
* fixes #2186
* when the upstream bug is fixed this should be removed/rewritten
* use ismount from module_utils
2016-12-08 11:24:17 -05:00
Toshio Kuratomi 4c40886814 Remove the ignore_ohai and ignore_facter parameters as the functionality was merged into gather_subset 2016-12-08 11:24:12 -05:00
Tobias Wolf 368cf59e4b Add diff and check mode to cron module
supports not writing backup file in check mode and new environment
vars.

![example screenshot](http://i.imgur.com/mkAThq8.png)
2016-12-08 11:24:12 -05:00
Yannig Perré 02abe0b7c9 Use list type in order to convert directly gather_subset option into list. 2016-12-08 11:24:12 -05:00
Yannig Perré 12804a80b6 Add a way to restrict gathered facts in Ansible: - Using gather_subset options - By ignoring ohai/chef or facter/puppet facts 2016-12-08 11:24:12 -05:00
Joao Carreira 92d76e8828 added support for sles 10 & 11 2016-12-08 11:24:11 -05:00
Brian Coca 9e0aef8ea2 docs updates and fixes
fixes http://github.com/ansible/ansible/issues/14876
2016-12-08 11:24:11 -05:00
davidobrien1 072c68ea79 Restore filter on Windows and version reference for Windows facts. 2016-12-08 11:24:10 -05:00
David O'Brien ce7a86b4ce Add documentation to setup.py and remove use of $params.fact_path in setup.ps1 2016-12-08 11:24:09 -05:00
Toshio Kuratomi 646d0e406d Set one parameter to be type path 2016-12-08 11:24:08 -05:00
Ton Kersten b58e16ed3d Fix facter path
In Puppet 4 and in the PE edition, the Puppet tree is installed in
`/opt/puppetlabs/...` and all commands can be reached from
`/opt/puppetlabs/bin`.
2016-12-08 11:24:07 -05:00
Matt Martz aaf762573e Various simple linting type cleanups on modules 2016-12-08 11:24:06 -05:00
jjshoe a160d5426d List which version it was added
fixes https://github.com/ansible/ansible-modules-core/issues/2605
2016-12-08 11:24:05 -05:00
Luca Berruti feb309e3cf Typo. 2016-12-08 11:24:04 -05:00
Brian Coca b5c9945485 avoid chmod in check mode 2016-12-08 11:24:04 -05:00
Brian Coca 5aff573098 revamped checkmode support in user module
- defaulted to commands not executing in checkmode
- added force run for info gathering (for setting changed)
- added debug for what would have been run in check mode
- added check mode for spots that made changes using system calls instead of command
- removed now redundant checkmode checks

better failure now, if i missed anything, it will misreport changed value
instead of old default of actually making the change in checkmode
2016-12-08 11:24:04 -05:00
Matt Clay 642746d0a3 Make modify_user_usermod honor check mode on AIX. 2016-12-08 11:24:03 -05:00
Matt Clay 04ad3fe304 Make modify_user honor check mode on OS X. 2016-12-08 11:24:02 -05:00
Matt Clay c87f70429b Make modify_user honor check mode on FreeBSD. 2016-12-08 11:24:01 -05:00
Toshio Kuratomi f6aa1ff9a4 Remove duplicate documentation fields 2016-12-08 11:24:01 -05:00
Toshio Kuratomi b6ff36bed3 Fix documentation build in hostname 2016-12-08 11:24:01 -05:00
Hiroaki Nakamura f2246deaf9 Doc: Add NOTE about hostname modules does not modify /etc/hosts 2016-12-08 11:24:00 -05:00
Thomas Quinot ef3308159f Allow cron_file to be an absolute path
Support specifying an absolute path (typically /etc/crontab) rather than
a path relative to /etc/cron.d, to allow modifying the main system crontab.
Particularly useful for target systems that have /etc/crontab but no
/etc/cron.d.
2016-12-08 11:24:00 -05:00
Luca Berruti 0673a4919f cron module: add enviroment variables management 2016-12-08 11:23:59 -05:00
Brian Coca 4c6515e299 reverse order of cron commands
does not affect linux but fixes issue with busybox caring about order
fixes #2807
2016-12-08 11:23:58 -05:00
Jeroen Seegers 7be08b00b0 Update cron.py
Minor update to documentation for the cron module to reflect the required "name" parameter when the value of "state" is "absent".
2016-12-08 11:23:58 -05:00
Brian Coca f8a36c4047 service goes back to failing when absent
if no tools and no init script, this should always fail
2016-12-08 11:23:53 -05:00
Brian Coca f435f887fa better handling of checkmode for solaris fixes #2296 2016-12-08 11:23:51 -05:00
tobbe 65f12bccb6 add text to the description, more user friendly 2016-12-08 11:23:51 -05:00
tobbe 455da45e62 Add suport for selinux user when adding a new user on selinux enabled systems 2016-12-08 11:23:51 -05:00
Michael Scherer 55f2345829 Remove a unneeded use of use_unsafe_shell
Since use_unsafe_shell is suspicious from a security point
of view (or it wouldn't be unsafe), the less we have, the less
code we have to toroughly inspect for a security audit.
2016-12-08 11:23:51 -05:00
nitzmahone 0d0b78dd1e fixed disappearing groups on OSX user module
Ensure that we don't try to modify the groups collection if groups are not specified
2016-12-08 11:23:51 -05:00
Dominique Barton 5c05016d1e bugfix for issue #2537 2016-12-08 11:23:51 -05:00
Sina Sadeghi 2ad9c6c9e5 Update hostname.py
Added support for FreeBSD. (http://www.freebsd.org)
2016-12-08 11:23:50 -05:00
Brian Coca b3c14ee0c3 minor doc fixes and reformating updated validate_certs feature to be 2.1 2016-12-08 11:23:50 -05:00
Veaceslav (Slava) Mindru 2eb6b566b2 Squashed commit of the following:
commit 406214fad214359fcf13fe8c7cd3f8f8faac5386
commit 85d1c9b0a41dd075eb2683b1a7de595ca3119614
commit 4aa5049b5ae25dee71a248238201611a466a13c4
commit 65a96974c80aea1fef88d78e218ecb665d8113e1
commit 22ea5863d1dfd628735b46cc7de51c0fd33251de

Refactoring
2016-12-08 11:23:49 -05:00
Martin André aaa82d1942 Fix typo in ping module short description 2016-12-08 11:23:49 -05:00
Jordi De Groof 7aa57219f6 Update facts when hostname is changed
ansible_hostname contains the unqualified hostname
2016-12-08 11:23:48 -05:00
Greg DeKoenigsberg f08d60388c @bradobro stepping down as maintainer 2016-12-08 11:23:47 -05:00
Brian Coca d2cffb31c3 rearranged systemd check, removed redundant systemctl check fixed unused cmd and state var assignements 2016-12-08 11:23:44 -05:00
Simon Hafner 923e442409 added earlier paths to systemd
2b583ce657
b925e72633
2016-12-08 11:23:43 -05:00
Simon Hafner 4af48e139c simpler way to check if systemd is the init system
According to
http://www.freedesktop.org/software/systemd/man/sd_booted.html
check if the directory /run/systemd/system/ exists.
2016-12-08 11:23:43 -05:00
Brian Coca 505467d2ff clarified ping module purpose 2016-12-08 11:23:42 -05:00
Toshio Kuratomi 80b3bbd55e Mark a few parameters as no_log 2016-12-08 11:23:42 -05:00
Achilleas Pipinellis 961082620c Add missing documentation: cron_file requires user to be set 2016-12-08 11:23:40 -05:00
gekmihesg d003fcd662 Support sysctl on OpenBSD
Fixes #1233
2016-12-08 11:23:39 -05:00
Simon Li 607b7c14bd Fix incorrect variable in group.py: user -> group 2016-12-08 11:23:39 -05:00
Brian Coca 45907f2ff3 removed typo 2016-12-08 11:23:38 -05:00
Brian Coca d55ba3ab7c removed syslog in favor of common module logging functions 2016-12-08 11:23:38 -05:00
Brian Coca 682cb99d45 revert must_exist 2016-12-08 11:23:38 -05:00
Mike Boone dd76088019 Updated link to the FAQ. 2016-12-08 11:23:36 -05:00
Brian Coca 99159b3cdd changed chmod to 2.4 compat 2016-12-08 11:23:35 -05:00
Brian Coca 917b7071d6 partially reverted previous change to deal with systemctl show status not returning errors on missing service Now it looks for not-found key instead of running status which does return error codes when service is present but in diff states. fixes #12216 2016-12-08 11:23:34 -05:00
Brian Coca fd23120d42 check systemctl status before show as show will not return antyhing other than rc=0 even when it fails. 2016-12-08 11:23:34 -05:00
Marius Gedminas b2fc74337a authorized_key: fix example in documentation
'key=' cannot be pointing to a file name; it needs to be the key itself as a string (or a URL).
2016-12-08 11:23:33 -05:00
Tim Rupp 223cac3f39 Add hostname support for Kali linux 2.0
This patch allows the hostname module to detect and set the hostname for a
Kali Linux 2.0 installation. Without this patch, the hostname module raises
the following error

   hostname module cannot be used on platform Linux (Kali)

Kali is based off of Debian.
2016-12-08 11:23:33 -05:00
Marius Gedminas f97d00fbad user: don't generate SSH keys in check mode
Fixes https://github.com/ansible/ansible/issues/11768

Test plan:

- (in a Vagrant VM) created a user 'bob' with no ssh key
- ran the following playbook in check mode:

    ---
    - hosts: trusty
      tasks:
        - user: name=bob state=present generate_ssh_key=yes

- saw that ansible-playbook reported "changes=1"
- saw that /home/bob/.ssh was still absent
- ran the playbook for real
- saw that /home/bob/.ssh was created
- ran the playbook in check mode again
- saw that ansible-playbook reported no changes
- tried a variation with a different username for a user that didn't
  exist: ansible-playbook --check worked correctly (no errors, reported
  "changed")
2016-12-08 11:23:33 -05:00
Simon Li 28c44c554c Don't fail in check_mode if user exists
PR #1651 fixed issue #1515 but the requirement for path to be defined is unecessarily strict. If the user has previously been created a path isn't necessary.
2016-12-08 11:23:33 -05:00
Александр Костырев ec8a94f748 Fix documentation of authorized_key.py
man for sshd http://www.openbsd.org/cgi-bin/man.cgi/OpenBSD-current/man8/sshd.8?query=sshd
says there's no "host" option but "from".
2016-12-08 11:23:31 -05:00