Commit Graph

250 Commits (c264e12b53984b0659b091998cd3b5773e7ce094)

Author SHA1 Message Date
Matthias Vogelgesang 0f05100002 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.
11 years ago
jctanner d0581d1c4d Merge pull request #4786 from SalesSeek/find-correct-easy-install
Fix determination of correct, possibly customized, 'easy_install' executable
11 years ago
James Tanner 104eaaa8e1 Addresses #4735 Verify the virtualenv command supports --no-site-packages before passing it 11 years ago
Pedro Romano 22c7891886 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.
11 years ago
Yegor Minin 0b51476c0a 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'
11 years ago
chrisalbright dbbad79299 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.
11 years ago
Marcus Cobden c7dfa16edf Only remove leading '0x' from key ids, not all 0s 11 years ago
Thomas Omans ae6e080bd9 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.
11 years ago
Michael DeHaan a33119dede Merge pull request #4509 from mremond/gem_executable
Add executable parameter to find gem binary in gem module
11 years ago
Rene Moser c2c0729f6e apt: autoinstall python-apt if not available 11 years ago
Michael DeHaan ce8b0944a9 Misc pep8 fixes 11 years ago
Jonathan Mainguy ce583d4fcc Changed note describing this functionality was added in 1.4 to match what I have seen in other modules 11 years ago
Jimmy Tang 858b3da2ae check for ubuntu distribution first 11 years ago
Michael Scherer ee62de7887 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.
11 years ago
Maykel Moya a96f75c396 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
11 years ago
Maykel Moya 5d41d2eaa4 apt_key: Validate key_id and accept a leading '0x' 11 years ago
James Tanner 56ffd4edbb Fixes #4532 Send easy_install to get_bin_path instead of None 11 years ago
James Tanner 875a7aa020 fix indentation in easy_install module docstring 11 years ago
Mickaël Rémond 4d334b3c86 Add executable parameter to find gem binary in gem module
This is especially needed with rvm where gem binary can be in unusual locations
11 years ago
Jonathan Mainguy 5be47613d5 Added note in description explaining this was added in Ansible 1.4 11 years ago
Michael DeHaan 4105af455e Merge pull request #4488 from renanivo/devel
create install_options parameter for homebrew module
11 years ago
Pedro Romano c73d8012b4 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.
11 years ago
Pedro Romano 1391add126 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.
11 years ago
Pedro Romano 8a843e997f 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. 11 years ago
Pedro Romano 506d476d9d 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. 11 years ago
Pedro Romano 0f2722d761 Rename copy/pasted variables more appropriately. 11 years ago
Pedro Romano ddcac647ff Changes examples from using Flask to some other package (Bottle was chosen) as per @mpdehaan's suggestion. 11 years ago
Jurrien Bloemen d56db0c85a Added full path to rhnreg_ks command for working correctly with sudo. 11 years ago
Renan Ivo ecb9b2ea0f update version_added of homebrew module 11 years ago
Renan Ivo 086da3dafc set default options value to None in homebrew module 11 years ago
Renan Ivo d038ea2956 create install_options parameter to homebrew module 11 years ago
Jonathan Mainguy d1eb67d689 Changed resp= to response_file= as per mpdehaan's request 11 years ago
Jimmy Tang 878fd17bc6 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]
11 years ago
Michael DeHaan beae21dd40 Remove examples of module antipattern of setting the choices array for boolean types. 11 years ago
Andy Kluger 819bd3d8f7 Set default of 'yes' for update_cache, as is in the documentation 11 years ago
Michael DeHaan 8f896a85bf Correct typo 11 years ago
Jonathan Mainguy c45b5ef038 Added resp= option for svr4pkg to enable the -r option in pkgadd for response files 11 years ago
Jeremy Price 1c0707ade7 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. 11 years ago
Michael DeHaan 64349632c7 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"
11 years ago
Michael DeHaan 85d0ea0d5f Use explicit boolean defaults in apt module to make the code more clear. 11 years ago
Raul Melo 1eaf3881ef Changed ansible target version 11 years ago
Raul Melo c01540f8ac Change file swdepot perms 11 years ago
Raul Melo b8cba01800 Made some code cleanups and use of module.run_command 11 years ago
Raul Melo e635a1ee5a Module for swdepot (HP-UX package manager) 11 years ago
Michael DeHaan 3835c2cb3a Merge pull request #4347 from sashka/devel
Remove options and protocols in source line with regex.
11 years ago
Michael DeHaan 12308c9152 Fix module formatting in the pkgutil module. 11 years ago
Alexander Saltanov 729a6f1533 Remove options and protocols in source line with regex.
Fixes #4311
11 years ago
Andy Kluger 8f43db3167 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.
11 years ago
Blair Zajac a5cdf49184 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.
11 years ago
Blair Zajac 4a6c68e98a 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
11 years ago
abelbabel 51cebb062d typo 11 years ago
abelbabel 19db4d381c removed typo 11 years ago
abelbabel 9e88993939 add check mode support
Could it be that easy or do I have missed something?
11 years ago
Pieter Avonts 42e4d8cb30 changed deprecated channel_label attribute 11 years ago
René Moser 2e649d21af Fixed missing required package in notes. 11 years ago
James Cammarata bb36429fa2 Merge branch 'fix/apt_repository_update_cache' of https://github.com/resmo/ansible into resmo-fix/apt_repository_update_cache 11 years ago
René Moser cb9308a998 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.
11 years ago
René Moser 53d06b932a apt_repository: fix update cache after state=changed. Closes GH-4136 11 years ago
James Cammarata a6e339fc36 Merge pull request #4138 from resmo/fix/redundant-fail-json
apt: fixed duplicate fail_json
11 years ago
Rene Moser 8c7c0833c2 apt: fixed duplicate fail_json 11 years ago
James Cammarata d6b7c91aa9 Merge branch 'issue_3421_apt_pkg_iU' into devel 11 years ago
Michael DeHaan 4a50a76669 Merge pull request #4075 from sayap/easy_install
Locate easy_install path after (optionally) creating virtualenv.
11 years ago
James Cammarata c48fc23d75 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
11 years ago
Hiroaki Nakamura 868620f7d0 Add an example for installing a group with the yum module. 11 years ago
Hiroaki Nakamura 80d68320f7 Fix to getchanged correctly for yum groupinstall. 11 years ago
Yap Sok Ann 6ca45d1964 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.
11 years ago
James Cammarata 5a86b82cec Fixing typos in is_keyid function definition and usage
Fixes #4068
11 years ago
James Cammarata ab21123a5c Revert "Styling: deprecation"
This reverts commit ecc2b6e742.

Fixes #4069
11 years ago
Michael DeHaan 789d08a85d Merge pull request #3942 from jocelynj/gem
Correctly handle option user_install in gem module
11 years ago
James Cammarata 25713f0b05 Minor text corrections in the yum module documentation 11 years ago
Jocelyn Jaubert 8b5d2aeef9 Correctly handle option user_install in gem module 11 years ago
Hiroaki Nakamura 949744c194 Add description and examples for the name parameter accepts a url or a local path to a rpm file. 11 years ago
James Cammarata 0caaa023e2 Cleaning up some pep8 issues in the pkgutil module 11 years ago
James Cammarata fb23c53e3d Merge branch 'allow_wildcard_yum' of https://github.com/mscherer/ansible into mscherer-allow_wildcard_yum 11 years ago
James Cammarata 8345beafca Merge branch 'pacman_local_plus_check' of https://github.com/mivok/ansible into mivok-pacman_support_check_mode 11 years ago
James Cammarata 5c6276b6a3 Merge branch 'pacman_support_check_mode' of https://github.com/mivok/ansible into mivok-pacman_support_check_mode 11 years ago
James Cammarata 1f78606620 Minor doc fixes for the pkgutil module 11 years ago
Alexander Winkler 487dcccd7d Added module pkgutil 11 years ago
sjahl 39b0122d37 setting 0644 permissions on mkstemp file handles. Fixes issue #3857 11 years ago
Mark Harrison 2971215fd6 Merge branch 'pacman_local' into pacman_local_plus_check
Conflicts:
	library/packaging/pacman
11 years ago
Mark Harrison 832dd5e330 Support check mode with pacman module 11 years ago
Mark Harrison 3a702b100e Allow installation of local packages with pacman 11 years ago
Michael Scherer df682d1cda 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.
11 years ago
James Cammarata a32f1cac8d Cleaning up of apt_repository module and removing wget parts 11 years ago
Michael Vogt d036723661 use either pycurl or wget to download from launchpad, also improve error message if neither is installed 11 years ago
Michael Vogt b69e7c92e7 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 11 years ago
James Cammarata ae962bf645 Reverting version_added field in the apt_repository module 11 years ago
Alexander Saltanov aed1f4156e 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.
11 years ago
James Cammarata 93a9b1c5c6 Fail apt package install when nothing is matched by the fnmatch pattern
Related to PR #3823
11 years ago
Michael Vogt 2503c36c6a add support for fnmatch() style apt filenames
You can write a apt action like "- apt: pkg=apt*" with this package.
11 years ago
Abhijit Menon-Sen a37e232cb1 Fix some typos discovered during casual reading 11 years ago
Alan Grosskurth d91e6e06e4 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.
11 years ago
Michael DeHaan ea08f247f9 PEP8: fix spacing 11 years ago
Michael DeHaan 1e2630d814 Merge pull request #3718 from hacosta/rpm_key
Add rpm_key module
11 years ago
Michael DeHaan c13b1cb18e Rename option to 'recurse' to make it consistent. Add version_added to docs. 11 years ago
Michael DeHaan 933455a6a3 Merge pull request #3636 from uggedal/pacman-remove-recursive
Pacman module: recursive remove support
11 years ago
Michael DeHaan e1e37002c3 Add version_added to new parameter. 11 years ago
Michael DeHaan d6b54d69fd Merge pull request #3662 from grosskur/apt-key-keyring-param
apt_key: Add 'keyring' parameter
11 years ago
Hector Acosta 809278ba1b 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>
11 years ago
Alan Grosskurth 5700970e05 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.
12 years ago