Commit Graph

1020 Commits (b22b087cf009dbb55e90fc5ef96639c6026cc08a)
 

Author SHA1 Message Date
Mark Theunissen 7a3f64d4d7 Check file exists instead of relying on the exception. Leave the exception catch in, in case the file is deleted or some other issue crops up 12 years ago
Mark Theunissen 812711d530 Woops, missed the rest of them 12 years ago
Mark Theunissen b51d6d9fca Making the passwd parameter consistent 12 years ago
Mark Theunissen 894e4ff78a Changing to read from a file pointer instead so that an exception is thrown if the file doesn't exist 12 years ago
Nikhil Singh 8d283f8194 Code review changes
1. Passing the module to the various functions so that they can use module.fail_json and module.exit_json methods inside.
2. Because of point 1, install and remove methods do not return anything. Instead, they use the module functions itself.
3. Move the import statement (for apt and apt_pkg) inside main function so on import error, we can use module.fail_json to print the error.
12 years ago
Nikhil Singh 4d6b3713a7 Adding dict() for json.dumps 12 years ago
Nikhil Singh 096022acb2 Standardizing the apt module 12 years ago
Stephen Fromm 1165866ecb Update git module to handle branches better
This drops the branch option.  The version option is overloaded
to mean either a sha1, branch, or tag.  This also adds the option
'remote' which defaults to 'origin'.
clone() was simplified by removing the checkout operation.  That
happens later when switch_version() is called.

Added the methods get_branches(), is_remote_branch(), and
is_local_branch().  get_branches() returns an array listing all
of the branches for the git repository.  is_remote_branch() checks
whether the arguments supplied correspond to a remote branch.
Similarly, is_local_branch() checks for a local branch.

The pull() method now checks to see if it is on the desired branch.
If not, it checks out the requested branch and then does a pull.
This should keep issue #604 still fixed.

switch_version(), formerly switchver(), looks to see if it is
checking out a branch.  If a branch, it checks it out with the --track
option.  This type of checkout was in pull() before.

Updated pull, clone, and switch_version to return (rc, out, err).
12 years ago
Michael DeHaan 1fe021f7bb Further standardize the yum module 12 years ago
Michael DeHaan 3e8ee7cbf0 Merge pull request #684 from nix85/fix_yum_mod
Standardizing the yum module
12 years ago
Mark Theunissen 5ab81692d7 Change modules to use credentials in my.cnf if they are available 12 years ago
Stephen Fromm 6b6fb383a1 More cleanup in assemble module for module magic (tm) 12 years ago
Nikhil Singh f483d1c3f3 Standardizing the yum module 12 years ago
Michael DeHaan 99ff761d3e shorten up the assemble module 12 years ago
Michael DeHaan 2553219131 Merge pull request #675 from jpmens/assemble1
convert sfromm's assemble to module-magic
12 years ago
Michael DeHaan aae41c0d46 Port async_status to use the new common code. 12 years ago
Michael DeHaan aa20ae5c02 Port command module over to new common code. Notice that this has to subclass AnsibleModule -- this should be the only
one that has to do that.
12 years ago
Michael DeHaan 72465c6fe1 Merge pull request #674 from nix85/fix_facter_mod
Standardizing the module
12 years ago
Jan-Piet Mens 52ab221c92 convert assemble to module-magic 12 years ago
Nikhil Singh e10d52defa Standardizing the module 12 years ago
Mark Theunissen b7b44fbf93 Undefined variable error 12 years ago
Nikhil Singh 54db17f462 Standardizing the mount module 12 years ago
Michael DeHaan 8ea6e84efb Merge pull request #664 from jpmens/a1
Fix file module to support = in args; remove superflous call in get_url
12 years ago
Christoph Seitz fa8ca9a819 Fixes locale problem with ifconfig in setup module 12 years ago
Jan-Piet Mens 62393ccc7c Fix file module to support = in args; remove superflous call in get_url 12 years ago
Michael DeHaan 4ac5fcf3a3 Save the transfer of the module file for new style modules, because we can inject the arguments into the modules.
Module consumers using the API don't have to know how this works.  base64 stuff is only there
because escaping a docstring inside a docstring was a bit of a challenge :)
12 years ago
Stephen Fromm 47cd5de2cc Update user module to use new shared module code 12 years ago
Mark Theunissen b279f1aea2 Upgrading MySQL user module to new format 12 years ago
Michael DeHaan 2437ee5236 Tweaking daisychain internals to allow get_url to modify the path destination when downloading to a directory.
Minor module refactoring.
12 years ago
Michael DeHaan d0f20668a2 Merge branch 'get_url3' of https://github.com/jpmens/ansible into devel 12 years ago
Stephen Fromm aeed872aee Update group module to use new shared module code 12 years ago
Mark Theunissen 0bad1e7de2 Upgrading to new shared module code 12 years ago
Michael DeHaan 30d10bb485 imports not needed 12 years ago
Michael DeHaan 7b54388393 Port the copy module over to the new "common module" logic. 12 years ago
Jan-Piet Mens b4d4811077 new module: get_url
get module (with new module-magic-code!)
	Usage: ansible -m get -a "url=http://xxxxxxx  dest=fileordirctory"
	all cleanups as per @mpdehaan's suggestions
	add daisychain
	added example playbook (get_url.yml) with URLencode example
12 years ago
Stephen Fromm 2d6babbd63 Skip get_ipv6_facts if socket.has_ipv6 is false 12 years ago
Stephen Fromm 566f115a4f Fix for issue 604
Do not switch to master branch in pull()
Add --track to git checkout, when checking out a remote branch to track.
12 years ago
Michael DeHaan fc6ee63fba Merge pull request #637 from goozbach/git-mkdir
git mkdir causes problems with older git (can't c/o to existing directory)
12 years ago
Derek Carter 69ef933a1e git mkdir causes problems with older git (can't checkout to existing directory) 12 years ago
Michael DeHaan 51160d96f1 Merge pull request #631 from sfromm/facts
Update setup module for facts derived from classes - take 2
12 years ago
Michael DeHaan 853d1179e0 By defining a main function here, and including it ahead of the boilerplate insertion symbol, tracebacks are
now accurate with respect to the main function, but may include lines not in the original file.  A lot better
than before, where they were offset.
12 years ago
Stephen Fromm 9f063f1d3d Update LinuxNetwork to not use fcntl and ioctls
get_interfaces() updated to read /proc/net/dev.  This means it no
longer provides only interfaces that are up.

get_iface_hwaddr() updated to read from /sys/class/net/<iface>/address.

Added get_interface_facts() to pull in mac address and interface mtu.
Can be used later for additional interface-facts.

Added get_ipv6_facts(), which reads from /proc/net/if_inet6.

get_network_facts() renamed to get_ipv4_facts().  It still calls
ifconfig to determine ipv4 facts.
12 years ago
Stephen Fromm cf9b078619 Check if CPU is QEMU via different mechanism
The processor fact doesn't exist in LinuxVirtual.  Read /proc/cpuinfo
and check if it is QEMU.
12 years ago
Stephen Fromm 6e4e39f285 Add back erroneously deleted get_file_content() 12 years ago
Stephen Fromm f7cf2b5301 Adjustments to behavior of Facts and subclass behavior
The Facts class and subclasses no longer take a dict argument for
instantiation.  populate() now returns self.facts.
Other changes:
- Facts.__init__() takes over most of the work from populate() so that
  subclasses can benefit from its knowledge.
- Drop setting unknown facts to 'NA' in __init__() in various
  subclasses.
- Check for presence of facts in get_virtual_facts()
- Update ansible_facts() to use facts.update(<classname>().populate())
12 years ago
Stephen Fromm 582d31cde6 Update setup module for facts derived from classes
This changes and organizes facts into a base class Facts and several
sub classes that implement the necessary functionality.  The classes
are:
- Facts: base class.  Implements basic facts that should be common to a
  number of platforms.  It is also where SSH keys and SELinux facts are
  set.
- Hardware: A subclass of Facts that should be further
  subclassed per platform for CPU, memory, and related facts.
  - LinuxHardware: subclass of Hardware for Linux platforms
  - SunOSHardware: subclass of Hardware for SunOS platforms
  - FreeBSDHardware: subclass of Hardware for FreeBSD
- Network: A subclass of Facts that that should be further
  subclassed per platform for IP, both IPv4 and IPv6, information.
  - LinuxNetwork: Currently only implementation for determining network
    facts.
- Virtual: A subclass of Facts that that should be further
  subclassed per platform to determine virtual environment facts.
  - LinuxVirtual: Currently only implementation for determining virtual
    facts.

If facts are needed for additional platforms, one of the above classes
(eg Network) can be further subclassed and implement the necessary
functionality.

In addition, it fixes get_network_facts() to work on Fedora17.  That
broke due to changes to ifconfig output.
12 years ago
Michael DeHaan 830821bf2c Common module code upgrades 12 years ago
Michael DeHaan 73d9fbfc9e Added code to allow insertion of boilerplate into modules to make them able to share lots of code, the result
should be a huge reduction of total ansible source, at a slight cost of difficulty in original module development.

We need to apply this now to all modules, but may need to have some exemptions to things like command, which should
subclass this module.
12 years ago
Peter Sankauskas cb6acfc1dc Pass through error message when repo not found 12 years ago
John Kleint 7933c3faed Service module outputting extra data.
The service module was printing stuff to stderr, returning two
JSON dicts, not using consistent 'failed' values, had dead code
and unused variables.  Added detection for the case when service
status returns 'xxx is dead and pid file exists' and made the
code a bit easier to read.
12 years ago