Commit Graph

9823 Commits (b0ff1ea425585ec16585ec6a7d2e676ed3c45430)
 

Author SHA1 Message Date
Serge van Ginderachter b0ff1ea425 performance optimisation in hash merge logic
rewrite deepcopy in util.merge_hash and just iterate
on an inventory with 500 groups and 800 hosts this brings back the
inventory initialisation from 13s to 3s (with hash_behaviour=merge)
11 years ago
Serge van Ginderachter d4634983f0 Move group/host_vars parsing into core inventory
modified:   lib/ansible/inventory/__init__.py
	deleted:    lib/ansible/inventory/vars_plugins/group_vars.py
	modified:   lib/ansible/utils/__init__.py
11 years ago
Serge van Ginderachter f8ea93c732 Move inventory.set_playbook_basedir from ansible-playbook to playbook constructor 11 years ago
Serge van Ginderachter cc28fd891b Introduce noop vars plugin.
In preparation to move the group_vars plugin code into core.

	new file:   lib/ansible/inventory/vars_plugins/noop.py
11 years ago
Serge van Ginderachter f6a55a3552 Refactor vars_plugins (host/group_vars)
Split out parsing of vars files to per host and per group
parsing, instead of reparsing all groups for each host. This enhances
performance.

Extend vars_plugins' API with two new methods:
* get host variables: only parses host_vars
* get group variables: only parses group_vars for specific group
The initial run method is still used for backward compatibility.

Parse all vars_plugins at inventory initialisation, instead of
per host when touched first by runner. Here we can also loop through
all groups once easily, then parse them.
This also centralizes all parsing in the inventory constructor.

	modified:   bin/ansible
	modified:   bin/ansible-playbook
	modified:   lib/ansible/inventory/__init__.py
	modified:   lib/ansible/inventory/vars_plugins/group_vars.py
11 years ago
James Tanner 3194fbd365 Fixes #6655 catch unicode encoding errors before sending to syslog 11 years ago
jctanner 7b8d1c0ffd Merge pull request #6580 from ramondelafuente/fix-vault-editor-call
Changed call to EDITOR to allow for parameters
11 years ago
Ramon de la Fuente c79c001bfb Changed call to EDITOR to allow for parameters
The EDITOR environment variable is used to create and edit files in the vault.
But if the EDITOR variable contains parameters, subprocess.call() breaks.

This fixes the EDITOR environment variable to be safely split into a list.
It adds a dependency on shlex.
11 years ago
James Cammarata c9bf7eb9bb Don't run {failed|changed}_when checks until async_status is done
Fixes #5117
11 years ago
James Cammarata 4ea12c1b86 Make sure stat of dest is available in atomic_move
Fixes #6682
11 years ago
jctanner adbd6865da Merge pull request #6681 from zytek/devel
Properly revert changes introduced in #6579
11 years ago
James Tanner f9018a6f1d Ensure handlers run when meta tasks are defined and add handler integration tests
Fixes #6678
Fixes #6670
11 years ago
Michael DeHaan 3eecc039b9 Merge pull request #6656 from Jmainguy/setup
Added ansible_date_time.weekday as a fact. This returns Monday,Tuesday,W...
11 years ago
James Cammarata 8c7828d469 Tweaking error message resulting from undefined template variables
Fixes #5114
11 years ago
James Cammarata 846933dd53 Make inventory parsing error detection smarter
If something is executable but doesn't look like it should be, or if
something is NOT executable and DOES looks like it should, show a
more apropos error with a hint on correcting the problem

Fixes #5113
11 years ago
James Cammarata a8064a78f3 Merge branch 'EvanK-devel' into devel 11 years ago
James Cammarata f2c06cadc3 Cleanup from merge of replace module and CHANGELOG update 11 years ago
Michael DeHaan a062912a1f Merge pull request #6658 from pilou-/fix_fix
'changed' key is not defined when task fails
11 years ago
James Cammarata 9775872f83 Merge branch 'devel' of https://github.com/EvanK/ansible into EvanK-devel 11 years ago
Michael DeHaan c8ef381c42 Merge pull request #6673 from apenav/patch-1
Typo: assign not equal in boolean guard variable
11 years ago
Michael DeHaan 9be732d8f2 Merge pull request #6679 from renard/fix-simplejson-module
Fix TypeError when using old simplejson lib.
11 years ago
Jakub Paweł Głazik 6b53ac8a9a strip() vault password file 11 years ago
Jakub Paweł Głazik 08ba18668b Strip() vault password file 11 years ago
James Tanner ebd1f70c5d Typo in setting task_errors variable 11 years ago
Sébastien Gross ef6b437d0d Fix TypeError when using old simplejson lib.
On some very old simplejson does not support the 'encoding' and give
following exception:

   TypeError: __init__() got an unexpected keyword argument 'encoding'

This fix runs json.dump with no encoding key (such as before #a023cb) on
TypeError exception only.
11 years ago
apenav 09f6e7222e Typo: assign not equal in boolean guard variable
Typo when variable controlling list of hosts left as available
11 years ago
James Tanner 605156c904 Fixes premature handler execution after adding force-handlers 11 years ago
James Cammarata d545b73ccb Merge branch 'file_fixes_agg' of https://github.com/bcoca/ansible into bcoca-file_fixes_agg 11 years ago
James Cammarata bc93732b1d Catch permissions errors related to opening a known_hosts file in modules
Fixes #6644
11 years ago
James Cammarata dc658eaa1c Check to make sure the host is in the inventory vars cache before clearing it
Fixes #6660
11 years ago
James Cammarata db345391e3 Fixing ownership when atomic_move is creating a file while sudo'ing
Fixes #6647
11 years ago
Pierre-Louis Bonicoli c76501b8a3 'changed' key is not defined when task fails
fix KeyError introduced by fix of #6591.
11 years ago
Jonathan Mainguy b17b5ad85b Added ansible_date_time.weekday as a fact. This returns Monday,Tuesday,Wednesday,Thursday,Friday,Saturday, or Sunday depending on the remote servers time. Useful for backups the way I use it 11 years ago
James Cammarata a4af31e511 Revert "add yum module downgrade support"
This reverts commit cbd1da6457.
11 years ago
James Cammarata bb723bedee Merge branch 'atomic_move_restore_owner_group_rebase' of https://github.com/tyll/ansible into tyll-atomic_move_restore_owner_group_rebase 11 years ago
James Tanner 8fce4ed7bf Update changelog for force-handlers 11 years ago
James Tanner 9169a11088 Fixes #4777 add --force-handlers option to run handlers even if tasks fail 11 years ago
Michael DeHaan 7a53862046 Merge pull request #6642 from sethwoodworth/patch-1
[docs] adds missing `'` to debconf examples
11 years ago
Michael DeHaan 3c97ac160c Update CONTRIBUTING.md
Some clarifications about workflow and the priority queue in GitHub
11 years ago
Seth Woodworth c28d3545fb adds missing `'` to debconf examples 11 years ago
Michael DeHaan 343702af4f Merge pull request #6631 from kavu/add_testing_deps_to_hacking_readme
Add tesing deps installation into hacking/README
11 years ago
Michael DeHaan 503327d53c Merge pull request #6640 from falloutdurham/ec2_count
ec2: Adding type int for count (in line with other cloud modules)
11 years ago
Michael DeHaan fba2f1f9a9 Merge pull request #6639 from fvieira/devel
Add missing sha1 import on known_hosts.py
11 years ago
Michael DeHaan ebc9ca9504 Merge pull request #6635 from pilou-/debconf
Fix ValueError when selection contains a colon
11 years ago
Michael DeHaan a24d3f78d9 Merge pull request #6634 from pilou-/fix
Remove print statements
11 years ago
James Cammarata 31628d86a1 Adding in a configurable option for the accelerate daemon timeout
This was apparently an oversite, as it has never been configurable
despite having a module parameter for the timeout.
11 years ago
James Cammarata 1fa0fab6cb Documentation updates for accelerate mode improvements 11 years ago
James Cammarata 3ea5d573aa Acclerate improvements
* Added capability to support multiple keys, so clients from different
  machines can connect to a single daemon instance
* Any activity on the daemon will cause the timeout to extend, so that the
  daemon must be idle for the full number of minutes before it will auto-
  shutdown
* Various other small fixes to remove some redundancy

Fixes #5171
11 years ago
Ian Pointer bebb11afeb Adding type int for count (in line with other cloud modules) 11 years ago
Francisco José Marques Vieira e9d7476c28 Add missing sha1 import on known_hosts.py 11 years ago