Commit Graph

772 Commits (3c48320b295c3b4f99caccdc5f173b224109a393)

Author SHA1 Message Date
Toshio Kuratomi b668ecc4a3 Merge pull request #1119 from ubergeek42/patch-1
Make link clickable
10 years ago
Brian Coca 727c9131c8 Merge pull request #1138 from bcoca/service_fix
simplified bad if chain
10 years ago
Brian Coca f1d72ea004 simplified bad if chain
hopefully fixes #1136
10 years ago
Brian Coca 61f664bc47 Merge pull request #251 from davidfritzsche/patch-1
Add working status detection for pf on FreeBSD
i'm going to merge this to give you a usable workaround, still I consider this a bug in the init script.
10 years ago
Keith Johnson 7dc1e77263 Make link clickable 10 years ago
James Cammarata 4558cb71f4 Merge branch 'osx_user_fix' of https://github.com/bambou42/ansible-modules-core into bambou42-osx_user_fix
Includes commits for:
* Don't return change if the password is not set
* Set the group to nogroup if none is specified
* Set an uid if none is specified
* Test if SHADOWFILE is set (for Darwin)
* remove unused uid
10 years ago
David Wittman 8d53ef2f60 [service] Fix bug with upstart detection
Upstart scripts are being incorrectly identified as SysV init scripts
due to a logic error in the `service` module.

Because upstart uses multiple commands (`/sbin/start`, `/sbin/stop`,
etc.) for managing service state, the codepath for upstart sets
`self.svc_cmd` to an empty string on line 451.

Empty strings are considered a non-truthy value in Python, so
conditionals which are checking the state of `self.svc_cmd` should
explicitly compare it to `None` to avoid overlooking the fact that
the service may be controlled by an upstart script.
10 years ago
Sam Thursfield adf1cba745 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`.
10 years ago
Sam Thursfield 60397fae0f Fix authorized_key module crashing when given an invalid key
I tried a playbook with the following (accidentally wrong) task:

  tasks:
      - name: authorized key test
        authorized_key: key=/home/sam/.ssh/id_rsa.pub key_options='command="/foo/bar"' user=sam

I got the following traceback:

    TASK: [authorized key test] ***************************************************
    failed: [localhost] => {"failed": true, "parsed": false}
    Traceback (most recent call last):
    File "/home/sam/.ansible/tmp/ansible-tmp-1427110003.65-277897441194582/authorized_key", line 2515, in <module>
        main()
    File "/home/sam/.ansible/tmp/ansible-tmp-1427110003.65-277897441194582/authorized_key", line 460, in main
        results = enforce_state(module, module.params)
    File "/home/sam/.ansible/tmp/ansible-tmp-1427110003.65-277897441194582/authorized_key", line 385, in enforce_state
        parsed_new_key = (parsed_new_key[0], parsed_new_key[1], parsed_options, parsed_new_key[3])
    TypeError: 'NoneType' object has no attribute '__getitem__'

With this fix, I see the expected error instead:

    TASK: [authorized key test] ***************************************************
    failed: [localhost] => {"failed": true}
    msg: invalid key specified: /home/sam/.ssh/id_rsa.pub
10 years ago
Mario Loria 30be06c971 Setting the actual passno and dump defaults, and warning user of consequences in nulling
Using ansible 1.8.4, I found that these two options actually work slightly different than advertised.
10 years ago
Dag Wieers 0a91ace6ad Update authorized_key.py
Fix a (common) error in the examples. This is something that may go unnoticed during troubleshooting when copy&pasting the example.
10 years ago
Toshio Kuratomi 939ecd33d4 In service_enable, the default of changed is True so we have to set it
to False explicitly if it is False.

Fixes #875
10 years ago
Carlo Mandelli 0029c960e4 Added HP-UX subclass 10 years ago
Oleg A. Mamontov fa19753707 On FreeBSD apply 'login_class' only if there is real change. 10 years ago
Edward Larkey 4db27877bf Fix typo in authorized key module documentation.
Added opening double quote
10 years ago
Stefan J. Betz dc470cc91f Create SSH Keys always after creating $HOME 10 years ago
Brian Coca 5df3058aab fix for mount w/o opts (bug introduced when fixing bind mounts) 10 years ago
Brian Coca 1bca815d37 Merge pull request #95 from Gamevy/use-insserv
Use insserv where available
10 years ago
Brian Coca ed8154bdc7 Merge pull request #759 from jonhadfield/systemd_enabled_check
use is-enabled to check systemd service status.
10 years ago
Sébastien Gross 67ce4cf416 Add basic support for OSX groups. 10 years ago
Sébastien Gross 1555cfeea2 Add basic support for OS X (Darwin) user management. 10 years ago
Dagobert Michelsen 1f2ffb3900 Solaris SMF is already supported and should be mentioned in the docs, 10 years ago
Brian Coca 55b06568b0 added note that url src is only avaialable from 1.9 on 10 years ago
Brian Coca b82055f021 Merge pull request #648 from bcoca/service_fix_update-rc.d
simplified update-rc.d enable/disable handling,
10 years ago
Toshio Kuratomi b84f566ee7 Tabs to spaces 10 years ago
Brian Coca 8bccb27c41 Merge pull request #49 from Jmainguy/mount_bind_fix
Fixes bind mounts for some OSs, reproduced only on debian and ubuntu
10 years ago
Paul Geraghty b42b0f49b9 Correct grammar of comment relating to example 10 years ago
Jesse Keating e0c5b4340d Add exclusive option to authorized_keys
This option allows the module to ensure that ONLY the specified keys
exist in the authorized_keys file. All others will be removed. This is
quite useful when rotating keys and ensuring no other key will be
accepted.
10 years ago
Jon Hadfield b20b29bd17 use is-enabled to check systemd service status. 10 years ago
Philippe ALEXANDRE ac1a64e62f Add Linuxmint support in hostname module 10 years ago
Jesse Keating cf0e8d62d2 Add service option to avoid failure on missing service
This adds a must_exist option to the service module, which gives callers the
ability to be tolerant to services that do not exist. This allows for
opportunistic manipulation of a list of services if they happen to exist on the
host. While failed_when could be used, it's difficult to track all the
different error strings that might come from various service tools regarding a
missing service.
10 years ago
Brian Coca b9786835eb Merge pull request #554 from likwid/devel
Added ability to use url as key source
10 years ago
Graham Hay 17c7d9c5d5 Use insserv where available 10 years ago
Jeff Gonzalez 27c046ae79 Refactored code to use module utility fetch_url function. 10 years ago
Alexis Seigneurin 6d6e948f1e - 'name' should not be required so as to allow uninstalling a cron_file 10 years ago
Brian Coca 543c45a15f implemented account expiration as flag and not state, removed from unsupported platforms 10 years ago
Brian Coca fc1045a1ee Merge pull request #41 from billwanjohi/add_expired_state
user: add expired state
10 years ago
Jeff Gonzalez e9ae165792 Added documentation for using url as key source 10 years ago
Jonathan Armani 645e0653a3 Merge branch 'devel' into openbsd_rcctl 10 years ago
Toshio Kuratomi 4f1f8e89c9 More information about distutils on Solaris in case we run into this again 10 years ago
Toshio Kuratomi effdba95de Merge pull request #639 from tgolly/devel
distutils is not available on some non-Linux OS's
10 years ago
Brian Coca 8c4b279552 Merge pull request #39 from kustodian/selinux_disable_fix
Set selinux state to 'permissive' for state=disabled
10 years ago
Brian Coca d80e7438a6 Merge pull request #37 from mscherer/fix_old_7420
Add hostname to generated user SSH key comment
10 years ago
Brian Coca 6b784fb28a Merge pull request #675 from bcoca/sysctl_nonstrings
now handles non string values for sysctl
10 years ago
Ben Konrath 347234b937 Add support for SL7 to hostname module. 10 years ago
Brian Coca f85b7ee13c now handles non string values for sysctl 10 years ago
Brian Coca e957150f77 Merge pull request #189 from jarmani/openbsd_rcctl
Openbsd rcctl
10 years ago
Patrik Lundin e8c328773a Update OpenBSD rcctl handling to use new syntax.
See http://marc.info/?l=openbsd-cvs&m=142054488027109&w=2
10 years ago
Tim G 8f43a0a4fe Load distutils on all platforms EXCEPT Solaris.
Solaris doesn't ship distutils with with the default Python package.  This patch fixes "service" on Solaris since 30d6713.
10 years ago
Brian Coca 9ac5ed2621 now allows for case in which someone removed the K* links and is trying
to reenable a service
10 years ago
Brian Coca f4a709ad7c simplified update-rc.d enable/disable handling, removed forced defaults
creation as that breaks local customizations
10 years ago
Toshio Kuratomi 4c50fbedf4 Merge pull request #632 from mscherer/fix_uneeded_echo
Do not use echo shell builtin for password
10 years ago
Tim G 68b5b7be72 distutils is not available on some non-Linux OS's 10 years ago
Michael Scherer 826d313aad Do not use echo shell builtin for password
Using \t in a password may result in a different password
being set :

    $ echo 'a\ta'
    a   a

Problem report originally found by Pilou-
( https://github.com/ansible/ansible-modules-extras/pull/198 )
10 years ago
Brian Coca 8c8be0e48c Merge pull request #572 from jrobeson/rename-fedora-hostname-strategy
[hostname] rename FedoraStratgy to SystemdStrategy
10 years ago
Toshio Kuratomi 2973bac72f Clarify documented behaviour of user module's ssh_key_file parameter
Fixes #9873
10 years ago
sysadmin75 aa99eade7e ansible-modules-core #530 fix - Mount module does not accept spaces in mount point path 10 years ago
Johnny Robeson 50011f13d6 [hostname] rename FedoraStratgy to SystemdStrategy 10 years ago
Jeff Gonzalez 54214f83b5 Added ability to use url as key source 10 years ago
Peter Oliver 18c429d016 Fix appending to a user's group on Solaris
Without this change, you get:
    AttributeError: 'set' object has no attribute 'extend'

Tested on a Solaris 11.2 client with the included Python 2.6.8.
10 years ago
Toshio Kuratomi 443951ce82 Merge pull request #524 from zitterbacke/patch-1
re-enable AIX password setting
10 years ago
Toshio Kuratomi 67aeab9576 Merge pull request #512 from mscherer/fix_438
Revert commit cbc417c, as the code is broken, see #438
10 years ago
Jonathan Mainguy 541070be4c Fixed hostname for rhel5 python 2.4.3 10 years ago
zitterbacke 2e88582165 re-enable AIX password setting
the AIX class uses a unsafe shell for setting the user password (containing a pipe in the command). This patch adopts to the new behavior of module_utils/basic.py (since somewhere around 1.7).

besides it changes the qoutes for the echo command from double to single, because password-hashes contain $-signs and one would not have this variables expanded.
10 years ago
Michael Scherer 39cd64ec17 Revert commit cbc417c, as the code is broken, see #438
LooseVersion expect a string, so filtering to return a int
is incorrect. Thanks to Jeremy Brown for the analysis.
10 years ago
Toshio Kuratomi e1f90635af Don't traceback if a gid is specified instead of a group name
Fixes https://github.com/ansible/ansible/issues/9796
10 years ago
Patrik Lundin 2acfbf016d Handle string returned by 'default' correctly.
We need to handle the string returned by 'default' in the same way we handle
the string returned by 'status' since the resulting flags are compared later.
10 years ago
Brian Coca ba139b145b fixed hostname for gentoo 10 years ago
Brian Coca aba9e5e4f9 vastly simplified systemd detection, made enable/disable errors clearer
both of which allows us to remove 'service name detection' as if systemd
is init we still use it to handle initscripts.
10 years ago
Brian Coca df6d58614e now actually adds usable name for systemd when service only has init
script
10 years ago
Toshio Kuratomi 5af4463823 Gixes to doc formatting 10 years ago
Toshio Kuratomi 799a75580a Update cron example for setting to run twice a day
Fixes #415
10 years ago
Brian Coca 943f8fe7c9 Merge pull request #346 from bcoca/service_cleanup
service cleanup
10 years ago
Jonathan Mainguy a75bef5bc6 Fixes bind mounts
Fixed tab's and spaces, or so I think I did

Fixed tabs and spaces for real this time
10 years ago
Achilleas Pipinellis a375ce33d3 Clarify supported init systems. 10 years ago
Pascal Borreli 32a00ec3a3 Fixed typo 10 years ago
Fabrice Bernhard 1ef8c26c0e Typo in comments
Credit goes to @kbsali 
@pborreli : you did not see that one? :-)
10 years ago
Brian Coca 29d211e7ab service cleanup 10 years ago
Brian Coca f49120598f service now detects systemd is actually running, not just installed 10 years ago
Jonathan Mainguy 8b8008569f fixes user module for rhel5 by using -n instead of -N, all other distros will still use -N 10 years ago
Robert Estelle 4dd099fe7a Remove incorrect executable permissions. 10 years ago
Brian Coca 04680ce228 Merge pull request #286 from bcoca/hostname_24_compatible
made hostname work with python 2.4
10 years ago
Patrik Lundin eea4d06848 Fix typo: Replace "N0" with "NO". 10 years ago
Brian Coca 83669d7eda switched to iterator as per comments 10 years ago
Martijn P. Rijkeboer 5257222f33 Fix whitespace around '=' in sysctl.conf. 10 years ago
Brian Coca e4b6968901 made hostname work with python 2.4 10 years ago
David Fritzsche c96a85fb70 Add working status detection for pf on FreeBSD
The return code of "service pf onestatus" is usually zero on FreeBSD (tested with FreeBSD 10.0), even if pf is not running. So the service module always thinks that pf is running, even when it needs to be started.
10 years ago
Toshio Kuratomi 7f611468a8 Fix for systemd service scripts with newlines
Fixes #127
10 years ago
Patrik Lundin f9d9c1b6d7 Multiple fixes for OpenBSD rcctl handling.
* Use the newly added 'default' argument to know if the default flags are set
  or not.
* Handle that 'status' may either return flags or YES/NO.
* Centralize flag handling logic.
* Set action variable after check if we need to keep going.

Big thanks to @ajacoutot for implementing the rcctl 'default' argument.
10 years ago
Patrik Lundin e463400412 Simplify self.arguments logic.
Strange logic pointed out by @jarmani, thanks!
10 years ago
Patrik Lundin 924cf20cf8 Depend more on rcctl if it is present.
* Make the module support enable/disable of special services like pf via rcctl.
  Idea and method from @jarmani.
* Make the module handle when the user supplied 'arguments' variable does not
  match the current flags in rc.conf.local.
* Update description now that the code tries to use rcctl for everything if it
  is available.
10 years ago
Patrik Lundin 5f37624eb4 Tweak error checking for "enabled" code.
Based on input from @jarmani:
* A return value of 2 now means a service does not exist. Instead of
  trying to handle the different meanings of rc after running "status",
  just look at stderr to know if something failed.
* Skip looking at stdout to make the code cleaner. Any errors should
  turn up on stderr.
10 years ago
Patrik Lundin c6dd88c1d1 Fail if "rcctl status" writes to stderr. 10 years ago
Patrik Lundin 1a8cdb5e3e Check rc and print error message if any.
It is probably good to use stdout before printing a generic error
message as well.
10 years ago
Patrik Lundin c46e030100 Make "enabled" code aware of --check mode. 10 years ago
Jonathan Armani 1b97390765 Add enable / disable of services for OpenBSD if rcctl is present 10 years ago
louis 45f41f4b05 added skeleton support in user module 10 years ago
billwanjohi ff36edbb11 user: add expired state
ported from
https://github.com/ansible/ansible/pull/6303

It's very useful and routine to disable a *nix user.
I implemented expired instead of locked because this prevents any use of
the account, safer than just preventing password-based authentication.

I have tests [1], but since none of the suite came along with the core
modules, I'm unsure how to submit them.

[1] https://github.com/billwanjohi/ansible/blob/add_locked_state/test/integration/roles/test_user/tasks/main.yml
10 years ago
kustodian 82af074382 Set selinux state to 'permissive' for state=disabled 10 years ago
Michael Scherer 37d9903169 Add hostname to generated user SSH key comment
The default is not very useful to sort between different
keys and user. Adding the hostname in the comment permit to later
sort them if you start to reuse the key and set them in different
servers. See https://github.com/ansible/ansible/pull/7420
for the rational.
10 years ago
Michael DeHaan 385a037cd6 package files 10 years ago
Michael DeHaan c8e1a2077e file extensions! 10 years ago
Michael DeHaan 417309a626 Restructuring. 10 years ago
Michael DeHaan 73123b69fa Move modules into subdirectory. 10 years ago
Toshio Kuratomi 8b81062be0 The fix for gh-7284 causes problems for initscripts which have the
standards compliant return codes but return a verbose error message via
stdout.  Limit the times when we invoke the heuristic to attempt to work
around this.
10 years ago
Michael Scherer c9a0a7ae4b Fix #9704, correctly set changed as false when nothing is done 10 years ago
Toshio Kuratomi 7b100dd389 Be more specific in checking if a job restarted successfully.
Fixes: #9056
10 years ago
Toshio Kuratomi 36083c3b90 Failure to enable a service now fails the task
Fixes: 8855
10 years ago
Toshio Kuratomi a50258d26a remove debugging that was causing failure 10 years ago
Toshio Kuratomi 2e16bd3a44 Refactor the Linux service_enable() method
* Fix check_mode for initctl systems

Fixes #9009
10 years ago
Toshio Kuratomi 104401805b Revert "Refactor the Linux service_enable() method" needs some debugging
This reverts commit e294e31fd3.
10 years ago
Toshio Kuratomi c362902f50 Refactor the Linux service_enable() method
* Fix check_mode for initctl systems

Fixes #9009
10 years ago
Toshio Kuratomi a9928492f7 Make systemd vs rht detection more robust for centos
Centos 6.x and below use an old RHT style of configuring hostname.
CentOS 7.x and better use systemd.  Instead of depending on the
distribution string which seems to have changed over the course of 6.x
we need to explicitly check the version.

Fixes #8997
10 years ago
James Cammarata 7edcf21bdc Move initscript rc check to later in service status check
Fixes #7284
10 years ago
Michael DeHaan 5aa6ddef7f Tracebacks are now catchable with ignore_errors and have streamlined output. Also removes 'baby-JSON' for bash modules. 10 years ago
Patrik Lundin 0abf14ff19 service: use self.changed in service_enable_rcconf().
This sets the "changed" result of the module when a rc file is modified.
Previously only --check mode would show that it was going to change.
10 years ago
James Cammarata 30d6713bf0 Add additional checks to detect upstart services
Also adds checks for the upstart version, in order to test check
support for manual vs. start on manual
10 years ago
Eri Bastos 6f8a29dc3d Proposed fix for issue #7757 10 years ago
James Cammarata c8376e296f Tweaking change to documentation language for cron name param 10 years ago
James Cammarata 509761249c Merge branch 'devel' of https://github.com/mattparker/ansible into mattparker-devel 10 years ago
James Cammarata 07e77c5bed Merge pull request #8740 from mattparker/patch-1
Name appears to be a required parameter for cron module
10 years ago
James Cammarata 1f2727c607 Merge pull request #8729 from ercpe/openrc-hostname
Hostname strategy implementation for OpenRC based systems (e.g. Gentoo)
10 years ago
Matt Parker 6086c505fe Update cron documenation
The "name" parameter seems to be rather important as the identifying feature of a cron job.  This is an update to the documentation to further emphasize this.
10 years ago
Matt Parker 5accd15ba6 Name appears to be a required parameter
As far as I can tell, `name` is a required parameter.  The guard test at (now) line 458 says you need name if `state == present` and at 464 if `state != present`, although that's not quite as clear.  Each of the code paths at 485 - 495 pass the name param through to `add_job`, `update_job` and `remove_job`, and the actual _update_job method earlier seems to require it too.  However I don't really know python so I may be wrong, but I can't see the circumstances when `name` is not required.
10 years ago
Johann Schmitz 7ef67e3f8b Hostname strategy implementation for OpenRC based systems (e.g. Gentoo) 10 years ago
Ding Deng 85c6434262 debconf module: add the missing 'error' vtype and reorder vtypes as they appeared in debconf-devel(7). 10 years ago
Michael DeHaan 60ce2d3853 Fix documentation builds. 10 years ago
Michael DeHaan f21d6c7980 Merge pull request #8002 from prune998/patch-2
added missing force flag on mkfs commandline
10 years ago
Michael DeHaan 185d5a6221 Merge branch 'spelling' of git://github.com/cgar/ansible into devel
Conflicts:
	docsite/rst/guide_rax.rst
	plugins/callbacks/mail.py
10 years ago
Michael DeHaan 66ec9089bd Update docs. 10 years ago
Michael DeHaan f6f184b36d Updating docs. 10 years ago
Brian Coca aeeefd046f bumped to 1.7 10 years ago
Brian Coca 5aa2ca762a added control to fail or not on missing key
made split 'smarter' but still overridable
10 years ago
Brian Coca 391f8ec600 added getent module to get system data as facts 10 years ago
Serge van Ginderachter 961d4b0d6c execute the mount after path validation
This avoids a stale situation where name/path contains some impossible path,
but gets configured (faultly) in fstab, and the module only fails after that,
when creating that path.
10 years ago
Jonathan Mainguy 650003dd5c Fixes issue #8339 where Scientific Linux incorrectly tries to use FedoraStrategy of hostnamectl 10 years ago
Michael DeHaan e978dcf7eb Merge pull request #8283 from ps-jay/sys_mount_fstype_doc
Add fstype arg to the mount examples
10 years ago
Michael DeHaan bc01f2571e Merge pull request #8311 from neersighted/wrap_distroversion
Wrap get_distribution_version() in the hostname module
10 years ago
Michael DeHaan 2212b64fd9 Cleaning up explanation of mount module states. 10 years ago
Bjorn Neergaard cbc417ca1b Wrap get_distribution_version() in the hostname module
We wrap get_distribution_version() with a new function,
_get_distribution_version(), that returns `0` when the result is a string or
`None`.

This accounts for the case when get_distribution_version() returns a string,
and we try to compare it to a float. We do this in the hostname module instead
of the module snippets because other modules may want the real string
version.module snippets because other modules may want the real string version.
10 years ago
Michael DeHaan 99ad691950 Merge branch 'ufw' of git://github.com/Trozz/ansible into devel 10 years ago
Michael DeHaan caba7ac6a6 Merge pull request #7954 from alimony/patch-3
cron module: Use correct parameter name in error message.
10 years ago
James Cammarata 03f0d6bec8 Merge pull request #8308 from robinro/extend-hostname-distrolist
Extended distributions list for hostname module
10 years ago
Robin Roth 7920f4eaf5 Fix extra newline at end of hostname for Fedora
This fixes a bug introduced by 138b45e3.
The hostname has an additional newline at the end which leads to the
state always being 'changed: true' even if the hostname is unchanged.
10 years ago
Robin Roth a26bc9c926 Extended distributions list for hostname module
Implementations already present
10 years ago
Tom Lazar d89adce760 FreeBSD 10 compatibility fix
On FreeBSD the whitespace around the ``=`` triggers a (cryptic) ``no such file or directory`` error. removing the whitespace like above fixes this.
10 years ago
Philip Jay bb7b290ed8 Add fstype arg to the mount examples
Needed fstype in the examples, since fstype is a required argument for
mount.
10 years ago
Berend de Boer f46c4ee093 Default for fstab missing, causing KeyError: 'fstab' 10 years ago
James Cammarata 6879e4ff0a Merge pull request #8223 from renard/create-fstab-if-not-exists
Create fstab if not exists
10 years ago
Sébastien Gross e0f7b3f39c [mount] make sure fstab exists
This is mainly to prevent from failing with no such file or directory
during module execution.
10 years ago