Commit graph

436 commits

Author SHA1 Message Date
giorgio-v
0342f432e2 Added -y flag to query_package
* library/packaging/pkgin:

Signed-off-by: giorgio-v <giorgio@refactor.it>
2013-11-18 08:01:10 +01:00
James Tanner
99dfa1afec Revert "Merge pull request #4912 from zehome/openbsd_pkg_flavourfix"
This reverts commit de2f4cf04d, reversing
changes made to 2c33737bfa.
2013-11-18 00:15:33 -05:00
Michael Scherer
d66027ba7a return failed if a package couldn't be installed
For some reason, on my test mandriva, urpmi --force return 0
even when it cannot install a rpm. So we have to explicitely check
if the package was properly installed with a loop
2013-11-18 00:22:54 +01:00
Michael Scherer
0d8b81cd95 optionally use rpm python module instead of calling a
external executable, to avoid the cost of forking.
Since python-rpm is not automatically present, we still fallback
on the slower rpm fork method.
2013-11-17 15:37:30 +01:00
Michael Scherer
9482815b71 Fix behavior of urpmi module where it always return "changed"
even when a package is already installed, since urpmi will
always return 0 wether it install or not.
2013-11-17 15:37:30 +01:00
Michael DeHaan
56e3d31253 Merge pull request #4904 from joemaller/npm-outdated-fix
update npm-module to handle new node.js output
2013-11-16 10:40:51 -08:00
jctanner
c057fe2f5f Merge pull request #4861 from pmakowski/devel
urpmi module
2013-11-15 11:59:23 -08:00
jctanner
45ad8237a6 Merge pull request #4832 from matze/add-zypper-repository
Add zypper_repository module
2013-11-15 11:13:50 -08:00
jctanner
912d43a37d Merge pull request #4913 from arkadijs/devel
Use pkgng glob (-g) feature to allow installation of packages by wildcard
2013-11-15 11:00:49 -08:00
jctanner
de2f4cf04d Merge pull request #4912 from zehome/openbsd_pkg_flavourfix
OpenBSD packages can be installed using 'flavour'
2013-11-15 07:21:37 -08:00
James Tanner
2c33737bfa Fix docstring and remove redundant parameter value in portinstall module 2013-11-15 10:13:19 -05:00
Arkadi Shishlov
78f5c69a88 Use pkgng glob (-g) feature to allow installation of packages by wildcard.
Also solves the particular problem of installing packages that have multiple versions in the repo, but specifying the exact version would be troublesome:

$ pkg install -n dovecot
The following 2 packages will be installed:

	Installing dovecot: 1.2.17
	Reinstalling dovecot-2.2.6 (options changed)

$ pkg install -n dovecot-2.2.6
The following 1 packages will be installed:

	Reinstalling dovecot-2.2.6 (options changed)

$ pkg install -n -g dovecot-2*
The following 1 packages will be installed:

	Reinstalling dovecot-2.2.6 (options changed)
2013-11-15 13:28:14 +02:00
Laurent Coustet
12e7e3b2f6 OpenBSD packages can be installed using 'flavour'. Best example
is vim. It can be installed as vim--no_x11 or vim--gtk2.
2013-11-15 12:20:30 +01:00
Berend de Boer
46b11774c1 Support to install software on FreeBSD using portinstall. 2013-11-15 19:49:04 +13:00
Joe Maller
d95ba87b62 update list_outdated module split to both old and new module delimiter. 2013-11-14 10:25:23 -05:00
James Tanner
8e41480059 Set required=false for answer_file in svr4pkg docstrings 2013-11-13 20:04:54 -05:00
jctanner
065f1edc89 Merge pull request #4420 from Jmainguy/devel
Added resp= option for svr4pkg to enable the -r option in pkgadd for res...
2013-11-13 17:02:58 -08:00
James Tanner
d3128e00c5 Fix parameter typo in swdepot module 2013-11-13 19:57:39 -05:00
jctanner
d32b33f191 Merge pull request #4398 from melodous/module_swdepot
Module swdepot
2013-11-13 16:56:16 -08:00
Stoned Elipot
47072bfb77 Fix homebrew module's install_options handling
...each given option must be a single element in the
arguments list passed as first argument to module.run_command()
2013-11-13 23:20:53 +01:00
James Tanner
f332bb0d7c Fixes #4891 Catch unicodedecode errors from python-apt 2013-11-13 09:48:56 -05:00
Philippe Makowski
4455fea579 Merge remote-tracking branch 'upstream/devel' into devel 2013-11-13 10:09:40 +01:00
James Tanner
710117e4da Addresses #4628 evaluate package check return properly and exit failure if not present 2013-11-12 10:37:27 -05:00
Philippe Makowski
a4ff61748d Merge remote-tracking branch 'upstream/devel' into devel 2013-11-12 15:12:59 +01:00
James Tanner
aafe7f5b37 Fixes #4877 set type to bool for cache parameter in apt module 2013-11-11 23:23:56 -05:00
jctanner
c459347976 Merge pull request #4245 from abelbabel/patch-1
add check mode support to pkgng module
2013-11-11 20:19:21 -08:00
James Tanner
7502e15298 Address #4285 remove redundant stderr output in apt module 2013-11-11 22:27:47 -05:00
jctanner
9faaa2b98b Merge pull request #4285 from blair/apt-module-register-stdout-stderr
apt: pass child process stdout and stdout to m.fail_json() and m.exit_js...
2013-11-11 19:15:10 -08:00
jctanner
a28bcd60d9 Merge pull request #4617 from resmo/feature/python-apt
apt: autoinstall python-apt if apt or apt_pkg is not available
2013-11-11 18:50:43 -08:00
James Tanner
f820e8e719 Merge pull request #4286 from blair/ansible
apt: do not consider not-removed and not-upgraded packages as changes.
2013-11-11 21:39:07 -05:00
Timur Batyrshin
9e7623e9de #4869 compatibility with older versions of apt 2013-11-11 16:56:05 +04:00
Philippe Makowski
38a2ee7751 urpmi module 2013-11-08 21:43:19 +01:00
James Tanner
898de833b0 Merge pull request #4413 from jerm/ansible
Add capability to pass in a PATH prefix to run_command and allow pip module
to utilize that to make virtualenv bin/ available in pip installs
2013-11-07 15:51:27 -05:00
jctanner
015662f5ef Merge pull request #4358 from eslng/apt_add_dpkg_options
apt: allow specifying dpkg options
2013-11-07 08:31:51 -08:00
jctanner
6cebfccd7f Merge pull request #4440 from AndydeCleyre/patch-2
Set default of 'yes' for update_cache, as is in the documentation
2013-11-07 06:46:13 -08:00
Matthias Vogelgesang
2649495fa6 Add zypper_repository module
This change adds the "zypper_repository" module to the packaging library. This
module is used to add and remove additional repositories.
2013-11-07 12:06:55 +01:00
jctanner
8b774f27c2 Merge pull request #4786 from SalesSeek/find-correct-easy-install
Fix determination of correct, possibly customized, 'easy_install' executable
2013-11-06 07:39:19 -08:00
James Tanner
65d68bb1b4 Addresses #4735 Verify the virtualenv command supports --no-site-packages before passing it 2013-11-05 18:51:41 -05:00
Pedro Romano
78c616f271 Obsolete attempts at determining the full path to the desired
'easy_install' executable were still left behind and need to be removed
for the customizable 'executable' task argument to correctly work:
'_get_easy_install' should take care of all the functionality related to
determining the correct 'easy_install' executable to use.
2013-11-02 19:25:51 +00:00
Yegor Minin
df5fd0e0d0 apt: allow specifying dpkg options
This will allow specifying dpkg options as a string passed over to apt
command. dpkg_options expects a comma-separated string of options to be
passed as dpkg options which will be further expanded. For example
dpkg_options='force-confdef,force-confold' will end up as
-o \"Dpkg::Options::=--force-confold\" when passed to apt
Example usage would be:
-m apt -u ubuntu -s \
 -a "upgrade=dist update_cache=yes dpkg_options='force-confold'"
or
apt: upgrade=dist update_cache=yes dpkg_options='force-confold'
2013-11-01 20:11:40 +02:00
chrisalbright
44c2fae805 pip module: fix unexpected behavior when creating virtualenvs
This module supports `virtualenv_site_packages` as an option to control whether or not to include system packages when installing pip packages into a virtual environment. 

The default is no, and when you say yes it explicitly it includes a flag to include site packages, otherwise it doesn't provide a flag. 

Some versions of virtualenv by default include site packages and other versions by default do not. 

This patch just makes both branches explicit, so `virtualenv_site_packages=no` really means no.
2013-10-30 17:27:02 -07:00
Marcus Cobden
414a5b4eab Only remove leading '0x' from key ids, not all 0s 2013-10-30 11:50:34 +00:00
Thomas Omans
c12e2b53e3 Pip module: fixing issue with python 2.4 support
Python 2.4.3 returns:
TypeError: expected character buffer object

startswith is expecting only a string instead of a tuple like newer versions allow.
2013-10-28 15:15:04 -07:00
Michael DeHaan
3722bebb1d Merge pull request #4509 from mremond/gem_executable
Add executable parameter to find gem binary in gem module
2013-10-27 08:59:19 -07:00
Rene Moser
a10e017d6e apt: autoinstall python-apt if not available 2013-10-21 16:39:18 +02:00
Michael DeHaan
21d4400c96 Misc pep8 fixes 2013-10-19 13:03:15 -04:00
Jonathan Mainguy
d58f5a23ae Changed note describing this functionality was added in 1.4 to match what I have seen in other modules 2013-10-19 11:54:36 -04:00
Jimmy Tang
0568abeb14 check for ubuntu distribution first 2013-10-19 14:41:00 +01:00
Michael Scherer
19bb44288e fix distribution detection in apt_repository module, so it also work
on Mint as it work on Debian, fix #4587.

PPAs are not supported however, since that's a Ubuntu specific feature
and mint is detected as a generic distribution and use a different
codename than the Ubuntu release it is based on, which mean that apt_repository
cannot add detect and add the proper url without a better heuristic.
2013-10-19 00:57:08 +02:00
Maykel Moya
2592b2c3f9 Do key validation only when key is provided
key_id is optional, the previous code didn't handle the case of key_id
not specified
2013-10-17 12:04:04 +02:00
Maykel Moya
1a79d9ae58 apt_key: Validate key_id and accept a leading '0x' 2013-10-16 20:52:18 +02:00
James Tanner
00f3ec645d Fixes #4532 Send easy_install to get_bin_path instead of None 2013-10-15 18:15:08 -04:00
James Tanner
7061c99049 fix indentation in easy_install module docstring 2013-10-15 12:49:43 -04:00
Mickaël Rémond
007a3fe154 Add executable parameter to find gem binary in gem module
This is especially needed with rvm where gem binary can be in unusual locations
2013-10-15 09:08:33 +02:00
Jonathan Mainguy
df92881e26 Added note in description explaining this was added in Ansible 1.4 2013-10-14 20:08:44 -04:00
Michael DeHaan
8349c04d06 Merge pull request #4488 from renanivo/devel
create install_options parameter for homebrew module
2013-10-14 16:47:59 -07:00
Pedro Romano
e6062db92f Implement a '_get_easy_install' helper function to find the desired
'easy_install' executable, modeled on '_get_pip'
from the 'pip' module to correctly handle all combinations of explicit
executable and virtualenv.
2013-10-14 11:48:45 -04:00
Pedro Romano
307dd77589 Refactor helper function '_get_pip' to handle the cases where an absolute
path explicit executable is passed to the task and to look for an explicit executable
by basename in a virtualenv if that is specified.
2013-10-14 11:48:28 -04:00
Pedro Romano
57a71043a3 New module argument to specify the executable used for running 'pip'. This allows support for system installation of packages on systems with multiple installations of Python. 2013-10-14 11:48:28 -04:00
Pedro Romano
3c33273071 New module argument to specify the executable used for running 'easy_install'. This allows support for system installation of packages on systems with multiple installations of Python. 2013-10-14 11:48:27 -04:00
Pedro Romano
48e50a9c11 Rename copy/pasted variables more appropriately. 2013-10-14 11:47:59 -04:00
Pedro Romano
5a5d431fa1 Changes examples from using Flask to some other package (Bottle was chosen) as per @mpdehaan's suggestion. 2013-10-14 11:47:59 -04:00
Jurrien Bloemen
55062c69d6 Added full path to rhnreg_ks command for working correctly with sudo. 2013-10-14 16:05:01 +02:00
Yap Sok Ann
812fd22e98 Add packaging module for Gentoo Portage.
This is in no way comprehensive enough to cover all use cases, but hopefully
is sufficient to cover the common ones.
2013-10-14 18:57:48 +08:00
Renan Ivo
776de30e6d update version_added of homebrew module 2013-10-13 15:32:51 -03:00
Renan Ivo
488fb484b7 set default options value to None in homebrew module 2013-10-13 10:42:12 -03:00
Renan Ivo
dd1b44acd5 create install_options parameter to homebrew module 2013-10-13 10:24:07 -03:00
Jonathan Mainguy
9fdf4626ea Changed resp= to response_file= as per mpdehaan's request 2013-10-12 13:28:48 -04:00
Jimmy Tang
a4c8d3ee68 This oneliner change allows apt-key to inherit the http_proxy variable.
Before this fix

  TASK: [apt_repository repo='ppa:vbernat/haproxy-1.5'] *************************
  failed: [134.226.115.202] => {"cmd": ["apt-key", "adv", "--recv-keys", "--keyserver", "keyserver.ubuntu.com", "CFFB779AADC995E4F350A060505D97A41C61B9CD"], "failed": true, "rc": 2}
  stderr: gpg: requesting key 1C61B9CD from hkp server keyserver.ubuntu.com
  gpg: no valid OpenPGP data found.
  gpg: Total number processed: 0

After the fix

  TASK: [apt_repository repo='ppa:vbernat/haproxy-1.5'] *************************
  changed: [134.226.115.202]
2013-10-11 15:19:52 +01:00
Michael DeHaan
119b6d73dd Remove examples of module antipattern of setting the choices array for boolean types. 2013-10-11 08:45:13 -04:00
Andy Kluger
5ce29734d2 Set default of 'yes' for update_cache, as is in the documentation 2013-10-10 17:18:06 -04:00
Michael DeHaan
8d16a39af9 Correct typo 2013-10-10 09:15:04 -04:00
Jonathan Mainguy
e581156dfc Added resp= option for svr4pkg to enable the -r option in pkgadd for response files 2013-10-09 19:57:52 -04:00
Jeremy Price
3955b8e9c2 Adding the bin/ directory of the virtualenv (if you specify a virtualenv) as a path_prefix so that other programs that only exist in the virtualenv will be available to things being installed into said virtualenv. Classic example: installing gevent requires cython binary to be available, but if cython is in the virtualenv only it won't be found without this. 2013-10-09 12:50:29 -04:00
Michael DeHaan
0e55bd892d For values that are booleans in the module doc, the value in the doc section should be a boolean or truthiness
is engaged in the documentation formatting.  This fixes the update_cache default in the docs to the proper
value of "no"
2013-10-09 07:52:23 -04:00
Michael DeHaan
203a4f10cd Use explicit boolean defaults in apt module to make the code more clear. 2013-10-09 07:47:24 -04:00
Raul Melo
c8f9f8825f Changed ansible target version 2013-10-08 00:27:08 +02:00
Raul Melo
59373657fa Change file swdepot perms 2013-10-08 00:24:42 +02:00
Raul Melo
71e52b38f5 Made some code cleanups and use of module.run_command 2013-10-08 00:23:21 +02:00
Raul Melo
a1cdb3110e Module for swdepot (HP-UX package manager) 2013-10-08 00:23:13 +02:00
Michael DeHaan
a8902e878c Merge pull request #4347 from sashka/devel
Remove options and protocols in source line with regex.
2013-10-07 05:55:43 -07:00
Michael DeHaan
8dae9fa5e7 Fix module formatting in the pkgutil module. 2013-10-07 08:24:02 -04:00
Alexander Saltanov
2bd6c5e262 Remove options and protocols in source line with regex.
Fixes #4311
2013-10-03 03:31:04 +04:00
Andy Kluger
ee054a491a Fix for Issue #2470 - gem version string processing
This fix assumes that no sane gem version has spaces in it, so when one like that is encountered, it will get truncated at the first space.
2013-10-02 17:55:30 -04:00
Blair Zajac
3a8c9f04da apt: do not consider not-removed and not-upgraded packages as changes.
If one pins a package and does a 'apt-get dist-upgrade' then the
output looks like:

    # apt-get dist-upgrade
    Reading package lists... Done
    Building dependency tree
    Reading state information... Done
    Calculating upgrade... Done
    The following packages have been kept back:
      cassandra
    0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded.

The check for any changes made should only be on the 'upgraded' and
'newly installed' values and not include the 'to remove' and 'not
upgraded' values.
2013-09-28 16:50:50 -07:00
Blair Zajac
d133c0aeee apt: pass child process stdout and stdout to m.fail_json() and m.exit_json().
Without this, this fails:

    - name: apt-get dist-upgrade
      action: apt upgrade=dist
      register: apt_get_contents

    - name: apt-get clean
      action: command apt-get clean
      when: apt_get_contents.stdout.find("0 upgraded") == -1

TASK: [apt-get clean] *********************************************************

fatal: [192.168.2.2] => error while evaluating conditional: {% if apt_get_contents.stdout.find("0 upgraded") == -1 %} True {% else %} False {% endif %}

FATAL: all hosts have already failed -- aborting
2013-09-28 16:28:18 -07:00
abelbabel
effcb963f6 typo 2013-09-25 18:50:41 +02:00
abelbabel
ee5ab48bec removed typo 2013-09-25 18:38:46 +02:00
abelbabel
e504ff94e6 add check mode support
Could it be that easy or do I have missed something?
2013-09-25 17:51:17 +02:00
Pieter Avonts
60d8f92b3c changed deprecated channel_label attribute 2013-09-20 12:58:43 +02:00
René Moser
ccf4cf1dd8 Fixed missing required package in notes. 2013-09-19 19:34:15 +02:00
James Cammarata
022918e5af Merge branch 'fix/apt_repository_update_cache' of https://github.com/resmo/ansible into resmo-fix/apt_repository_update_cache 2013-09-18 12:40:39 -05:00
René Moser
9fccf96d61 apt_repository: added option update_cache.
The default behavior is to update_cache if changed.

If you add more then one repo, you may not want to update cache for every repo separately.
So you can now disable update_cache with this new option e.g. update_cache=no

Updating cache can also be handled using the apt module.
2013-09-18 19:14:08 +02:00
René Moser
a991b62a51 apt_repository: fix update cache after state=changed. Closes GH-4136 2013-09-18 11:47:39 +02:00
James Cammarata
671eeb65b2 Merge pull request #4138 from resmo/fix/redundant-fail-json
apt: fixed duplicate fail_json
2013-09-17 06:08:51 -07:00
Rene Moser
9449d62fb2 apt: fixed duplicate fail_json 2013-09-17 15:05:20 +02:00
James Cammarata
c6fdb85d88 Merge branch 'issue_3421_apt_pkg_iU' into devel 2013-09-16 06:54:05 -05:00
Michael DeHaan
00c0770f1b Merge pull request #4075 from sayap/easy_install
Locate easy_install path after (optionally) creating virtualenv.
2013-09-15 09:29:51 -07:00
James Cammarata
0d408ff295 Use low-level package objects in the apt module to check installed state
Packages which are half-installed are not adequately represented by
the .is_installed field of the apt.package.Package object. By using the
lower-level apt_pkg.Package object (which provides the .current_state
field), we can check for a partially-installed state more accurately.

Fixes #3421
2013-09-11 23:33:59 -05:00
Hiroaki Nakamura
4d2c2a262a Add an example for installing a group with the yum module. 2013-09-11 02:14:16 +09:00
Hiroaki Nakamura
caa68746ae Fix to getchanged correctly for yum groupinstall. 2013-09-11 02:10:53 +09:00
Yap Sok Ann
498c2665de Locate easy_install path after (optionally) creating virtualenv.
Without this, the first call to the easy_install module with a new virtualenv
will only create the virtualenv without installing the intended package, since
the `_is_package_installed` check will succeed as running /usr/bin/easy_install
as non-root user will return permission denied error with empty stdout.
2013-09-10 11:22:06 +08:00
James Cammarata
808d9596b2 Fixing typos in is_keyid function definition and usage
Fixes #4068
2013-09-09 17:26:44 -05:00
James Cammarata
b3c0e3e45e Revert "Styling: deprecation"
This reverts commit ecc2b6e742.

Fixes #4069
2013-09-09 15:17:43 -05:00
Michael DeHaan
8ec806905d Merge pull request #3942 from jocelynj/gem
Correctly handle option user_install in gem module
2013-08-27 06:00:06 -07:00
James Cammarata
a8984a6b2b Minor text corrections in the yum module documentation 2013-08-24 21:46:41 -05:00
Jocelyn Jaubert
f958a5ac81 Correctly handle option user_install in gem module 2013-08-24 22:49:18 +02:00
Hiroaki Nakamura
aa9e05baa2 Add description and examples for the name parameter accepts a url or a local path to a rpm file. 2013-08-25 02:30:41 +09:00
James Cammarata
1d98e7bc05 Cleaning up some pep8 issues in the pkgutil module 2013-08-22 20:21:02 -05:00
James Cammarata
dfbe1132d2 Merge branch 'allow_wildcard_yum' of https://github.com/mscherer/ansible into mscherer-allow_wildcard_yum 2013-08-22 16:20:10 -05:00
James Cammarata
12f2caeed6 Merge branch 'pacman_local_plus_check' of https://github.com/mivok/ansible into mivok-pacman_support_check_mode 2013-08-22 14:45:54 -05:00
James Cammarata
de4ed11fa6 Merge branch 'pacman_support_check_mode' of https://github.com/mivok/ansible into mivok-pacman_support_check_mode 2013-08-22 14:29:56 -05:00
James Cammarata
ae98a025bb Minor doc fixes for the pkgutil module 2013-08-20 21:08:56 -05:00
Alexander Winkler
59c7ef2afa Added module pkgutil 2013-08-20 21:08:56 -05:00
sjahl
4dd68c07a0 setting 0644 permissions on mkstemp file handles. Fixes issue #3857 2013-08-18 11:03:43 -04:00
Mark Harrison
a347bfa2bb Merge branch 'pacman_local' into pacman_local_plus_check
Conflicts:
	library/packaging/pacman
2013-08-17 17:56:33 -04:00
Mark Harrison
0419fb74bb Support check mode with pacman module 2013-08-17 17:44:41 -04:00
Mark Harrison
f52a1c8f46 Allow installation of local packages with pacman 2013-08-17 14:46:16 -04:00
Michael Scherer
472654447c Allow to use '*test*' in enablerepo for yum action
Yum commandline permit to use a wildcard to enable and disable
repositories in the --enablerepo switch, permitting to enable
a complete set of repository at once ( like all rpmfusion, all
update-testing, etc ).

However, this doesn't work in yum due to more stringent checks
that verify that a exact match is given for the name of the
repository , see commit 5c26805.

This commit enhance the check by permitting to test more than
1 repository at a time, thus permitting to use wildcards.
2013-08-17 18:43:53 +02:00
James Cammarata
10a0f03cdc Cleaning up of apt_repository module and removing wget parts 2013-08-13 16:11:03 -05:00
Michael Vogt
de404eac06 use either pycurl or wget to download from launchpad, also improve error message if neither is installed 2013-08-13 14:39:47 -05:00
Michael Vogt
5e56d42ed1 use pycurl instead of urllib2 when talking to launchpad to actually get SSL cert verification, see https://bugs.launchpad.net/ubuntu/+source/software-properties/+bug/915210 or CVE-2011-4407 for a previous similar issue in software-properties 2013-08-13 14:39:47 -05:00
James Cammarata
0958673574 Reverting version_added field in the apt_repository module 2013-08-13 09:53:49 -05:00
Alexander Saltanov
ded947008a Replacement for apt_repository.
1. Debian Squeeze is supported out of box now.
2. Repository type "deb" or "deb-src" should be explicitly specified.
3. If a source had beed added it must be possible to remove it.
4. PPA can be only used against Ubuntu hosts.
2013-08-13 09:53:49 -05:00
James Cammarata
6feb4e3837 Fail apt package install when nothing is matched by the fnmatch pattern
Related to PR #3823
2013-08-12 11:26:31 -05:00
Michael Vogt
5c39c659e5 add support for fnmatch() style apt filenames
You can write a apt action like "- apt: pkg=apt*" with this package.
2013-08-12 16:11:15 +02:00
Abhijit Menon-Sen
1a90d01ba9 Fix some typos discovered during casual reading 2013-08-11 18:41:23 +05:30
Alan Grosskurth
b950f9456a apt: Run remove commands noninteractively
I'm seeing ansible hang when trying to remove a package, and the hung
process is `whiptail` like in #2763. It looks like we only use
`APT_ENVVARS` and `DPKG_OPTIONS` for the `apt` commands in install()
and upgrade(). This change uses them in remove() as well, which fixes
the hang.
2013-08-05 15:20:45 -07:00
Michael DeHaan
de14995b8c PEP8: fix spacing 2013-08-03 14:55:38 -04:00
Michael DeHaan
40e447fbd4 Merge pull request #3718 from hacosta/rpm_key
Add rpm_key module
2013-08-03 11:39:10 -07:00
Michael DeHaan
caa825b618 Rename option to 'recurse' to make it consistent. Add version_added to docs. 2013-08-03 14:27:11 -04:00
Michael DeHaan
74cde56b60 Merge pull request #3636 from uggedal/pacman-remove-recursive
Pacman module: recursive remove support
2013-08-03 11:26:15 -07:00
Michael DeHaan
4f9d330242 Add version_added to new parameter. 2013-08-03 14:22:38 -04:00
Michael DeHaan
996dbb72eb Merge pull request #3662 from grosskur/apt-key-keyring-param
apt_key: Add 'keyring' parameter
2013-08-03 11:21:52 -07:00
Hector Acosta
c62210ce37 Add rpm_key module
This module can be used to import public keys into your rpm database.

Signed-off-by: Hector Acosta <hector.acosta@gmail.com>
2013-07-31 15:55:38 -05:00
Alan Grosskurth
5ccc7e7277 apt_key: Add 'keyring' parameter
The apt-key command takes an optional --keyring parameter representing
the path to a specific GPG keyring to operate on. If it's not given,
the command operates on all keyring files, i.e., /etc/apt/trusted.gpg
and /etc/apt/trusted.gpg.d/*.gpg.

This change adds a 'keyring' parameter to the apt_key module and
propagates it down to the apt-key command line. The main use case this
supports is organizing keys for third-party repos into individual
keyrings in /etc/apt/trusted.gpg.d, rather than putting them all in
the default keyring.
2013-07-24 18:10:17 -07:00
Andreas Kaiser
f2e3fa9508 Fix pkgin search (yielding wrong results under certain conditions, see inline comments). 2013-07-24 16:18:14 +02:00
Eivind Uggedal
35b918359b Pacman module: recursive remove support 2013-07-23 15:01:13 +02:00
Michael DeHaan
a35370a766 Fix prev feature commit, Do not require aptitude to use apt commands in the apt module, only needed when upgrading. 2013-07-22 15:15:55 -04:00
Michael DeHaan
5e02759570 Merge pull request #3617 from dermute/devel
svr4pkg doesn't work on Sol10
2013-07-22 04:37:10 -07:00
Michael DeHaan
7961a81b3f Update docs to add version_added attribute. 2013-07-21 11:12:04 -04:00
Michael DeHaan
32b3c59bad Merge pull request #3400 from diko4096/patch-1
Update gem
2013-07-21 08:10:27 -07:00
Michael DeHaan
e1167d6977 tweak indentation for 'make pep8' 2013-07-20 12:48:11 -04:00
Patrik Lundin
3f93367579 openbsd_pkg: Use ansible run_command().
This fixes an asterisk glob problem in get_package_state() where a file
in /root/ could cause shell expansion if it matched the package name.
The actual problem is solved by running with shell=False.
2013-07-20 17:45:07 +02:00
Michael DeHaan
f4b1e426ea Merge pull request #3379 from serenecloud/devel
Return a friendly error message if aptitude isn't installed
2013-07-19 07:36:39 -07:00
Michael DeHaan
6aa1ecbc30 Merge pull request #3493 from eest/openbsd_pkg-fixes
openbsd_pkg corner case fixes
2013-07-19 07:30:18 -07:00
Michael DeHaan
0bd8935899 Merge pull request #3515 from neomantra/apt_repository
apt_repository: enhance documentation
2013-07-19 07:06:05 -07:00
Alexander Winkler
52321c1557 fixes ansible/ansible#3547 2013-07-16 09:17:57 +02:00
Michael DeHaan
fa9635478b Fixing your YAML Seth :) 2013-07-15 13:16:37 -04:00
Seth Vidal
81940c8b11 add examples for yum: state=latest name=* 2013-07-13 14:29:04 -04:00
Seth Vidal
7216a2b169 add a '*' option for name to state=latest to do a global update 2013-07-13 14:28:52 -04:00
Evan Wies
01fc2b61dc apt_repository: enhance documentation 2013-07-12 15:03:37 -04:00
Patrik Lundin
1b08da26fd openbsd_pkg: some whitespace cleanup. 2013-07-10 21:23:10 +02:00
Patrik Lundin
af52cd6ec1 openbsd_pkg: sync package_latest().
This diff syncs package_latest() with the changes to package_present().
I have not managed to figure out how to handle the cornercases where
stderr is set but the command has not failed, so leave a FIXME blob for
other adventurers.
2013-07-10 21:06:35 +02:00
Patrik Lundin
0e4e6e8a84 openbsd_pkg: Handle another pkg_add gotcha
* Add '-m' to pkg_add incovation to get access to the "packagename-1.0: ok"
  message.
* Watch for that message if we are about to fail because of stderr in
  package_present().
2013-07-10 18:19:01 +02:00
Patrik Lundin
a67ea75dec openbsd_pkg: handle pkg_add quirks better.
This fixes a problem when trying to install a package with a specific version
number from a local directory and the local directory is checked after a remote
repository:

Error from http://ftp.eu.openbsd.org/pub/OpenBSD/[...]/packagename-1.0.tgz
ftp: Error retrieving file: 404 Not Found
packagename-1.0: ok
2013-07-09 20:56:22 +02:00
Felix Stuermer
b5df29901f Use the force=yes option for apt upgrade actions 2013-07-09 10:57:19 +02:00
Seth Vidal
d710201ecc - optimize for the extremely common case of people specifying pkg names which are, ultimately, already installed
on a system here time went from  16s for a series of pkgs to 3s to just
  check that they were installed.
2013-07-04 17:35:34 -04:00
Dmitry Kolobaev
8745de11a6 Update gem
I've added ability to install gems in system-wide manner with --no-user-install options
2013-07-01 06:20:46 -07:00
Michael DeHaan
ecc2b6e742 Styling: deprecation 2013-06-30 18:55:45 -04:00
Michael DeHaan
257d827c9e Styling: misc pep8 2013-06-30 18:54:32 -04:00
serenecloud
a17ca862fb Return a friendly error message if aptitude isn't installed 2013-06-30 15:36:13 +12:00
Jack Kuan
a07324c590 Fix the issue of easy_install ignoring virtualenv_site_packages=yes. 2013-06-29 17:03:12 -04:00
Michael DeHaan
f3093cbb1a Fixup previous apt_key patch to enable file based modes to work. 2013-06-26 14:46:29 -04:00
James Laska
4311412b44 Correctly load up2date configuration
Previously, a configuration file name of None was being passed into
up2dateInitConfig().  This resulted in a correct configuration import,
but failed to properly save the configuration back to disk in the event
a different serverURL was supplied.  This change removes support for
customizing the up2date filename entirely, and relies on up2date to
choose the default config filename.
2013-06-24 13:00:23 -04:00
Michael DeHaan
727cee509c Merge branch 'PR_add_chdir_to_pip' of git://github.com/y-p/ansible into devel
Conflicts:
	library/packaging/pip
2013-06-19 22:30:44 -04:00
Michael DeHaan
50fa88f28a Merge branch 'fix-apt-purge' of git://github.com/madduck/ansible into purge 2013-06-19 21:35:28 -04:00
Michael DeHaan
d9c0a5c37d Revert "now modules can implement with_items list globbing w/o updating"
This reverts commit 4942a06bc2.

Conflicts:

	lib/ansible/runner/__init__.py
2013-06-19 19:00:18 -04:00
martin f. krafft
ae42144752 Always assume purged for older python-apt
Older python-apt modules don't export Package.installed_files and there
seems to be no other way to figure out if a package is
removed-but-not-purged, so we just always assume it's purged.

Signed-off-by: martin f. krafft <madduck@madduck.net>
2013-06-19 10:56:43 +02:00
martin f. krafft
420f7d7ac6 Introduce non-purged package status
A package may be removed but not purged with APT. The only way to
identify this state is by looking at the list of installed files of
a package. Even if the package has no files installed, this list will be
non-empty until the package is removed:

  # python -c "import apt; c=apt.Cache(); c.update(); c.open(); p=c['ruby1.8']; print p, p.installed, p.installed_files"
  <Package: name:'ruby1.8' id:1425> None [u'']

  # dpkg --purge ruby1.8
  (Reading database ... 27904 files and directories currently installed.)
  Removing ruby1.8 ...
  Purging configuration files for ruby1.8 ...

  # python -c "import apt; c=apt.Cache(); c.update(); c.open(); p=c['ruby1.8']; print p, p.installed, p.installed_files"
  <Package: name:'ruby1.8' id:1425> None []

See http://bugs.debian.org/712749 too.

If a package is not marked installed but it still 'has_files', then it
should be processed if the request is to purge it.

Signed-off-by: martin f. krafft <madduck@madduck.net>
2013-06-19 10:00:33 +02:00
martin f. krafft
8e37a2bec9 Fix purging of packages
A small error in the reuse of a variable caused packages to never get
purged. This commit fixes that.

Signed-off-by: martin f. krafft <madduck@madduck.net>
2013-06-19 10:00:33 +02:00
Michael DeHaan
31b63b033b Merge conflict 2013-06-18 20:18:17 -04:00
Michael DeHaan
96134d003e Merge remote branch 'origin/devel' into devel 2013-06-18 20:17:31 -04:00
Jesse Keating
86bc2ec08a pkg option of apt is not required
You can use apt module with update_cache and without specifying a
package. Update the docs to reflect this.
2013-06-18 16:25:46 -07:00
Michael DeHaan
b4358d1300 Merge branch 'apt_key_file' of git://github.com/veeti/ansible into devel
Conflicts:
	library/packaging/apt_key
2013-06-18 16:18:31 -04:00
Veeti Paananen
77159d21da Add apt_key examples for file and data 2013-06-17 18:23:40 +03:00
Jan-Piet Mens
30d641094b Docs: consistently format playbook EXAMPLES 2013-06-17 08:53:46 +02:00
Michael DeHaan
e128e8b563 Merge pull request #3162 from strawlab/apt-key-binary-fix
allow apt-key module to work with binary key
2013-06-16 20:27:10 -07:00
Michael DeHaan
58e8a97e91 Merge pull request #3225 from eest/openbsd_pkg-check_mode
openbsd_pkg: Add check_mode support.
2013-06-16 19:40:46 -07:00
Michael DeHaan
613df1d649 Merge pull request #3213 from veeti/apt_key_data
Document the data argument for apt_key
2013-06-16 19:39:55 -07:00
Michael DeHaan
d9f91be34a Merge pull request #3227 from bcoca/modules_wantlist
implementing with_items list globbing made easier for modules
2013-06-16 19:29:02 -07:00
Michael DeHaan
f87299842c Merge pull request #3199 from chrishoffman/doc_error
Fixing documentation error
2013-06-16 19:28:12 -07:00
Michael DeHaan
4849539399 Merge pull request #3194 from E-M/patch-2
Fixed Issue #3193 - make rhn_register module compatible with EL 5
2013-06-16 19:17:05 -07:00
Brian Coca
4942a06bc2 now modules can implement with_items list globbing w/o updating
hardcoded lists in ansible code, just add WITH_ITEMS_USES_LIST in a
comment anywhere, and of course, support recieving params as list.

Signed-off-by: Brian Coca <briancoca+dev@gmail.com>
2013-06-15 16:28:43 -04:00
Jan-Piet Mens
5c69918d53 DOCS: standardize on EXAMPLES (a.k.a. Docs-JumboPatch JetLag Edition)
Migrated all examples: in DOCUMENTATION=''' string to standalone EXAMPLES=''' string
  Added deprecation warning to moduledev.rst and remove deprecated example from it
  Fixed up a few typos and uppercased some acronyms.
  add consistency to how EXAMPLES are formatted
2013-06-15 20:54:25 +02:00
Patrik Lundin
9dfc420927 openbsd_pkg: Add check_mode support.
The biggest change has been to package_latest since it was previously
just comparing version numbers before and after an upgrade had run.
We now parse the output from a dry run instead.

Thanks to Johan Belin for triggering the discussion :).
2013-06-15 16:27:45 +02:00
Veeti Paananen
1284bfd742 Add a file argument to apt_key 2013-06-14 14:34:04 +03:00
Veeti Paananen
dcb06a2306 Document the data argument for apt_key 2013-06-14 14:32:56 +03:00
Chris Hoffman
8a55210fb6 Removing all the default: null from the documentation 2013-06-13 20:43:14 -04:00
Chris Hoffman
499c7309e3 Fixing documentation error 2013-06-13 15:19:35 -04:00
Edgars M.
46ad4299a8 Fixed Issue #3193 2013-06-13 15:17:35 +03:00
E-M
170a5f36f1 Fixed module name in examples section
Examples showed that modules name is rhnreq_ks, when it actually is rhn_register.
2013-06-13 11:13:53 +03:00
Andrew Straw
94e66ef558 allow apt-key module to work with binary key 2013-06-09 20:03:28 +00:00
Michael DeHaan
41bded178d Rename module 2013-06-08 14:18:31 -04:00
Michael DeHaan
305694a847 Update "added in" version in zypper, update doc name of rhn_register module. 2013-06-08 14:09:37 -04:00
Michael DeHaan
cbee66c88b Rename module 2013-06-08 14:08:52 -04:00
Michael DeHaan
c26d39c9d4 Rename rhnreg_ks to rhn_register 2013-06-08 14:08:23 -04:00
Michael DeHaan
d0ded631d6 Merge pull request #3148 from jlaska/rhnreg_ks
Add rhnreg_ks module
2013-06-08 11:06:24 -07:00
Patrick Callahan
c1ec8ead6c BUG FIX: Add package name to the cmd. 2013-06-07 23:31:21 -04:00
James Laska
6059ce34e3 Minor adjustments to subscription_manager and rhnreg_ks 2013-06-07 14:18:23 -04:00
James Laska
65993e8f35 Reorganize subscription_manager module.
Also ...
 * When unregistering, first unsubscribe from all content
2013-06-07 14:07:00 -04:00
James Laska
a2cbcec328 The rhnreg_ks module acts as a wrapper to the command 'rhnreg_ks'. The
rhnreg_ks command allows users to manage registration to a Red Hat
Network (RHN) (e.g. rhn.redhat.com) server.  The moduel will also
interact with the specified RHN system via XMLRPC as needed.

Before proceeding with registration, the rhnreg_ks module will enable
the system to receive updates from RHN.  This involves enabling the
appropriate RHN yum plugin, as well as disabling an active
subscription-manager yum plugin.

Once enabled, the module will support the following operations:
 * configure
 * register
 * subscribe to custom child channels (see `rhn-channel` command)
 * unregister
2013-06-07 13:45:25 -04:00
Patrick Callahan
79b56667e3 Simple zypper module to install, remove, or upgrades packages. 2013-06-06 21:57:32 -04:00
Michael DeHaan
df4c444571 Fixup doc YAML 2013-06-06 19:21:18 -04:00
James Laska
19b7cb6653 Updated examples and documentation 2013-06-06 16:30:06 -04:00
James Laska
3ba19bf369 Add RHN subscription_manager module
The subscription_manager module acts as a wrapper to the command
'subscription-manager'.  The subscription-manager utility allows users
to manage RHN registration, subscription and yum repositories from the
Red Hat Entitlement platform.

Currently, this module supports the following sub-commands:
 * config
 * [un]register
 * subscribe
2013-06-06 15:00:38 -04:00
y-p
50666eac34 Add is_local_path check to pip module, for skipping --use-mirrors 2013-06-04 03:01:42 +03:00
y-p
9ebb7450d5 Add chdir parameter to pip 2013-06-04 02:15:39 +03:00
Michael DeHaan
3a635d2d26 Lots of formatting fixes 2013-05-24 23:46:23 -04:00
Michael DeHaan
b499f0754e Merge pull request #2986 from wbowling/devel
Fixes apt_repository always reporting file uri repos as changed
2013-05-24 20:07:03 -07:00
Michael DeHaan
82909179a0 Merge pull request #2976 from stoned/pip-virtualenv_command-pathname
Allow virtualenv_command argument of the pip module to be a pathname
2013-05-24 20:01:12 -07:00
Michael DeHaan
e68894ea45 Merge pull request #2975 from stoned/doc-pip-fix
Fix pip module documentation (YAML quoting)
2013-05-24 19:55:14 -07:00
Michael DeHaan
e3af9258ae Merge pull request #2995 from SirScott/pip-sudo-user
pip module -- sudo_user permission problem fix
2013-05-24 19:51:38 -07:00
Stoned Elipot
81e0a7adcc Fix typo in npm module documentation preventing it to be processed by ansible-doc 2013-05-24 01:27:46 +02:00
Scott Sturdivant
b2542bff72 Chdir to tempdir to prevent permissions problems. 2013-05-23 10:56:52 -06:00
William Bowling
222f004bfa Fixes apt_repository always reporting file uri repos as changed 2013-05-23 12:39:22 +10:00
Stoned Elipot
d4d0753e03 Allow virtualenv_command argument of the pip module to be a pathname 2013-05-22 18:15:21 +02:00
Stoned Elipot
83cce7d2e0 Fix pip module documentation (YAML quoting) 2013-05-22 18:09:01 +02:00
John Jarvis
daf4c358f7 fixes case where name is omitted from pip arg list
This code:
```
    if name.endswith('.tar.gz') or name.endswith('.tar.bz2') or
name.endswith('.zip'):
        is_tar = True
```
was not checking whether name is defined since it is an
optional param.
2013-05-18 20:59:21 -04:00
John Jarvis
423fe82d94 fixing syntax error 2013-05-18 19:49:25 -04:00
Michael DeHaan
5f98c6c246 Merge pull request #2948 from jcbagneris/devel
Fixes in apt module doc: typos, examples
2013-05-18 13:33:27 -07:00
Michael DeHaan
223e4e2349 Merge pull request #2932 from bcoca/apt_getbins
apt now uses module function to find bin paths
2013-05-18 13:13:04 -07:00
Michael DeHaan
e389b00050 Merge pull request #2905 from kjkuan/bugfix-apt-version-comparison
Make package version comparison use globbing.
2013-05-18 12:48:28 -07:00
Michael DeHaan
9a19e8a8ae Merge pull request #2875 from yeukhon/devel
Pip's name key can now accept remote package address.
2013-05-18 12:41:12 -07:00
Yeukhon Wong
08a486fe31 Pip can now accept vcs or tarball as name. Prevented adding mirrors when name is vcs.
**Summary**:

There was a bug in the previous commit; pip module would add --use-mirrors options to a source package when state is absent. The bug is resolved in this commit by checking ``not is_package`` in the if branch.

Furthermore, in order to support non-vcs source name like tarballs, we must not add -e option to the arg list. Given this circumstance, this commit have is_tar and is_vcs and the latter is checked to add -e option. Since mirrors do not make sense with vcs or tarball source, this commit will not add --use-mirrors (default to True) as always.
2013-05-18 05:31:29 +00:00
JcB
33ba919e5f Fixes in apt module doc: typos, examples 2013-05-17 16:12:30 +02:00
Brian Coca
a8ca48888f apt now uses module function to find bin paths
Signed-off-by: Brian Coca <briancoca+dev@gmail.com>
2013-05-15 22:44:12 -04:00
Michael DeHaan
d29d142a2d Merge pull request #2911 from sergevanginderachter/apt-repo-ppa-bug
fix an idempotence bug in apt-repository where 'ppa' is used in a plain http://ppa. ....
2013-05-14 13:13:04 -07:00
Jack Kuan
c7ebe44780 Make package version comparison use globbing.
I have something like:

  apt: pkg={{ item }} state=present
  with_items:
    - python-pysqlite2=2.6.3-*
    - python-paramiko=1.7.7.1-*

But due to the use of *'s in the version specifications, the apt ansible
module always reports changed: true. This patch fixes that.
2013-05-13 15:01:02 -04:00
Michael DeHaan
71f77d1583 Merge pull request #2895 from jpmens/docreqs
Add Requirements to rst template, ansible-doc
2013-05-11 11:41:20 -07:00
Jan-Piet Mens
eeb80c695f Add Requirements to rst template, ansible-doc
tweak position & look of Requirements in rst
tweak APT's notes as per anhj's wish
2013-05-11 16:46:59 +02:00
bleader
bdf6819c71 new module to handle FreeBSD packages with pkgng
New binary package management should be the default soon in FreeBSD, and
is already fully useable through self generated and non official binary
repositories.

- add support for pkgng
- support specifying the repository url as a parameter
- allow not to update cache

Signed-off-by: bleader <bleader@ratonland.org>
2013-05-10 15:03:07 +02:00
Yeukhon Wong
5946a25c91 Pip's name key can now accept remote package address.
Summary:

Pip module would abort when name is a remote package address because
the module was expecting a version if ``=`` is part of the name value.

Furthermore, the pip module would require either name or requirement to
be a key, although the documentation table said neither was required.
The fact that one of them must be present is not documented in the
documentation leads to confusion. This commit added this fact as part
of description.

In this commit, we resolve the confusion by stating either ``name``
or ``requirement`` is needed. Next, if the user puts remote address
as the value of the ``name`` key, we will not use mirror. Lastly,
if the user uses the remote serivice address as the name of the
package and the user does not supply -e option in extra_vars
(which is the whole point of this commit), we will add -e to
 extra_vars so pip command can run with -e option.
2013-05-09 05:11:02 -04:00
Michael DeHaan
4f5bcd701f Merge branch 'devel_apt-cache_valid_time' of git://github.com/gottwald/ansible into devel 2013-05-05 12:28:33 -04:00
Serge van Ginderachter
13a9613bc6 fix a bug in apt-repository where 'ppa' is used in a plain http://ppa. .... url 2013-05-03 20:57:55 +02:00
Michael DeHaan
391fb98ee2 Allow modules to be categorized, and also sort them when generating the documentation. 2013-04-28 15:03:45 -04:00