diff --git a/CHANGELOG.md b/CHANGELOG.md index 053d373a13..691cf98d91 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -19,19 +19,39 @@ Highlighted new features: * Adds a "var=" option to the debug module for debugging variable data. "debug: var=hostvars['hostname']" and "debug: var=foo" are all valid syntax. * Variables in {{ format }} can be used as references even if they are structured data * Can force binding of accelerate to ipv6 ports. +* the apt module will auto-install python-apt if not present rather than requiring a manual installation +* the copy module is now recursive if the local 'src' parameter is a directory. +* syntax checks now scan included task and variable files as well as main files -New modules and plugins: +New modules and plugins. -* cloud:ec2_eip -- manage AWS elastic IPs -* cloud:rax_clb -- manage Rackspace cloud load balancers -* cloud:ovirt -- VM lifecycle controls for ovirt +* cloud: ec2_eip -- manage AWS elastic IPs +* cloud: ec2_vpc -- manage ec2 virtual private clouds +* cloud: elasticcache -- Manages clusters in Amazon Elasticache +* cloud: rax_network -- sets up Rackspace networks +* cloud: rax_facts: retrieve facts about a Rackspace Cloud Server +* cloud: rax_clb_nodes -- manage Rackspace cloud load balanced nodes +* cloud: rax_clb -- manages Rackspace cloud load balancers +* cloud: docker - instantiates/removes/manages docker containers +* cloud: ovirt -- VM lifecycle controls for ovirt * files: acl -- set or get acls on a file * system: firewalld -- manage the firewalld configuration * system: host -- manage `/etc/hosts` file entries * system: modprobe -- manage kernel modules on systems that support modprobe/rmmod * system: open_iscsi -- manage targets on an initiator using open-iscsi +* system: blacklist: add or remove modules from the kernel blacklist +* system: hostname - sets the systems hostname * utilities: include_vars -- dynamically load variables based on conditions. -* cloud: ec2_vpc -- manage ec2 virtual private clouds +* packaging: zypper_repository - adds or removes Zypper repositories +* packaging: urpmi - work with urpmi packages +* packaging: swdepot - a module for working with swdepot +* notification: grove - notifies to Grove hosted IRC channels +* web_infrastructure: ejabberd_user: add and remove users to ejabberd +* web_infrastructure: jboss: deploys or undeploys apps to jboss +* source_control: github_hooks: manages GitHub service hooks +* network: bigip_monitor_tcp: manages F5 BIG-IP LTM TCP monitors +* network: bigip_pool_member: manages F5 BIG-IP LTM pool members +* network: bigip_node: manages F5 BIG-IP LTM nodes Plugins: @@ -41,6 +61,9 @@ Plugins: * added md5 as a Jinja2 filter: {{ path | md5 }} * added a fileglob filter that will return files matching a glob pattern. with_items: "/foo/pattern/*.txt | fileglob" * 'changed' filter returns whether a previous step was changed easier. when: registered_result | changed +* DOCS NEEDED: 'unique' and 'intersect' filters are added for dealing with lists. +* DOCS NEEDED: new lookup plugin added for etcd +* a 'func' connection type to help people migrating from func/certmaster. Misc changes: @@ -54,10 +77,10 @@ Misc changes: * Added parameter to allow the fetch module to skip the md5 validation step ('validate_md5=false'). This is usefull when fetching files that are actively being written to, such as live log files. * Inventory hosts are used in the order they appear in the inventory. * in hosts: foo[2-5] type syntax, the iterators now are zero indexed and the last index is non-inclusive, to match Python standards. -* There's now a way for a callback plugin to disable itself. See osx_say example code for an example. +* There is now a way for a callback plugin to disable itself. See osx_say example code for an example. * Many bugfixes to modules of all types. * Complex arguments now can be used with async tasks -* SSH ControlPath is now configurable in ansible.cfg. There's a limit to the lengths of these paths, see how to shorten them in ansible.cfg. +* SSH ControlPath is now configurable in ansible.cfg. There is a limit to the lengths of these paths, see how to shorten them in ansible.cfg. * md5sum support on AIX with csum. * Extremely large documentation refactor into subchapters * Added 'append_privs' option to the mysql_user module @@ -68,7 +91,22 @@ Misc changes: * file module more tolerant of non-absolute paths in softlinks. * miscellaneous fixes/upgrades to async polling logic. * conditions on roles now pass to dependent roles -* +* ansible_sudo_pass can be set in a host variable if desired +* misc fixes for the pip an easy_install modules +* support for running handlers that have parameterized names based on role parameters +* added support for compressing MySQL dumps and extracting during import +* Boto version compatibility fixes for the EC2 inventory script +* in the EC2 inventory script, a group 'EC2' and 'RDS' contains EC2 and RDS hosts. +* umask is enforced by the cron module +* apt packages that are not-removed and not-upgraded do not count as changes +* the assemble module can now use src files from the local server and copy them over dynamically +* authorization code has been standardized between Amazon cloud modules +* the wait_for module can now also wait for files to exist or a regex string to exist in a file +* leading ranges are now allowed in ranged hostname patterns, ex: [000-250].example.com +* pager support added to ansible-doc (so it will auto-invoke less, etc) +* misc fixes to the cron module +* get_url module now understands content-disposition headers for deciding filenames +* it is possible to have subdirectories in between group_vars/ and host_vars/ and the final filename, like host_vars/rack42/asdf for the variables for host 'asdf'. The intermediate directories are ignored, and do not put a file in there twice. 1.3.4 "Top of the World" (reprise) - October 29, 2013 diff --git a/library/cloud/ec2_vpc b/library/cloud/ec2_vpc index 42b44e72bc..87713a0d5e 100644 --- a/library/cloud/ec2_vpc +++ b/library/cloud/ec2_vpc @@ -109,14 +109,14 @@ EXAMPLES = ''' # Basic creation example: local_action: - module: vpc + module: ec2_vpc state: present cidr_block: 172.23.0.0/16 region: us-west-2 # Full creation example with subnets and optional availability zones. # The absence or presense of subnets deletes or creates them respectively. local_action: - module: vpc + module: ec2_vpc state: present cidr_block: 172.22.0.0/16 subnets: @@ -144,7 +144,7 @@ EXAMPLES = ''' # Removal of a VPC by id local_action: - module: vpc + module: ec2_vpc state: absent vpc_id: vpc-aaaaaaa region: us-west-2 diff --git a/library/source_control/githooks b/library/source_control/github_hooks similarity index 94% rename from library/source_control/githooks rename to library/source_control/github_hooks index b79fb04d5a..0443855635 100644 --- a/library/source_control/githooks +++ b/library/source_control/github_hooks @@ -24,7 +24,7 @@ import base64 DOCUMENTATION = ''' --- -module: githooks +module: github_hooks short_description: Manages github service hooks. description: - Adds service hooks and removes service hooks that have an error status. @@ -56,10 +56,10 @@ author: Phillip Gentry, CX Inc EXAMPLES = ''' # Example creating a new service hook. It ignores duplicates. -- githooks: action=create hookurl=http://11.111.111.111:2222 user={{ gituser }} oauthkey={{ oauthkey }} repo=https://api.github.com/repos/pcgentry/Github-Auto-Deploy +- github_hooks: action=create hookurl=http://11.111.111.111:2222 user={{ gituser }} oauthkey={{ oauthkey }} repo=https://api.github.com/repos/pcgentry/Github-Auto-Deploy # Cleaning all hooks for this repo that had an error on the last update. Since this works for all hooks in a repo it is probably best that this would be called from a handler. -- local_action: githooks action=cleanall user={{ gituser }} oauthkey={{ oauthkey }} repo={{ repo }} +- local_action: github_hooks action=cleanall user={{ gituser }} oauthkey={{ oauthkey }} repo={{ repo }} ''' def list(hookurl, oauthkey, repo, user): diff --git a/library/system/blacklist b/library/system/kernel_blacklist similarity index 98% rename from library/system/blacklist rename to library/system/kernel_blacklist index 2b9c7b44e2..71f962f18c 100644 --- a/library/system/blacklist +++ b/library/system/kernel_blacklist @@ -24,7 +24,7 @@ import re DOCUMENTATION = ''' --- -module: blacklist +module: kernel_blacklist author: Matthias Vogelgesang version_added: 1.4 short_description: Blacklist kernel modules @@ -52,7 +52,7 @@ requirements: [] EXAMPLES = ''' # Blacklist the nouveau driver module -- blacklist: name=nouveau state=present +- kernel_blacklist: name=nouveau state=present '''